Wenn ich versuche, meinen Benutzer (aus einer Root-Shell) zu löschen, userdel: cannot remove entry 'itaig' from /etc/passwd
wird angezeigt, dass der Benutzer nicht einmal angezeigt wird /etc/passwd
.
[root@ab2c1 ~]# su - itaig
su: warning: cannot change directory to /home/itaig: No such file or directory
-bash-4.1$ exit
logout
[root@ab2c1 ~]# mkdir /home/itaig
[root@ab2c1 ~]# chown itaig.itaig /home/itaig/
[root@ab2c1 ~]# grep itaig /etc/passwd
[root@ab2c1 ~]# grep itaig /etc/shadow
[root@ab2c1 ~]# userdel -rf itaig
userdel: cannot remove entry 'itaig' from /etc/passwd
[root@ab2c1 ~]#
Ich habe genau das gleiche Problem auch bei anderen Servern, aber ich kann keine gemeinsame Basis zwischen ihnen finden:
[root@amad ~]# userdel itaig
userdel: cannot remove entry 'itaig' from /etc/passwd
[root@amad ~]# useradd itaig
useradd: user 'itaig' already exists
[root@amad ~]#
Wie kommt es, dass mein Benutzer nicht in / etc / passwd angezeigt wird, aber immer noch auf dem System vorhanden ist? Ich habe dort nachgeprüft /etc/nsswitch.conf
und kein Problem gefunden ... Was kann getan werden, um dieses Problem zu beheben?
Bearbeiten: Die Ausgabe von strace userdel itaig
finden Sie hier:
http://pastebin.com/FFkcQ3fj
Und die Ausgabe von strace useradd itaig
:
http://pastebin.com/twRQ7ps0
Zweite Bearbeitung: Wenn ich meinen Benutzer manuell hinzufüge /etc/shadow
und ihn /etc/group
dann mit dem Befehl löschen kann , kann ich den Benutzer userdel itaig
selbst dann nicht neu erstellen, da eine Fehlermeldung angezeigt wird, dass der Benutzer bereits vorhanden ist. Jede Hilfe wäre dankbar!
[root@ab2c1 ~]# userdel itaig
[root@ab2c1 ~]# useradd itaig
useradd: user 'itaig' already exists
[root@ab2c1 ~]# userdel itaig
userdel: cannot remove entry 'itaig' from /etc/passwd
[root@ab2c1 ~]# grep itaig /etc/passwd
[root@ab2c1 ~]# grep itaig /etc/group
[root@ab2c1 ~]# grep itaig /etc/shadow
[root@ab2c1 ~]# id itaig
uid=509(itaig) gid=510(itaig) groups=510(itaig)
[root@ab2c1 ~]#
Inhalt von /etc/nsswitch.conf
:
passwd: files nis
shadow: files nis
group: files nis
#hosts: db files nisplus nis dns
hosts: files nis dns
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
netgroup: nisplus
publickey: nisplus
automount: files nisplus
aliases: files nisplus
Ich frage mich, woher die Informationen des id
Befehls stammen:
[root@ab2c1 ~]# grep itaig /etc/passwd
[root@ab2c1 ~]# grep itaig /etc/shadow
[root@ab2c1 ~]# grep itaig /etc/group
[root@ab2c1 ~]# id itaig
uid=509(itaig) gid=510(itaig) groups=510(itaig)
[root@ab2c1 ~]#
quelle
getent passwd itaig
undgetent shadow itaig
sagen?Antworten:
Informieren Sie sich über und versuchen , die
pwconv
,pwunconv
undpwck
Befehle Ihre passwd und shadow Dateien synchron wieder zu bekommen. Versuchen Sie dann, Ihre zu verwendenuserdel
.Gibt es auch einen Grund, warum Sie nis und nisplus in Ihrer Datei /etc/nsswitch.conf definiert lassen? Ich habe festgestellt, dass unnötige Namensdienste zu Verzögerungen bei verschiedenen Funktionen führen, da sie nach Diensten suchen, die nicht in Ihrer Umgebung implementiert sind. Ich würde auch alle klären, um zu sehen, ob Sie eine Verbesserung in Ihrem
userdel
Problem sehen.quelle
/etc/nsswitch.conf
war die Lösung für mich.