我已经开始学习Linux命令,并且我做了一些简单的事情,比如添加新用户和组并删除它们。当我尝试删除我使用语法"userdel username“创建的用户时,它就会被删除,完全没有问题,但是当我尝试使用userdel -r用户名做同样的操作时,它会产生我在标题中指定的错误。
注意:当我以root身份登录时,我正在做所有这些事情。
发布于 2013-12-17 11:06:28
这是因为用户的家不是由username拥有,而是由另一个用户拥有。
使用grep username /etc/passwd (倒数第二个字段)检查哪一个是它,并查看它具有的权限。
例如:
$ grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
^^^^^然后
$ ls -ld /root
drwx------ 12 root root 4096 Oct 18 12:55 /root发布于 2013-12-18 01:08:53
主目录的所有权发生了变化。在使用userdel -r之前,尝试将它的所有权更改为:
# chown -R username ~usernamechown代表变更所有权。-R告诉它递归到目录中。用户名是您希望将所有权更改为的帐户的用户名,而~username只是指指定用户的主目录。此命令将主目录及其中的所有内容的所有权更改为用户。或者,您可以手动删除主目录,而不必更改任何内容的所有权:
# rm -Rf ~username
# userdel username如果在用户名前面加上tilde不引用用户的主目录,那么您可以使用/etc/passwd文件,就像fidorqui建议的那样。
$ grep username /etc/passwd(grep =搜索文件或i/o流)
/etc/passwd中的每一行都遵循以下格式:用户名:密码:userid:groupid:注释(UID Info):line目录:login
https://stackoverflow.com/questions/20632239
复制相似问题