Ist es möglich, CPUAffinity=0 für einen bestimmten Prozess in seiner Systemd-Service-Unit-Datei festzulegen?

Ist es möglich, CPUAffinity=0 für einen bestimmten Prozess in seiner Systemd-Service-Unit-Datei festzulegen?

Ist es möglich, für einen bestimmten Prozess (sagen wir httpd.service) in seiner Systemd-Service-Unit-Datei CPUAffinity=0 festzulegen?

Antwort1

Die Standard-CPU-Affinitätsmaske CPUAffinity=0,24,48,72gilt für alle von systemd verwalteten Dienste. Sie können jedoch pro Einheit Ihre eigenen Affinitätseinstellungen festlegen.

Um eine CPU-Affinitätsmaske für einen systemd-Dienst festzulegen, verwenden Sie die CPUAffinityUnit-Dateioption:

  1. Überprüfen Sie die Werte der Unit-Dateioption CPUAffinity im Dienst Ihrer Wahl:

$ systemctl show --property CPUAffinity <service name>

  1. Legen Sie als Root den erforderlichen Wert als Affinitätsmaske fest (z. B. „0“):

systemctl set-property <service name> CPUAffinity=0

  1. Starten Sie den Dienst neu

systemctl restart <service name>

verwandte Informationen