6. userdel 命令
userdel 是 Linux 系统中用于删除用户账户的命令,由 root 或具有 sudo 权限的用户执行。它不仅可以删除用户账户,还可以选择是否同时删除用户的主目录和邮件池(mail spool)。
作用
- 删除用户账户(从
/etc/passwd和/etc/shadow中移除记录)。 - 可选删除用户的主目录(
/home/用户名)。 - 可选删除用户的邮件池(
/var/mail/用户名)。
命令格式
userdel [选项] [用户名]
常用选项
选项
说明
-r删除用户的同时,删除其主目录和邮件池(推荐使用)。
-f强制删除用户,即使该用户仍处于登录状态或存在未退出的进程(谨慎使用)。
-Z同时删除用户的 SELinux 上下文(仅适用于 SELinux 系统)。
示例
删除 li4 账户的所有信息
weimz@mzstudio:~$ ls /home/
lisi weimz
weimz@mzstudio:~$ ls /var/mail/
weimz@mzstudio:~$ tail -2 /etc/passwd
zhang3:x:1001:1002::/home/zhang3:/bin/sh
li4:x:1002:1001:develop_lisi:/home/lisi:/bin/sh
weimz@mzstudio:~$ sudo tail -2 /etc/shadow
[sudo: authenticate] 密码:
zhang3:!:20230:0:99999:7:::
li4:$y$j9T$tMMhKiIFx.bZrl9okX8gI1$71O/ie4nl4ud223.7wZAuJed9/GzkpbiofwFVyJxKU5:20230:0:99999:7:::
weimz@mzstudio:~$ sudo userdel -r li4
[sudo: authenticate] 密码:
userdel:li4 信件池 (/var/mail/li4) 未找到
weimz@mzstudio:~$ ls /home/
weimz
weimz@mzstudio:~$ tail -2 /etc/passwd
weimz:x:1000:1000:weimz:/home/weimz:/bin/bash
zhang3:x:1001:1002::/home/zhang3:/bin/sh
weimz@mzstudio:~$ sudo tail -2 /etc/shadow
weimz:$y$j9T$.R1f8G1xXvhOMDubnF6Zq1$37F6PMMGpZM5GUp.qVxzvN3LhEpwrKAtn18PNVKLcd1:20600:0:99999:7:::
zhang3:!:20600:0:99999:7:::
weimz@mzstudio:~$
删除 li4 用户的信息并保留主文件夹(主目录)则需要用 sudo userdel li4 命令。
练习:
- 删除
test用户,同时删除其用户主文件夹和主组。