Kann jemand den letzten Teil dieser Ausgabe erklären (die Zeile, die mit beginnt, CGROUP
und alle folgenden Zeilen):
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
```
Antwort1
Kurz gesagt, einige Dienste erzeugen eine Menge Prozesse. Mit System V
einem Init-System ist es nicht immer möglich, einen Prozess dem Dienst zuzuweisen, der ihn erzeugt hat. Außerdem kann es sein, dass ein Dienst nicht korrekt beendet wird und einige untergeordnete Prozesse am Leben bleiben.
Dieses systemd
Problem wird gelöst, indem jeder Dienst in einem eigenen platziert wird cgroup
. Cgroups
werden verwendet, um Prozesse zu bündeln und zu verwalten und sind eine kernel
Funktion, die es ermöglicht, Prozesse und alle ihre untergeordneten Prozesse in hierarchisch organisierten Gruppen zusammenzufassen.
Um alle Prozesse aufzulisten, die zu einem Dienst gehören, verwenden Sie den Befehl systemd-cgls
. Das Ergebnis ist für den angegebenen Prozess dasselbe, wenn Sie ausführen. systemctl status service
Weitere Informationen finden Sie hier.Hier.