Может ли кто-нибудь объяснить последнюю часть этого вывода (строку, начинающуюся с 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
Более подробную информацию вы можете найтиздесь.