Apa perbedaan antara garis Process:
dan Main PID:
dalam output systemctl status
pada pada unit layanan? Apa yang dimaksud dengan nomor proses?
Sebagai contoh:
Dalam output dari systemctl status sshd
kita melihat baris dengan di Process:
atas mengatakan garis Main PID:
. Ini memiliki nomor proses yang berbeda dari Main PID:
garis. Ini satu dari panduan admin RHEL :
# systemctl status sshd sshd.service - daemon server OpenSSH Dimuat: dimuat (/usr/lib/systemd/system/sshd.service; dinonaktifkan) Aktif: aktif (berjalan) sejak Senin 2014-09-01 09:35:17 EST; 2s yang lalu Proses: 6191 ExecStartPre = / usr / sbin / sshd-keygen (kode = keluar, status = 0 / SUKSES) PID Utama: 6194 (sshd) CGroup: /system.slice/sshd.service └─6194 / usr / sbin / sshd -D
Saya mencoba memahami apa nomor proses itu.
systemctl
Jawaban:
Main PID
adalah PID dari proses yang mulai menggunakanExecStart=
opsi (dalam contohsshd
). TheProcess:
digunakan untuk proses lainnya yang mungkin telah dimulai oleh layanan menggunakanExecStartPre
,ExecStartPost
,ExecStopPost
, dll pilihan. (dalam contoh ini,sshd-keygen
sudah mulai menggunakanExecStartPre=
opsi). Anda dapat mengaktifkan beberapa barisProcess:
jika ada lebih dari satu proses yang dimulai oleh layanan, selain proses utama. Jika tidak ada proses lain yang terlibat, Anda hanya akan melihatMain PID
nilainya.Saya akui ini tidak terlalu jelas dalam dokumen untuk
ExecStartPre
tetapi dokumen untukExecStart
mengklarifikasi bahwa proses utama adalah yang dimulai oleh opsi itu, kecualiType=forking
, dalam hal ini, proses daemon dianggap sebagai proses utama.sumber