文章目录
前言
前文讲述了创建用户和修改用户的命令,那自然亦有删除用户了,这样就能构成一个循环,下面一起来看看这个命令的使用。
一、命令的介绍
userdel命令来自于英文词组“user delete”的缩写,其功能是删除用户账号。linux系统中一切都是文件,用户信息被保存到了/etc/passwd、/etc/shadow以及/etc/group文件中,因此使用userdel命令实际就是帮助我们删除了指定用户在上述三个文件中的对应信息。
二、语法及参数
2.1 还是老规矩,先查看命令的语法
语法:userdel 【参数】用户名
[root@VM-12-17-centos ~]# userdel --help
Usage: userdel [options] LOGIN
2.2 常用参数
userdel的常用参数并不多,比较常用的是这几个。
-f | 强制删除用户账号 |
-r | 删除用户主目录及其中的任何文件 |
-h | 显示命令的帮助信息 |
三、参考实例
3.1 删除指定的用户账号及家目录
[root@localhost ~]# userdel -r user20
3.2 强制删除用户账号
[root@localhost ~]# userdel -f user30
3.3 用for循环删除用户及家目录
for i in `seq -w 1 9`;do userdel -r user$i;done
四、删除一个用户会少了什么
4.1 先创建一个文件,并看下会产生什么文件
创建了文件会有这些文件信息,3198是文件的描述符,运行文件或者服务就会产生的一个数值。
[root@localhost ~]# useradd test
[root@localhost ~]# id test
uid=1001(test) gid=1001(test) 组=1001(test)
[root@localhost ~]# find / -user test
find: ‘/proc/3198/task/3198/fd/5’: 没有那个文件或目录
find: ‘/proc/3198/task/3198/fdinfo/5’: 没有那个文件或目录
find: ‘/proc/3198/fd/6’: 没有那个文件或目录
find: ‘/proc/3198/fdinfo/6’: 没有那个文件或目录
/var/spool/mail/test
/home/test
/home/test/.bash_logout
/home/test/.bash_profile
/home/test/.bashrc
/home/test/.mozilla
/home/test/.mozilla/extensions
/home/test/.mozilla/plugins
4.2 几个文件的信息变化
这几个文件里面保存了用户创建的信息
[root@localhost ~]# tail -1 /etc/passwd
test:x:1001:1001::/home/test:/bin/bash
[root@localhost ~]# tail -1 /etc/shadow
test:!!:19404:0:99999:7:::
[root@localhost ~]# tail -1 /etc/group
test:x:1001:
4.3 删除用户
删除用户后,这几个文件都没有了test的信息,再看下find能否找到相关的文件信息
[root@localhost ~]# userdel -r test
[root@localhost ~]# grep "test" /etc/passwd
[root@localhost ~]# grep "test" /etc/shadow
[root@localhost ~]# grep "test" /etc/group
[root@localhost ~]# find / -user test
删除文件后,这几个文件会没有用户的信息,并且连同用户创建的文件一并删除了。
总结
userdel的命令并不复杂,只有几个比较常用的用法,在学习起来也较为容易,如果觉得内容还行的,可以一键三连支持一下!