Linux下创建和删除用户
遇到问题
在学习Linux基本命令操作过程中,在终端使用useradd
命令可用来建立用户账号,用passwd
设定账号的密码,可用userdel删除账号。
不考虑缓冲天数,群组,备注,登入目录等设置。具体步骤如下:
# useradd maxpross
- 创建一个名字为maxpross的用户# ls /home
- 查看home目录下是否创建
# userdel maxpross
- 删除用户# useradd maxpross
- 查看是否能重新创建用户
然而事实并不能如我们所想的那样。
useradd警告: 此目录已经存在。
思考问题
既然useradd是添加用户,userdel是删除目录,那么为什么不能按照我们的操作的预想创建成功呢,哪里有不对的地方呢?既然是已经存在 此目录,那是不是问题出现在没有删除干净的原因呢,我们来查找一下涉及到maxpross
名字的文件有哪些:
# find / -name '*maxpross*'
结果如下:
那我们终于找到问题所在了,在/home目录和/var/spool/mail邮件池中存在着maxpross有关文件,userdel
删除只是删除用户帐号,而没有删除相关文件,那么下次继续创建时候就会就会涉及到相关文件,系统就会提示,文件已经存在。
解决问题
既然问题找到了,我们就需要来解决问题。先前我们已经删除了用户账号,那我们就手动删除查找出来的路径下的有关文件后,再执行添加操作。
# rm -rf /var/spool/mail/maxpross /home/maxpross
# useradd maxpross
# ls /home
创建成功,圆满解决。
拓展问题
通过查找资料,我们知道userdel
有一个参数-r
:删除用户登入目录以及目录中所有文件,这下就很好解决用户的创建和删除的问题了!
# userdel -r maxpross
# useradd maxpross
大家发现更好的解决办法欢迎联系我一起交流!