Das ist merkwürdig:
» ps -ef | grep gitlab
gitlab-+ 19663 4237 0 06:45 ? 00:00:00 postgres: gitlab gitlabhq_production [local] idle
Aber der gitlab-+
Benutzer existiert nicht:
» cat /etc/passwd | grep gitlab
gitlab-www:x:998:997::/var/opt/gitlab/nginx:/bin/false
git:x:997:996::/var/opt/gitlab:/bin/sh
gitlab-redis:x:996:995::/var/opt/gitlab/redis:/bin/false
gitlab-psql:x:995:994::/var/opt/gitlab/postgresql:/bin/sh
gitlab-prometheus:x:994:993::/var/opt/gitlab/prometheus:/bin/sh
Warum könnte das so sein?
Wie kann ich festlegen, ps
dass mir für alle Einträge die Benutzer-ID statt des Benutzernamens angezeigt wird?
Antwort1
Verwenden Sie n
den Parameter, der in der Manualpage beschrieben ist:
n Numeric output for WCHAN and USER (including all types of UID and GID)
z.B
ps -ef n
NB: Davor sollte ein Leerzeichen und kein Bindestrich stehen.n
Antwort2
Das +-Zeichen am Ende des UID-Feldes bedeutet lediglich „der Benutzername ist länger als 8 Zeichen und passt hier nicht hin“.
Aus historischen Gründen wurden die Feldbreiten der ps -ef
Ausgabe beibehalten, wie sie sind, auch wenn Benutzernamen mit mehr als 8 Zeichen üblich geworden sind: hauptsächlich, weil es viele Skripte gibt, die die Ausgabe analysieren und auf mysteriöse Weise fehlschlagen würden, wenn sich die Feldbreiten ändern würden.