如何在Linux中删除具有主目录的用户帐户

在本教程中,我将执行您的通过步骤,您可以使用删除用户的帐户与他/她的主目录在Linux系统上。

在本教程中,我将执行您的通过步骤,您可以使用删除用户的帐户与他/她的主目录在Linux系统上。

在Linux中使用主目录删除用户帐户

在Linux中使用主目录删除用户帐户

要了解如何在Linux系统上创建用户帐户并对其进行管理,请阅读以下链接中的以下文章:

  1. 15“useradd”命令示例管理Linux中的用户帐户
  2. 15“usermod”在Linux中更改/修改用户帐户名的命令示例
  3. 如何在Linux中使用文件权限管理用户和组

由于在Linux中系统管理员 ,你可能必须删除用户帐户后的某个时间当一个用户帐户可能这么长时间处于休眠状态,或用户可能会离开组织或公司或任何其他原因。

在Linux系统上删除用户帐户时,删除其主目录以释放存储设备上的新系统用户或其他服务的空间也很重要。

删除/删除用户帐户与他/她的主目录

1.出于演示的目的,首先,我将通过创建我的系统是用户howtoing和用户linuxsay与他们的主目录的/ home / howtoing/ home / linusay分别使用adduser命令在两个用户帐户启动。

# adduser howtoing
# passwd howtoing
# adduser linuxsay
# passwd linuxsay
在Linux中创建新用户帐户

在Linux中创建新用户帐户

从上面的截图,我用adduser命令创建Linux上的用户帐户。 您还可以使用useradd命令,都是一样的,做同样的工作。

2.现在,让我们继续移动,看看如何删除或使用deluser在Linux中删除用户帐户(对于Debian和它的衍生物)和userdel的 (对于基于RedHat的/ CentOS的系统)命令。

对于deluseruserdel的命令配置文件中的指令确定如何在运行这个命令,它会处理所有用户的文件和目录。

让我们来看看为这是deluser命令配置文件/etc/deluser.conf Debian的衍生产品如Ubuntu,Kali,薄荷和RHEL / CentOS的/ Fedora用户,您可以查看/etc/login.defs文件。

这些配置中的值是默认值,可以根据您的需要进行更改。

# vi /etc/deluser.conf         [On Debian and its derivatives]
# vi /etc/login.defs           [On RedHat/CentOS based systems]

3.要删除与主目录的用户,您可以通过以下你的Linux服务器计算机上执行这些步骤使用先进的方法。 当用户登录到服务器时,他们使用服务并运行不同的进程。 重要的是要注意,用户只有在未登录到服务器时才能有效地被删除。

在Linux中锁定用户帐户

从锁定用户帐户密码开始,以便用户无权访问系统。 这将阻止用户在系统上运行进程。

passwd命令包括-lock选项可以帮助您实现这一点:

# passwd --lock howtoing
Locking password for user howtoing.
passwd: Success
在Linux中锁定用户帐户密码

在Linux中锁定用户帐户密码

查找和终止用户的所有运行进程

接着找出用户帐户的所有正在运行的进程,并杀死他们通过确定通过使用用户拥有的进程的PID( 进程ID):

# pgrep -u howtoing
1947
1959
2091
2094
2095
2168
2175
2179
2183
2188
2190
2202
2207
2212
2214

然后,您可以使用以下命令帮助列出用户名,PID,PPID(父进程ID),终端使用,进程状态,命令路径的完整格式化风格的进程interms如下所示:

# ps -f --pid $(pgrep -u howtoing)
UID        PID  PPID  C STIME TTY      STAT   TIME CMD
howtoing   1947     1  0 10:49 ?        SLl    0:00 /usr/bin/gnome-keyring-daemon --daemonize --login
howtoing   1959  1280  0 10:49 ?        Ssl    0:00 mate-session
howtoing   2091  1959  0 10:49 ?        Ss     0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session
howtoing   2094     1  0 10:49 ?        S      0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session
howtoing   2095     1  0 10:49 ?        Ss     0:00 //bin/dbus-daemon --fork --print-pid 6 --print-address 9 --session
howtoing   2168     1  0 10:49 ?        Sl     0:00 /usr/lib/dconf/dconf-service
howtoing   2175  1959  0 10:49 ?        Sl     0:02 /usr/bin/mate-settings-daemon
howtoing   2179  1959  0 10:49 ?        Sl     0:47 marco
howtoing   2183     1  0 10:49 ?        Sl     0:00 /usr/lib/gvfs/gvfsd
howtoing   2188  1959  0 10:49 ?        Sl     0:00 mate-panel
howtoing   2190     1  0 10:49 ?        Sl     0:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes
howtoing   2202     1  0 10:49 ?        S<l    0:20 /usr/bin/pulseaudio --start --log-target=syslog
howtoing   2207  1959  0 10:49 ?        S      0:00 /bin/sh /usr/bin/startcaja
howtoing   2212     1  0 10:49 ?        Sl     0:03 /usr/bin/python /usr/lib/linuxmint/mintMenu/mintMenu.py
howtoing   2214     1  0 10:49 ?        Sl     0:11 /usr/lib/mate-panel/wnck-applet
....
查找用户的所有运行进程

查找用户的所有运行进程

一旦你找到用户的所有正在运行的进程,您可以使用killall命令来杀死那些正在运行的进程,如图所示。

# killall -9 -u howtoing

-9对于SIGKILL信号信号编号或使用-KILL代替-9-u用户名定义。

注意 :在最新RedHat / CentOS 7.x的版本和Fedora 21+的版本中,你会得到错误信息如下:

-bash: killall: command not found

要解决这样的错误,您需要安装psmisc包如下所示:

# yum install psmisc       [On RedHat/CentOS 7.x]
# dnf install psmisc       [On Fedora 21+ versions]

在删除之前备份用户数据

接下来,您可以备份用户文件,这可以是可选的,但它建议将来使用时,需要审查用户帐户详细信息和文件。

我已经使用了tar实用工具来创建用户的主目录的备份操作如下:

# tar jcvf /user-backups/howtoing-home-directory-backup.tar.bz2 /home/howtoing
Linux中的备份用户主目录

Linux中的备份用户主目录

删除/删除用户帐户和文件

现在,你可以放心地与他/她的主目录一起删除用户,删除系统上的所有用户文件使用--remove-all-files在下面的命令选项:

# deluser --remove-home howtoing      [On Debian and its derivatives]
# userdel --remove howtoing           [On RedHat/CentOS based systems]
删除具有主目录的用户帐户

删除具有主目录的用户帐户

概要

这是所有与删除用户和他们的主目录从Linux系统。 我相信指南很容易遵循,但你可以发表一个关注或添加更多的想法,留下评论。