可以解释一下这个输出的最后部分(以开头的行CGROUP
和以下所有行):
systemctl status httpd -l
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2016-05-20 04:30:57 CEST; 4 weeks 0 days ago
Docs: man:httpd(8)
apachectl(8)
Process: 11758 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
Main PID: 6012 (httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
Memory: 2.0M
CGroup: /system.slice/httpd.service
├─ 6012 /usr/sbin/httpd -DFOREGROUND
├─11760 /usr/sbin/httpd -DFOREGROUND
├─11761 /usr/sbin/httpd -DFOREGROUND
├─11762 /usr/sbin/httpd -DFOREGROUND
├─11763 /usr/sbin/httpd -DFOREGROUND
└─11764 /usr/sbin/httpd -DFOREGROUND
```
答案1
简而言之,某些服务会产生很多进程。使用System V
init 系统并不总是可以将进程分配给生成它的服务。此外,服务可能无法正确终止,而导致某些儿童存活。
通过systemd
将每个服务放在自己的cgroup
.Cgroups
用于控制和管理流程,并且是kernel
允许将流程及其所有子流程聚合到分层组织的组中的功能。
要列出属于某个服务的所有进程,请使用命令systemd-cgls
。如果您运行,结果对于给定进程是相同的systemctl status service
更多信息,您可以找到这里。