云网牛站
所在位置:首页 > Linux教程 > 在Linux系统中完全删除用户的方法

在Linux系统中完全删除用户的方法

2018-09-12 14:49:10作者:顾北清稿源:linux网

以下教你如何在Linux操作系统中完全、很彻底的删除用户的方法。以下实验环境是运行Centos 7的虚拟机中,在系统终端中进行。

 

首先创建一个普通用户gubeiqing:

[root@localhost ~]# useradd gubeiqing

[root@localhost ~]# passwd gubeiqing

Changing password for user gubeiqing.

New password:

BAD PASSWORD: The password is a palindrome

Retype new password:

passwd: all authentication tokens updated successfully.

 

这样就成功创建了一个普通用户,然后来删除这个用户:

[root@localhost ~]# userdel gubeiqing

[root@localhost ~]#

 

使用useradd命令就删除了,但是问题来了,当我们再次创建gubeiqing这个用户时:

[root@localhost ~]# useradd gubeiqing

useradd: warning: the home directory already exists.

Not copying any file from skel directory into it.

Creating mailbox file: File exists

 

文件已存在,无法创建,这是为什么?因为在创建用户时会默认生成用户的家目录,密码文件,用户组(不指定用户组的情况下),以及邮箱文件,而使用userdel命令删除时仅仅是删除了这个用户,而这个用户的文件还在,那么就需要完全删除这些文件。

 

有四个地方需要处理,它们分别是:

1.在/home目录下的文件

2.在/etc/passwd下的用户

3.在/etc/group下的用户组

4.在/var/spool/mail下的邮箱文件

 

注:下面依次来删除这些文件。

 

1.删除/home目录下的文件

[root@localhost ~]# cd /home

[root@localhost home]# ls

gubeiqing

[root@localhost home]# rm -rf gubeiqing

[root@localhost home]# ls

[root@localhost home]#

 

2.删除/etc/passwd下的用户

我们可以查看一下这个文件:

[root@localhost ~]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

nobody:x:99:99:Nobody:/:/sbin/nologin

systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

polkitd:x:999:997:User for polkitd:/:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

chrony:x:998:996::/var/lib/chrony:/sbin/nologin

dockerroot:x:997:994:Docker User:/var/lib/docker:/sbin/nologin

gubeiqing:x:1000:1000::/home/gubeiqing:/bin/bash

注:在这里可以看到这个系统中的所有用户,可以看到最后一行就是刚刚创建的用户,那么使用vi编辑器删除最后一行的用户。

 

3.删除/etc/group下的用户组文件

先查看一下这个文件:

[root@localhost ~]# cat /etc/group

root:x:0:

bin:x:1:

daemon:x:2:

sys:x:3:

adm:x:4:

tty:x:5:

disk:x:6:

lp:x:7:

mem:x:8:

kmem:x:9:

wheel:x:10:

cdrom:x:11:

mail:x:12:postfix

man:x:15:

dialout:x:18:

floppy:x:19:

games:x:20:

tape:x:30:

video:x:39:

ftp:x:50:

lock:x:54:

audio:x:63:

nobody:x:99:

users:x:100:

utmp:x:22:

utempter:x:35:

ssh_keys:x:999:

input:x:998:

systemd-journal:x:190:

systemd-network:x:192:

dbus:x:81:

polkitd:x:997:

postdrop:x:90:

postfix:x:89:

sshd:x:74:

chrony:x:996:

cgred:x:995:

dockerroot:x:994:

gubeiqing:x:1000:

然后使用vi编辑器删除这个用户组。

 

4.删除/var/spool/mail下的邮箱文件

[root@localhost ~]# cd /var/spool/mail

[root@localhost mail]# ls

gubeiqing

[root@localhost mail]# rm -rf gubeiqing

[root@localhost mail]# ls

[root@localhost mail]#

 

删除完成,再来创建gubeiqing用户:

[root@localhost mail]# useradd gubeiqing

[root@localhost mail]# passwd gubeiqing

Changing password for user gubeiqing.

New password:

BAD PASSWORD: The password is a palindrome

Retype new password:

passwd: all authentication tokens updated successfully.

 

注:完成,不过除了这种方法还有一种完全删除的方法。

 

方法二

[root@localhost mail]# userdel -rf gubeiqing

[root@localhost mail]# useradd gubeiqing

[root@localhost mail]# passwd gubeiqing

Changing password for user gubeiqing.

New password:

BAD PASSWORD: The password is a palindrome

Retype new password:

passwd: all authentication tokens updated successfully.

 

注:使用上面两种方法就可以完全删除用户。

 

相关主题

在Linux系统上检查用户所属组

精选文章
热门文章