Es wird vermutet, dass bei einigen Paketen zur Installationszeit Skripts ausgeführt werden, mit denen Benutzerkonten in /etc/passwd
erstellt werden. Wie kann ich überprüfen, welches Paket einen bestimmten Benutzer erstellt hat?
Dies funktioniert relativ zuverlässig, wenn das Paket über dpkg
(einschließlich mit apt install
) installiert wurde. Siehe Murus Antwort für eine Liste der Benutzer, die in der Ubuntu-Standardinstallation erstellt wurden, und das Paket, mit dem sie erstellt wurden. Für diese Benutzer erzeugt diese Methode keine Ausgabe.
Sie können den Befehl verwenden:
grep -RlE '(adduser|useradd).*systemd' /var/lib/dpkg/info --include='*inst' | sed -r 's:.*/(.*)\.[-a-z]+inst:\1:'
ersetzen Sie <user>
durch den Namen des Benutzers, an dem Sie interessiert sind, z. B. systemd
Dies durchsucht die Skripte preinst
und postinst
aller Pakete, die dpkg
bekannt sind, nach dem Befehl adduser
oder useradd
und dem fraglichen Benutzer, um festzustellen, welches Paket sich befindet verantwortlich für die Erstellung dieses Benutzers. Das Ergebnis wird an sed weitergeleitet, sodass nur der Paketname selbst anstelle des vollständigen Namens der Skriptdatei zurückgegeben wird.
grep -RlE
rekursiv suchen und nur die Namen von Dateien mit Übereinstimmungen drucken, erweiterte reguläre Ausdrücke verwenden'(adduser|useradd).*<user>' /var/lib/dpkg/info --include='*inst'
Suchen Sie nach dem Befehl adduser
oder useradd
und der Benutzer, den Sie in derselben Zeile suchen möchten (.*
stimmt mit allen Zeichen überein und fängt alle Befehlsoptionen ab) das Verzeichnis, in dem dpkg
Skripte in Dateien speichert, deren Namen mit inst
endensed -r 's:.*/(.*)\.[-a-z]+inst:\1:'
Entferne alles vor & einschließlich des letzten /
im vollständigen Pfad und der .preinst
oder .postinst
ErweiterungVielen Dank an @muru, der eine übersichtlichere und schnellere Suchmethode vorgeschlagen hat, als find
hier zu verwenden :)
Es gibt eine wichtige Ausnahme zu den üblichen adduser
- hinzugefügten Benutzern und Gruppen: die, die standardmäßig mit Ubuntu geliefert werden. Diese werden im Paket base-passwd
bereitgestellt. Eine Liste der von diesem Paket hinzugefügten Benutzer und Gruppen ist in /usr/share/doc/base-passwd/users-and-groups.{html,txt.gz}
angegeben (und beschrieben). Die Liste ist:
root man majordom irc gdm
daemon lp postgres gnats saned
bin mail www-data nobody klog
sys news backup messagebus syslog
sync uucp operator postfix
games proxy list haldaemon
adm fax audio staff sshd
tty voice src users fetchmail
disk cdrom shadow lpadmin cupsys
kmem floppy utmp sasl nogroup
dialout tape video scanner
dip Sudo plugdev ssh
Das Paket README (/usr/share/doc/base-passwd/README
) listet auch einige Benutzer mit UIDs im Bereich 60000-64999 auf und gibt an, dass diese von den jeweiligen Paketen erstellt wurden.
Siehe auch:
base-passwd
für 14.04 - Sie können die Liste der Benutzer und Gruppen in den *.master
-Dateien sehen.