1、命令概述

userdel命令用于删除指定的用户及与该用户相关的文件。其实userdel命令实际上是修改了系统的用户账号文件 /etc/passwd、/etc/shadow、/etc/group、/etc/gshadow以及家目录文件。这与Linux系统”一切操作皆文件”的思想正好吻合。如果有该要删除用户相关的进程正在运行,userdel命令通常不会删除一个用户账号。如果确实必须要删除,可以先终止用户进程,然后再执行userdel命令进行删除。但是userdel命令也提供了一个面对该种情况的参数,即”-f”选项。

用户的相关数据信息包含如下几项:
  用户基本信息:存储在 /etc/passwd 文件中;
  用户密码信息:存储在 /etc/shadow 文件中;
  用户群组基本信息:存储在 /etc/group 文件中;
  用户群组信息信息:存储在 /etc/gshadow 文件中;
  用户个人文件:主目录默认位于 /home/用户名
  邮箱位于:/var/spool/mail/用户名。

其实,userdel 命令的作用就是从以上文件中,删除与指定用户有关的数据信息。

2、命令语法

userdel【选项】 【用户名】 

3、命令选项

-f 强制删除用户账号

-r删除用户主目录及其中的任何文件

4、命令示例

4.1 userdel 不加选项,则仅删除用户帐号,而不删除相关文件。

1 [root@localhost ~]# userdel liuzg       #只删除了liuzg用户,而没有删除liuzg用户的相关文件

4.2 -r 删除用户主目录及其中的任何文件

1 [root@localhost ~]# userdel -r liuzg

若彻底删除与用户相关的文件信息,可通过 find / -user liuzg(用户名) 查找出逐一删除  然后执行userdel -r liuzg 一切搞定

 1 [root@localhost ~]# find / -user liuzg
 2 /home/liuzg
 3 /home/liuzg/.bash_logout
 4 /home/liuzg/.bash_profile
 5 /home/liuzg/.bashrc
 6 /home/liuzg/a.txt
 7 /home/liuzg/work
 8 /home/liuzg/.bash_history
 9 find: '/proc/9957/task/9957/fd/6': No such file or directory
10 find: '/proc/9957/task/9957/fdinfo/6': No such file or directory
11 find: '/proc/9957/fd/6': No such file or directory
12 find: '/proc/9957/fdinfo/6': No such file or directory
13 /var/spool/mail/liuzg
02-13 23:23