删除用户账号和组群账号
删除用户账号
删除用户及组群账号要比添加账号需要考虑更多的内容,因为账号的删除并不是单纯将这个账号去除,另外有关此账号的目录空间也要一并删除,这样才能完整清除账号数据,以caroline
为例:
在/etc/passwd 文件中删除用户的记录
caroline:x:502:502::/home/caroline:/bin/bash
在/etc/shadow 文件中删除用户的记录
caroline:!!:11887:0:99999:7:::
在/etc/group 中将用户同名的组群记录删除
caroline:x:501:
删除用户的主目录(/home/caroline)
[root@localhost ~]# rm -fr /home/caroline
-f 忽略不存在的文件,从不给出提示
-r 全部目录和子目录递归删除
删除用户的电子邮件,这是管理员经常忘记清除的空间,因为用户信箱中大多会存放许多数据,如果没有在删除账号时一并清除,则很容易造成硬盘空间的浪费,通常一般用户的电子邮件都是储存在/var/spool/mail
目录下。
[root@localhost ~]# rm /var/spool/mail/caroline
rm:是否删除’/var/spool/mail/caroline’?y
删除用户执行的后台程序。为了避免用户目前还有程序在系统中执行,可以使用下面的方法来删除:
[root@localhost ~]# ps -aux | grep "caroline"
caroline 1694 0.0 0.4 2584 872 ? S 03:59 0:00 fam
[root@localhost ~]# kill -9 1694
-9 表示强制删除该程序
删除用户 crontab 的设置,如果用户曾经使用 crontab 来设置定时器,则在/var/spool/cron
目录中会存在一个与用户同名的文件,可以使用下面的方法来删除:
[root@localhost ~]# rm /var/spool/cron/caroline
或
[root@localhost ~]# /usr/bin/crontab -u caroline -d
删除组群账号
在创建账号时,系统会自动创建该账号隶属的组群,但是在删除用户账号时,系统并不会自动删除组群,因此管理员必须手动删除组群账号。删除组群账号的步骤比删除用户账号容易许多,只要使用 groupdel 命令加上组群账号名称即可,下面是一个示例:
[root@localhost ~]# groupdel caroline
但是在删除组群账号需注意,如果该组群中的任何用户目前已登录系统中,则无法删除此组群账号,同时系统会出现groupdel:cannot remove user's primary group.
的警告信息。
[root@localhost ~]# groupdel jack
groupdel:cannot remove user’s primary group. (这个就是无法删除组群)