Linux使用userdel命令删除/删除用户帐户
如何从服务器中删除用户访问权限?
如何在Linux操作系统(包括主目录)和正在运行的cron作业下删除用户帐户?
您需要在Linux操作系统下使用userdel命令从用户帐户中"删除用户帐户"和相关文件。
userdel命令必须在Linux上以root用户身份运行。
Linux删除用户命令语法
在Linux上,"删除用户帐户"的语法如下。
userdel userName userdel [options] userName userdel -r userName
userdel命令示例
让我们从本地Linux系统/服务器/工作站中删除名为Hyman的用户或者名为Hyman的帐户,执行:
# userdel Hyman
接下来,删除用户主目录,并在假脱机中将名为ashish的用户的-r选项传递给userdel,执行:
# userdel -r ashish
介绍如何在Linux中使用主目录删除用户帐户
上面的命令将删除所有文件以及主目录本身和用户邮件假脱机。
请注意,必须手动搜索和删除其他文件系统中的文件。
传递-f选项以强制删除文件,即使不是用户所有:
# userdel -r -f tom
要为用户删除任何SELinux用户映射,请通过-Z选项:
# userdel -Z -r -f jerry
其中:
- -f:删除Linux用户帐户并强制删除文件
-r
:删除Linux用户帐户,包括主目录和邮件后台处理程序-Z
:从Linux删除用户时,删除该用户的所有SELinux用户映射
关于/etc/login.defs文件的注释
默认值是从/etc/login.defs文件中提供的有关基于RHEL(Red Hat)的发行版的信息中获取的。
基于Debian和Ubuntu Linux的系统使用/etc/deluser.conf文件:
# /etc/deluser.conf: deluser configuration - Debian / Ubuntu Linux only. # Remove home directory and mail spool when user is removed REMOVE_HOME = 0 # Remove all files on the system owned by the user to be removed REMOVE_ALL_FILES = 0 # Backup files before removing them. This options has only an effect if # REMOVE_HOME or REMOVE_ALL_FILES is set. BACKUP = 0 # target directory for the backup file BACKUP_TO = "." # delete a group even there are still users in this group ONLY_IF_EMPTY = 0 # exclude these filesystem types when searching for files of a user to backup EXCLUDE_FSTYPES = "(proc|sysfs|usbfs|devpts|tmpfs)"
从Linux删除用户帐户的完整示例
以下是从Linux服务器删除用户的推荐步骤。
首先,锁定用户帐户,执行:
# passwd -l Hyman
或者设置禁用用户帐户的日期(语法为usermod --expiredate YYYY-MM-DD userNameHere
):
# usermod --expiredate 1 Hyman
如果用户尝试登录,他或者她将收到以下消息:
Your account has expired; please contact your system administrator Authentication failure
接下来,将文件从/home/Hyman备份到/nas/backup
# tar -zcvf /nas/backup/account/deleted/v/Hyman.$uid.$now.tar.gz /home/Hyman/
请用实际的UID和日期/时间替换$uid,$now。
如果用户当前已登录,Tye userdel命令将不允许您删除帐户。
您必须杀死属于您要删除的帐户的所有正在运行的进程,执行:
# pgrep -u Hyman # ps -fp $(pgrep -u Hyman) # killall -KILL -u Hyman
在工作中删除,输入
# find /var/spool/at/ -name "[^.]*" -type f -user Hyman -delete
除去cron作业,执行:
# crontab -r -u Hyman
删除打印作业,执行:
# lprm Hyman
要查找用户Hyman拥有的所有文件,请执行:
# find / -user Hyman -print
您可以找到名为Hyman的用户所拥有的文件,并按以下方式更改其所有权:
# find / -user Hyman -exec chown newUserName:newGroupName {} \;
最后,删除名为Hyman的用户帐户,执行:
# userdel -r Hyman