Не удается удалить пользователя с компьютера с Linux CentOS 6.3, что можно сделать?

Когда я пытаюсь удалить моего пользователя (из корневой оболочки), он говорит userdel: cannot remove entry 'itaig' from /etc/passwdПользователь даже не отображается на /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 ~]#

У меня точно такая же проблема и на других серверах, но я не могу найти общий язык между ними:

[root@amad ~]# userdel itaig
userdel: cannot remove entry 'itaig' from /etc/passwd
[root@amad ~]# useradd itaig
useradd: user 'itaig' already exists
[root@amad ~]# 

Почему мой пользователь не отображается в / etc / passwd, но все еще существует в системе? Я проверил /etc/nsswitch.conf и не нашел проблем там... Что можно сделать, чтобы решить эту проблему?

Редактировать: вывод strace userdel itaig можно найти здесь: http://pastebin.com/FFkcQ3fj

И выход strace useradd itaig: http://pastebin.com/twRQ7ps0

Второе редактирование: кажется, что если я вручную добавлю своего пользователя в /etc/shadow а также /etc/group Затем я могу удалить пользователя с помощью команды userdel itaig, но даже тогда я не могу воссоздать пользователя, поскольку я получаю сообщение об ошибке, что пользователь уже существует. Любая помощь будет оценена!

[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 ~]# 

Содержание /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

Интересно, где информация о id команда приходит от:

[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 ~]#

1 ответ

Решение

Читайте дальше и попробуйте pwconv, pwunconv а также pwck команды, чтобы снова синхронизировать ваши passwd и shadow файлы. Тогда попробуйте использовать ваш userdel,

Кроме того, есть ли причина, по которой вы оставляете nis и nisplus определенными в вашем файле /etc/nsswitch.conf? Я видел, что ненужные службы именования вызывают задержку в различных функциях из-за того, что они выполняют поиск служб, которые не реализованы в вашей среде. Я также хотел бы очистить все, чтобы увидеть, если вы видите какие-либо улучшения в вашем userdel вопрос.

Другие вопросы по тегам