Jaka jest różnica między Process: a Main PID: na wyjściu statusu systemctl?

10

Jaka jest różnica między wierszami Process:i Main PID:na wyjściu systemctl statusjednostki usługowej? Co oznacza numer procesu?

Na przykład:

Na wyjściu z systemctl status sshdwidzimy linię z Process:napisem powyżej linii Main PID:. Ma inny numer procesu niż Main PID:linia. Oto jeden z przewodnika administratora RHEL :

# systemctl status sshd
sshd.service - Demon serwera OpenSSH
   Załadowano: załadowano (/usr/lib/systemd/system/sshd.service; wyłączone)
   Aktywny: aktywny (działa) od Pon 2014-09-01 09:35:17 EST; 2s temu
  Proces: 6191 ExecStartPre = / usr / sbin / sshd-keygen (kod = zakończony, status = 0 / SUKCES)
 Główny PID: 6194 (sshd)
   CGroup: /system.slice/sshd.service
           └─6194 / usr / sbin / sshd -D

Próbuję zrozumieć, co to jest ten numer procesu.

Kampton Joe
źródło
2
Powinieneś edytować swoje pytanie, aby wyświetlić rzeczywiste wynikisystemctl
Basile Starynkevitch,
Przykłady tego, o co pytający pyta, nie są trudne do znalezienia.
JdeBP,

Odpowiedzi:

8

Main PIDjest PID procesu, który jest uruchamiany przy użyciu ExecStart=opcji (w przykładzie sshd). Process:Służy do jakiegokolwiek innego procesu, który może być uruchamiany poprzez usługę za pomocą ExecStartPre, ExecStartPost, ExecStopPostitp opcje. (w tym przykładzie sshd-keygenzostał uruchomiony przy użyciu ExecStartPre=opcji). Możesz włączyć wiele linii, Process:jeśli usługa uruchomiła więcej niż jeden proces, inny niż proces główny. Jeśli nie jest zaangażowany żaden inny proces, zobaczysz tylko Main PIDwartość.

Przyznaję, nie jest to bardzo jasne w docs dla ExecStartPreale dok dla ExecStartwyjaśnia, że głównym procesem jest jeden zaczął od tej opcji, za wyjątkiem Type=forking, w którym to przypadku, proces demon jest uważany za główny proces.

Munir
źródło