使用userdel命令删除Linux用户的教程详解

serdel是什么

userdel 是一个底层用于删除用户的工具。在 Debian 上,我们通常会使用 deluser 命令。userdel 会查询系统账户文件,例如 /etc/password 和 /etc/group。那么它会删除所有和用户名相关的条目。在我们删除它之前,用户名必须存在。

如何使用userdel

由于 userdel 会修改系统账户文件,那么我们需要root特权来运行它。不然我们会遇到一个报错信息“只有root权限才能执行这项操作”或者类似的信息。在我们得到特权后,我们可以通过输入 userdel 从你的控制台删除用户。下面是一个默认使用 userdel 的样例。

$ sudo userdel pasadena

或者

# userdel pasadena

正如你所见,我们不能没有root权限而删除用户 pasadena。当我们有权限时,系统不会给出错误信息,这意味着用户已经成功删除。

完全删除用户家目录

不带选项使用 userdel,只会删除用户。用户的家目录将仍会在/home目录下。

当我们进入/home目录时,我们仍旧可以看到ID 1002拥有 pasadena 文件夹。已创建的用户通常会有一个与用户名相同的组名。1002是 pasadena 用户名的 UID 和 pasadena 组名的 GID。

为了在删除用户时完全删除家目录,我们可以使用 -r 选项。这个选项同样会删除用户的邮件池,如果存在的话。

强制删除一个用户

userdel 提供了 -f 选项来强制删除用户。甚至当用户已经登入 Linux 系统时此选项仍旧生效。请看一下示例截图。

截图的上面显示用户 pasadena 已经登录了系统。它被标记的进程6218是 SSHD 进程。而当我们用“userdel -f pasadena”只会显示已经登录的要被删除的用户信息。命令本身已经成功。如果我们使用cat 命令查看/etc/passwd的内容,我们看不到到用户 pasadena 存在了。他的家目录还存在但是所有者只能显示为数字ID。

有一件事我们必须了解,带 -f 选项的 userdel 不会断开 该用户已有的 SSH 链接。因此,即使用户已经不存在,但实际上仍是登录状态,并且是活跃用户。但是当用户登出后不可再登录,因为用户已经被删除。

因此所以这个选项使用起来有些危险,因为它会使你的系统进入不一致的状态。

总结

userdel 是一个 Linux 系统内部删除用户的工具。userdel同样是deluser命令的后端,这是一个用perl编写的删除用户的脚本。如往常一样,你可以输入man userdel来查看关于userdel命令的更多细节。

以上所述是小编给大家介绍的使用userdel命令删除Linux用户的教程详解 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 新手入门级linux系统常用命令大全

    Linux命令学习是大多数新手的最大障碍,今天为大家分享一些Linux系统下常用的基础命令,linux常用命令全集 Linux系统信息命令 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpu

  • linux命令详解之chkconfig命令使用方法

    使用语法:chkconfig[--add][--del][--list][系统服务] 或chkconfig[--level < 等级代号>][系统服务][on/off/reset] chkconfig在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是,返回true,否则返回false.如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息.on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有

  • Linux下的chkconfig命令详解

    chkconfig命令 Linux下的chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法 chkconfig [–add][–del][–list][系统服务] 或 chkconfig [–level <等级代号>][系统服务][on/off/reset] chkconfig在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是,返回true

  • Linux下完全删除用户的两种方法

    Linux操作 实验环境:Centos7虚拟机 首先创建一个普通用户 gubeiqing . [root@localhost ~]# useradd gubeiqing [root@localhost ~]# passwd gubeiqing Changing password for user gubeiqing. New password: BAD PASSWORD: The password is a palindrome Retype new password: passwd: all

  • 探索Linux内核:Kconfig的秘密

    深入了解Linux配置/构建系统是如何工作的. 自从Linux内核代码迁移到Git之后,Linux内核配置/构建系统(也称为Kconfig/kBuild)已经存在了很长时间.然而,作为支持基础设施,它很少受到关注:即使在日常工作中使用它的内核开发人员也从未真正考虑过它. 为了探索Linux内核是如何编译的,本文将深入研究Kconfig/kBuild内部进程,解释.config文件和vmlinux/bzImage文件是如何生成的,并介绍一个用于依赖性跟踪的智能技巧. Kconfig 构建内核的第一

  • Linux下截屏并编辑的最佳工具

    当我的主力操作系统从 Windows 转换到 Ubuntu 的时候,首要考虑的就是屏幕截图工具的可用性.尽管使用默认的键盘快捷键也可以获取屏幕截图,但如果使用屏幕截图工具,可以更方便地对屏幕截图进行编辑. 本文将会介绍在不适用第三方工具的情况下,如何通过系统自带的方法和工具获取屏幕截图,另外还会介绍一些可用于 Linux 的最佳截图工具. 方法 1:在 Linux 中截图的默认方式 你想要截取整个屏幕?屏幕中的某个区域?某个特定的窗口? 如果只需要获取一张屏幕截图,不对其进行编辑的话,那么键盘的

  • linux 驱动之Kconfig文件和Makefile文件实例

    linux 驱动之Kconfig文件和Makefile文件实例 在Linux编写驱动的过程中,有两个文件是我们必须要了解和知晓的.这其中,一个是Kconfig文件,另外一个是Makefile文件.如果大家比较熟悉的话,那么肯定对内核编译需要的.config文件不陌生,在.config文件中,我们发现有的模块被编译进了内核,有的只是生成了一个module.这中间,我们如何让内核发现我们编写的模块呢,这就需要在Kconfig中进行说明.至于如何生成模块,那么就需要利用Makefile告诉编译器,怎么

  • 值得收藏的27个Linux文档编辑命令

    Linux col命令 Linux col命令用于过滤控制字符. 在许多UNIX说明文件里,都有RLF控制字符.当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符. Linux colrm命令 Linux colrm命令用于滤掉指定的行. colrm指令从标准输入设备读取书记,转而输出到标准输出设备.如果不加任何参数,则该指令不会过滤任何一行. Linux com

  • 快速自学Linux命令的4种方法

    如果你想成为Linux高手,那么掌握一些Linux命令是必不可少的.下面是自学Linux命令的4种方法. 一.每日提示 学习Linux命令的一种渐进式方法是:在每次打开终端时,让它显示"每日提示".这会向你介绍一些有用的命令及其高级使用技巧. 在.bashrc中(/home/.bashrc)增加如下一行: echo "Did you know that:"; whatis$(ls /bin | shuf -n 1) 你只需要增加这行就够了!如果你想让它更娱乐化一些,

  • 使用userdel命令删除Linux用户的教程详解

    serdel是什么 userdel 是一个底层用于删除用户的工具.在 Debian 上,我们通常会使用 deluser 命令.userdel 会查询系统账户文件,例如 /etc/password 和 /etc/group.那么它会删除所有和用户名相关的条目.在我们删除它之前,用户名必须存在. 如何使用userdel 由于 userdel 会修改系统账户文件,那么我们需要root特权来运行它.不然我们会遇到一个报错信息"只有root权限才能执行这项操作"或者类似的信息.在我们得到特权后,

  • Linux yum 命令安装mysql8.0的教程详解

    一 ,做好安装前的清理工作 rpm -pa | grep mysql 或者 rpm -qa | grep -i mysql yum remove mysql-xxx-xxx find / -name mysql rm -rf /xxx/xxx/xxx 二 , 下载对应的安装包 下载链接:https://dev.mysql.com/downloads/repo/yum/  三 , 安装mysql 执行rpm文件 rpm -ivh mysql57-community-release-el7-11.n

  • SpringBoot + Vue 项目部署上线到Linux 服务器的教程详解

    前言 给大家分享以下我是如何部署 SpringBoot + Vue 前后端分离的项目的,我用的 Linux 发行版是 CentOS7.5 有了一个基于 ElementUI 的电商后台管理系统,在开发一个相似的后台就会轻松很多.不过前面的系统的后端是使用 node 完成的,对于我们 Java 开发者来说,用不到.我学习的是 ElementUI 的使用,就足够了,然后后端服务就全部可以自己使用 SpringBoot 来完成 最近貌似 Vue3 正式版也发布了,正好有空看可以去看一看 提示:以下是本篇

  • Linux进程基础教程详解

    计算机实际上可以做的事情实质上非常简单,比如计算两个数的和,再比如在内存中寻找到某个地址等等.这些最基础的计算机动作被称为指令 (instruction).所谓的程序(program),就是这样一系列指令的所构成的集合.通过程序,我们可以让计算机完成复杂的操作.程序大多数时候被存储为可执行的文件.这样一个可执行文件就像是一个菜谱,计算机可以按照菜谱作出可口的饭菜. 那么,程序和进程(process)的区别又是什么呢? 进程是程序的一个具体实现.只有食谱没什么用,我们总要按照食谱的指点真正一步步实

  • Linux下安装mysql的教程详解

    1. 关闭mysql服务 # service mysqld stop 2. 检查是否有rpm包,如果没有用rpm安装过mysql,不应该有残留,如果有,需要删掉 检查语法: rpm -qa|grep -i mysql 删除语法: rpm -e <包的名字> 如果遇到依赖,无法删除,使用 rpm -e --nodeps <包的名字> 不检查依赖,直接删除rpm包. 3. 通过find命令检查是否有安装mysql文件,有需要删除 检查语法: find / -name mysql 删除语

  • linux 编译安装python3.6的教程详解

    1. 首先去官网  https://www.python.org/downloads/source/ 下载 Gzipped source tarball 不要下载 " XZ compressed source tarball " ,目前 python3.6 最新版压缩包名字是:Python-3.6.7.tgz. 把下载的压缩包随便放到一个地方,也可以放到桌面(便于安装过后删除安装包和解压后的安装包). 2. 命令行切换到上面压缩文件所在的目录(比如桌面),然后输入 tar -xzf P

  • Linux下安装mysql-8.0.20的教程详解

    ** Linux下安装mysql-8.0.20 ** 环境介绍 操作系统:CentOS 7 mysql下载地址:https://dev.mysql.com/downloads/mysql/ 下载版本:https://www.jb51.net/softs/609101.html https://www.jb51.net/softs/609101.html 卸载mysql 查看是否安装过mysql,命令:find / -name mysql 如果安装过,进行卸载: 删除相关目录: 删除配置文件: 删

  • Linux下安装mysql 5.7.17.tar.gz的教程详解

    1.创建MySQL组和mysql用户 groupadd mysql useradd -r -g mysql mysql 2.拷贝: cp -R mysql-5.7.16-linux-glibc2.5-i686 /usr/local/mysql 3.创建data目录 mkdir /usr/local/mysql/data 3.安装数据库 切换到/usr/loca/mysql目录下 cd /usr/local/mysql 修改当前目录的所有者为mysql用户 chown -R mysql:mysql

  • Linux中selinux基础配置教程详解

    selinux(Security-Enhanced Linux)安全增强型linux,是一个Linux内核模块,也是Linux的一个安全子系统. 三种模式: Enforcing:强制模式,在selinux运作时,已经开始限制domain/type. permissive: 警告模式,在selinux运作时,会有警告讯息,但不会限制domain/type的存取. disabled: 关闭模式. 可用getenforce查看selinux状态 selinux对文件的作用: 当开启selinux后,s

  • 在Linux系统上安装Spring boot应用的教程详解

    Unix/Linux 服务 systemd 服务 操作过程 1. 安装了JDK的centOS7虚拟机 注意下载linux版本JDK的时候不能直接通过wget这种直接链接下载,否则会解压不成功,应该打开原官网,点击同意许可后点击下载(这种方式下载很慢),比较好的方式是复制下载页的地址到迅雷,通过迅雷打开该下载页,同意许可后点击下载. 下载后解压.配置环境变量 tar -zxvf jdk1.8.0_211.jar.gz 环境变量配置:/etc/profile 文件最后添加如下 export JAVA

随机推荐