首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从Linux CentOS 6.3计算机中删除用户,可以做什么?

无法从Linux CentOS 6.3计算机中删除用户,可以做什么?
EN

Server Fault用户
提问于 2013-07-16 13:20:54
回答 1查看 20.3K关注 0票数 9

当我尝试删除我的用户(从根shell)时,它说userdel: cannot remove entry 'itaig' from /etc/passwd甚至没有显示在/etc/passwd上。

代码语言:javascript
复制
[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 ~]#

我在其他服务器上也有同样的问题,但我找不到它们之间的共同点:

代码语言:javascript
复制
[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 itaighttp://pastebin.com/twRQ7ps0的输出

第二次编辑:如果我手动将用户添加到/etc/shadow/etc/group中,那么我就能够使用命令userdel itaig删除用户,但即使这样,我也无法重新创建用户,因为我得到了用户已经存在的错误。任何帮助都将不胜感激!

代码语言:javascript
复制
[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的内容:

代码语言:javascript
复制
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命令的信息从何而来:

代码语言:javascript
复制
[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 ~]#
EN

回答 1

Server Fault用户

回答已采纳

发布于 2013-07-23 03:55:10

继续阅读并尝试pwconvpwunconvpwck命令,以便再次同步passwd文件和阴影文件。然后尝试使用您的userdel

另外,是否有理由在/etc/nsswitch.conf文件中定义nis和nisplus?我看到不必要的命名服务会导致各种功能滞后,因为它们正在执行对在您的环境中没有实现的服务的查找。我还将清除所有这些问题,看看您是否看到了userdel问题的任何改进。

票数 -1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/523708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档