Systemctl状态的输出中Process:和Main PID:有什么区别?


10

服务单元上的输出中的Process:Main PID:行之间有什么区别systemctl status?流程编号代表什么?

例如:

在输出中,systemctl status sshd我们看到一行Process:上面有一行Main PID:。它具有与该Main PID:行不同的进程号。这是RHEL管理指南中的一个:

#systemctl status sshd
sshd.service-OpenSSH服务器守护程序
   已加载:已加载(/usr/lib/systemd/system/sshd.service;已禁用)
   活动:自星期一2014-09-01 09:35:17 EST起活动(运行);2秒前
  进程:6191 ExecStartPre = / usr / sbin / sshd-keygen(代码=已退出,status = 0 /成功)
 主PID:6194(sshd)
   CGroup:/system.slice/sshd.service
           └─6194/ usr / sbin / sshd -D

我试图了解该进程号是什么。


2
您应该编辑问题以显示systemctl
Basile Starynkevitch

每个人都很难找到提问者正在询问的例子。
JdeBP '17

Answers:


8

Main PID是使用ExecStart=选项(在示例中sshd)启动的过程的PID 。该Process:用于那些有可能通过该服务使用已启动任何其他进程ExecStartPreExecStartPostExecStopPost,等选项。(在此示例中,sshd-keygen已经使用该ExecStartPre=选项启动了)。Process:如果服务启动了多个进程(主进程除外),则可以多行显示。如果不涉及其他过程,则只会看到该Main PID值。

我承认这不是很清晰的文档ExecStartPre,但对于文档ExecStart明确了主要过程是一个由选项启动,除了Type=forking在这种情况下,守护进程被认为是主要的过程。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.