我使用过的Linux命令之userdel - 删除用户账号

我使用过的Linux命令之userdel - 删除用户账号

本文链接:http://codingstandards.iteye.com/blog/1114813 (转载请注明出处)

用途说明

userdel用于删除用户账号及其相关文件(Delete a user account and related files),添加账号的命令是useradd或adduser。

常用参数

格式:userdel <account>

删除<account>指定的账号,并删除相关的文件。

格式:userdel -r <account>

删除<account>指定的账号,把用户主目录以及邮件池(Files in the user's home directory will be removed along with the home directory itself and the user's mail spool)。非主目录下该用户的文件不会被自动删除,需要手工找出来自行删除(Files located in other file systems will have to be searched for and deleted manually)。

注:今天发现Linux系统上自带的中文手册翻译得有问题,如下所示:

man userdel 写道
描述
userdel 命 令 修 改 系 统 帐 号 档删 除 所 有 login 会 参 考 的 部 份 。使 用 者 名 称 必 须是 存 在 的 。
-r 使 用 者 目 录 下 的 档 案 一 并 移 除 。 在 其 他 位 置 上 的 档案 也 将 一 一 找 出 并 删 除 。

使用示例

示例一 删除不存在的账号

[root@web186 root]# userdel xxx
userdel: user xxx does not exist
[root@web186 root]#

示例二 创建、删除账号

创建账号用useradd命令,-m表示要创建主目录,-g设置初始组,-G设置额外的组(一个账号可以属于多个组),-s用于设置登录shell,-c用于设置注释。

下面展示了创建账号和删除账号,该实例来自网络资料。

 [root@node34 root]# useradd -m -g users -G Wheel,student  -s /bin/sh -c "Yan Dingcheng" bugboy
useradd: unknown group Wheel
useradd: unknown group student
[root@node34 root]# groupadd Wheel
[root@node34 root]# groupadd student
[root@node34 root]# useradd -m -g users -G Wheel,student  -s /bin/sh -c "Yan Dingcheng" bugboy
[root@node34 root]# ls /home/bugboy
[root@node34 root]# ls /home/bugboy -l
总用量 0
[root@node34 root]# ls /home/bugboy -ld
drwx------    3 bugboy   users        4096  8月  1 05:50 /home/bugboy

[root@node34 root]# grep bugboy /etc/passwd
bugboy:x:501:100:Yan Dingcheng:/home/bugboy:/bin/sh
[root@node34 root]# useradd -m -g users -G Wheel,student  -s /bin/sh -c "Yan Dingcheng" bugboy
useradd: user bugboy exists
[root@node34 root]# userdel -r bugboy
[root@node34 root]# userdel -r bugboy
userdel: user bugboy does not exist
[root@node34 root]# ls /home/bugboy -ld
ls: /home/bugboy: 没有那个文件或目录
[root@node34 root]# find / -user bugboy -exec rm {} \;
find: invalid argument `bugboy' to `-user'
[root@node34 root]#

 上面的find命令用汉语删除该用户的所有文件,但实际上不管用,因为账号已经被删除了,应该在删除账号之前执行,如下所示:

 [root@node34 root]#  useradd -m -g users -G Wheel,student  -s /bin/sh -c "Yan Dingcheng" bugboy
[root@node34 root]#
[root@node34 root]# find / -user bugboy -exec rm {} \;
find: /proc/18448/fd/4: 没有那个文件或目录
rm: 无法删除‘/home/bugboy’: 是一个目录
rm: 无法删除‘/home/bugboy/.kde’: 是一个目录
rm: 无法删除‘/home/bugboy/.kde/Autostart’: 是一个目录
You have new mail in /var/spool/mail/root
[root@node34 root]# userdel -r bugboy
[root@node34 root]#

问题思考

相关资料

【1】百度空间 useradd / userdel 命令

http://hi.baidu.com/hello123/blog/item/eb62d52af26db128d42af1b1.html

【2】murray-专注于网站建设及优化 如何在linux下使用userdel和 groupdel删除用户和用户组
http://www.murray.cn/index.php/2010/01/linux-userdel-groupdel-user-group/

返回 我使用过的Linux命令系列总目录

猜你喜欢

转载自codingstandards.iteye.com/blog/1114813