📦 归档笔记 — 原创建于 WizNote,仅作归档展示;观点以当年为准,非最新。

Linux下如何完全的删除用户

创建时间2019-07-02最后修改2019-07-02原位置/程序员成长之旅/Linux学习/字数680图片/附件8
目录:程序员成长之旅/Linux学习

使用 userdel xxx 删除用户会造成用户目录残留问题

正确删除方法

userdel -r xxx #可以完全删除该用户

完整文章

实验背景:** **

(1)虚拟机软件:VMware Workstation 12;

(2)操作系统:Centos6.7 32位

实验步骤:

(1)进入系统后,首先我们创建一个用户账号。

[root@kehuji ~]# useradd www    #创建用户,名字是www

[root@kehuji ~]# ls /home      #查看刚创建的用户账户

[root@kehuji ~]# cat /etc/passwd |grep www

www:x:501:501::/home/www:/bin/bash

[root@kehuji ~]# cat /etc/shadow |grep www

www:!!:17294:0:99999:7:::

[root@kehuji ~]# cat /etc/group |grep www

www:x:501:

[root@kehuji ~]# cat /etc/gshadow |grep www

www:!::

截图如下:

🖼 图片占位(归档模式)图片见原始导出:Linux%E4%B8%8B%E5%A6%82%E4%BD%95%E5%AE%8C%E5%85%A8%E7%9A%84%E5%88%A0%E9%99%A4%E7%94%A8%E6%88%B7.assets/0.4788121710809803.png

(2)删除用户www,如果我们直接使用userdel www,那么并不能删除该用户账号所有相关信息,只是删除掉了/etc/passwd、/etc/shadow、/etc/group/、/etc/gshadow四个文件里的该账户和组的信息。因为默认情况下创建一个用户账号,会创建一个家目录和一个用户邮箱(在/var/spool/mail目录以用户名命名)。我们可以使用find命令来查找所有与该用户相关的文件信息【find / -name "www"】。

命令如下:

[root@kehuji ~]# userdel www

[root@kehuji ~]# cat /etc/passwd |grep www

[root@kehuji ~]# cat /etc/shadow |grep www

[root@kehuji ~]# cat /etc/group |grep www

[root@kehuji ~]# cat /etc/gshadow |grep www

[root@kehuji ~]# find / -name "www"

截图如下:

🖼 图片占位(归档模式)图片见原始导出:Linux%E4%B8%8B%E5%A6%82%E4%BD%95%E5%AE%8C%E5%85%A8%E7%9A%84%E5%88%A0%E9%99%A4%E7%94%A8%E6%88%B7.assets/0.26219201665095193.png

(3)我们现在再次创建www账户

🖼 图片占位(归档模式)图片见原始导出:Linux%E4%B8%8B%E5%A6%82%E4%BD%95%E5%AE%8C%E5%85%A8%E7%9A%84%E5%88%A0%E9%99%A4%E7%94%A8%E6%88%B7.assets/0.6802205305712705.png

上图显示报错!所以当你再次创建该用户账号的时候会报错,这就说明与该用户相关的文件或目录你之前并没有完全删除。

(4)正确删除账户

[root@kehuji ~]# userdel -r www

截图如下:

🖼 图片占位(归档模式)图片见原始导出:Linux%E4%B8%8B%E5%A6%82%E4%BD%95%E5%AE%8C%E5%85%A8%E7%9A%84%E5%88%A0%E9%99%A4%E7%94%A8%E6%88%B7.assets/0.4974254941561447.png

上图我们看到,当用userdel -r 命令删除账户后,使用find命令查看,用户www相关文件已经删除。所以我们再次使用useradd www命令创建用户www时,系统没有报错!

来源: https://blog.51cto.com/wutengfei/1923446