Menu Close
Settings Close

Language and Page Formatting Options

15.9. 使用 systemctl 命令将限制设置为应用程序

CPU 关联性设置可帮助您将特定进程的访问限制到某些 CPU。实际上,CPU 调度程序永远不会将进程调度到不在进程的关联性掩码中的 CPU 上运行。

默认 CPU 关联性掩码应用到 systemd 管理的所有服务。

要为特定 systemd 服务配置 CPU 关联性掩码,systemd 提供 CPUAffinity= 作为单元文件选项,以及 /etc/systemd/system.conf 文件中的管理器配置选项。

CPUAffinity= 单元文件选项 设置 CPU 或 CPU 范围列表,这些范围合并并用作关联性掩码。

为特定 systemd 服务配置 CPU 关联性掩码后,您必须重启该服务以应用更改。

流程

使用 CPUAffinity 单元文件选项为特定 systemd 服务设置 CPU 关联性掩码:

  1. 在您选择的服务中检查 CPUAffinity 单元文件选项的值:

    $ systemctl show --property <CPU affinity configuration option> <service name>
  2. 作为 root 用户,为用作关联性掩码的 CPU 范围设置 CPUAffinity 单元文件选项的所需值:

    # systemctl set-property <service name> CPUAffinity=<value>
  3. 重新启动服务以应用更改。

    # systemctl restart <service name>
注意

您可以在以下手册页中查看 systemd 的完整配置选项:

  • systemd.resource-control(5)
  • systemd.exec(5)