Linux基本功系列之userdel命令实战

news2024/9/21 10:49:26

在这里插入图片描述
春节马上要到了,大街上到处都是张灯结彩,喜气洋洋的景象,你们那里也开始了吗?

文章目录

  • 一. userdel命令概述
  • 二. 语法格式及常用选项
    • 语法格式及常用参数
  • 三. 参考案例
    • 3.1 删除用户但不删除家目录等相关的文件
    • 3.2 把用户彻底删除
    • 3.3 强制删除某个用户
  • 总结

前言🚀🚀🚀
想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。
💓 知识最重要的是记忆
💓 入门须知: 想要人生从容,必须全力以赴,努力才是你最终的入场券🚀🚀🚀
💕 最后: 努力成长自己,愿我们都能在看不到的地方闪闪发光 ,一起加油进步🍺🍺🍺

一. userdel命令概述

我们现在已经学习过两个命令,一个是:useradd 创建用户
另一个是usermod 修改用户信息。

接下来,我们一起来看看userdel - 删除用户账户和相关文件

userdel命令用于删除指定的用户以及与该用户相关的文件。

userdel的英文全称是“user delete”

userdel命令在执行的过程中,实际上是修改了系统的用户账号文件 /etc/passwd、/etc/shadow以及/etc/group这三个文件里的信息。

值得注意的是,但是如果有该要删除用户相关的进程正在运行,userdel命令通常不会删除一个用户账号。如果确实必须要删除,可以先终止用户进程,然后再执行userdel命令进行删除。但是userdel命令也提供了一个面对该种情况的参数,即”-f”选项。

如非万不得已,不要使用 -f参数

二. 语法格式及常用选项

语法格式及常用参数

查看帮助:


[root@mufenggrow mufeng]# userdel --help
用法:userdel [选项] 登录

选项:
  -f, --force                   force some actions that would fail otherwise
                                e.g. removal of user still logged in
                                or files, even if not owned by the user
  -h, --help                    显示此帮助信息并推出
  -r, --remove                  删除主目录和邮件池
  -R, --root CHROOT_DIR         chroot 到的目录
  -Z, --selinux-user            为用户删除所有的 SELinux 用户映射

可以看到,语法格式中,需要使用 userdel [选项] 用户名

三. 参考案例

3.1 删除用户但不删除家目录等相关的文件

此时,无需加任何参数,直接使用userdel +name 即可

## 创建一个用户进行测试
[root@mufenggrow mufeng]# useradd mufenggrow
## 不加参数直接删除用户
[root@mufenggrow mufeng]# userdel mufenggrow
[root@mufenggrow mufeng]# find / -name mufenggrow
/var/spool/mail/mufenggrow
/home/mufenggrow
[root@mufenggrow mufeng]# 

通过find命令,我们发现,邮件目录和家目录都没有被删除。

但当我们查看/etc/passwd中与grep相关的用户名时,就发现mufenggrow已经从passwd中被删除了。

[root@mufenggrow mufeng]# grep mufenggrow /etc/passwd

3.2 把用户彻底删除

-r 参数会把所有的用户相关的文件全部删除

测试结果如下:

[root@mufenggrow mufeng]# useradd mufengxiaoyue
[root@mufenggrow mufeng]# userdel -r mufengxiaoyue
[root@mufenggrow mufeng]# find / -name mufengxiaoyue

通过以上测试可以看到,与mufengxiaoyue用户相关的所有目录已经被删除。

3.3 强制删除某个用户

强制删除用户会用到 -f参与,这个参数在很多命令中都表示强制的意思,比如rm -rf
-f参数会出现在什么场景?

比如某个用户是一个服务的执行用户,服务未停止,你直接删用户是不会让你删除的,但加了-f就可以强制删除。

[root@mufenggrow mufeng]# userdel -f bb
[root@mufenggrow mufeng]# find / -name bb
/var/spool/mail/bb
/usr/share/locale/l10n/bb
/home/bb
[root@mufenggrow mufeng]# id bb
id: bb: no such user

我们会发现,使用-f强制删除后,还是会有遗留的目录,但使用id 用户名,这种形式查看的时候,发现用户已经不存在了。所以-f实际上是把passwd 和shadow中的文件里的内容给删除了。

由此可见,能不使用-r 就不用使用,这个-r参数会删除与用户名相关的所有文件和目录。

总结

💕💕💕 以上就是关于usedel的所有内容了,userdel其实还是蛮简单的

常用的一共就两个参数:
-r : 表示删除用户名所有的信息
-f 表示强制删除用户

好啦,这就是今天要分享给大家的全部内容了,我们下期再见!✨ ✨ ✨
🍻🍻🍻如果你喜欢的话,就不要吝惜你的一键三连了~

请添加图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/172265.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux05-进程控制】进程创建、进程等待、进程退出、进程程序替换(附简易shell实现)

前言 本期分享进程控制的内容。 博主水平有限,不足之处望请斧正! 进程的控制主要分为四点: 进程创建进程退出进程等待进程程序替换 进程创建 怎么创建 通过fork创建。 #fork 是什么 创建子进程的函数。(使用已经介绍过&am…

Python基础学习 -- 概念

一、变量python的变量定义起来比较随意,不用定义数据类型a123b"123"系统会自动识别a为数值,b为字符串二、关键字定义变量名字的时候,要避开下面的关键字,但是可以通过大小写区分,as123;#错误定义As123;print…

阿里云服务器ECS

云服务器 ECS云服务器ECS(Elastic Compute Service)是一种简单高效、处理能力可弹性伸缩的计算服务。帮助您构建更稳定、安全的应用,提升运维效率,降低IT成本,使您更专注于核心业务创新。为什么选择云服务器ECS选择云服…

音频如何分割成两段音频?这些实用方法值得收藏

有些时候,我们从网上下载的音频素材可能会出现体积较大、播放时间长等情况,而我们却只需要其中的一小段。这个时候我们就需要借助一些音频分割软件来将重要的音频片段提取出来,从而有助于缩小音频文件的占比以及存储。那么如何如何分割音频呢…

JVM进修之路(一)程序计数器与虚拟机栈

JVM 定义:JVM:Java Virtual Machine,也就是Java运行时所需要的环境(Java二进制字节码运行时所需要的环境) 好处: 1.java代码一次编写,跨平台运行 2.自动内存管理,垃圾回收 3.数组下标越界检查 4…

千锋Node.js学习笔记

千锋Node.js学习笔记 文章目录千锋Node.js学习笔记写在前面1. 认识Node.js2. NVM3. NPM4. NRM5. NPX6. 模块/包与CommonJS7. 常用内置模块1. url2. querystring3. http4. 跨域jsonpcorsmiddleware(http-proxy-middleware)5. 爬虫6. events7. File System…

Mysql常用命令练习(一)

Mysql常用命令练习(一)一、数据库的三层结构二、数据库2.1、创建数据库2.2、查看、删除数据库2.3、备份和恢复数据库三、表3.1、创建表mysql常用的数据类型(列类型)创建表查看表查看表结构练习3.2、修改表修改表名修改表的字符集添加列修改列删除列练习3…

轻量级网络模型ShuffleNet

在学习ShuffleNet内容前需要简单了解卷积神经网络和MobileNet的相关内容,大家可以去看我之前的一篇博客MobileNet发展脉络(V1-V2-V3),🆗,接下来步入正题~卷积神经网络被广泛应用在图像分类、目标检测等视觉…

易盾sdk引起项目的整体耗时问题?

大家好: 我是烤鸭。今年年初的时候,项目接入易盾sdk之后,随着接口调用次数增多(用到易盾sdk的接口),项目整体性能变差。写篇文章做个复盘记录,其实同事已经写过了,我借鉴部分再拓展一些。 问题描述 突然收…

【JavaEE初阶】第五节.多线程 ( 基础篇 ) 线程安全问题(上篇)

目录 文章目录 前言 一、线程安全的概述 1.1 什么是线程安全问题 1.2 存在线程安全问题的实例 二、线程安全问题及其解决办法 2.1 案例分析 2.2 造成线程不安全的原因 2.3 线程加锁操作解决原子性 问题 ; 2.3.1 什么是加锁 2.3.2 使用 synchronized关键字…

爆品跟卖商家必读:2023年快速入局TikTok选品5大关键

TikTok商业进程一直有在发展,开启东南亚小店,美国小店内邀……有吸引了不少外贸工厂和传统跨境电商卖家等玩家入局。2022年这一年,不管是直播带货,短视频带货,还是广告投流,数据都有新的变化。据报道&#…

Word 允许西文在单词中间换行,没用/无效 终极办法

有时在写论文中,英文的调整相当麻烦,为了节约版面,会设置允许西文在单词中间换行。但有时不希望这样,特别是在复制网上英文时,会出现单词分断换行情况,如何解决: 1.一般办法。 在Word选择要调整…

C规范编辑笔记(十)

往期文章: C规范编辑笔记(一) C规范编辑笔记(二) C规范编辑笔记(三) C规范编辑笔记(四) C规范编辑笔记(五) C规范编辑笔记(六) C规范编辑笔记(七) C规范编辑笔记(八) C规范编辑笔记(九) 正文: 又是新的一年,2023年的第一篇没想到隔了这么久…

MyBatis-Plus加密字段查询(密文检索)

MyBatis-Plus数据安全保护(加密解密)解释说明 1.字段加密后,数据库存储的字段内容为十六进制格式的密文2.条件查询时,若不对密文进行处理将无法匹配出想要的结果3.处理方式是借助SQL的AES_DECRYPT函数将密文解密后匹配4.SQL的解密函数只有AES_DECRYPT&am…

Java-流和IO

文章目录流InputStreamFileInputStream常用方法详情代码示例BufferInputStream常用方法详情代码示例OutputStreamFileOutputStream常用方法详情代码示例BufferedOutputStream常用方法详情代码示例ReadWriteJava的java.io库提供了IO接口,IO是以流为基础进行输入输出的…

云原生技能树-docker image 操作-练习篇

从Docker Hub 拉取已有镜像 一个Docker 镜像(image)包含了程序代码和程序运行所依赖的所有环境。 Docker 镜像一般存放在镜像仓库服务(Image Registry)里,默认的镜像仓库服务是Docker Hub。 用户可以制作、构建镜像、将镜像上传到镜像仓库服务,从而可以…

100w人在线的 弹幕 系统,是怎么架构的?

Shopee是东南亚及中国台湾地区的电商平台 。2015年于新加坡成立并设立总部,随后拓展至马来西亚、泰国、中国台湾地区、印度尼西亚、越南及菲律宾共七大市场。 Shopee拥有商品种类,包括电子消费品、家居、美容保健、母婴、服饰及健身器材等。 2022年第二…

【STM32学习】GPIO口的八种工作模式

GPIO口的八种工作模式一、参考资料二、施密特触发器1、电路2、电路计算一、参考资料 GPIO原理图详解 强烈建议观看:GPIO为什么这样设计? 施密特触发器—原理 施密特触发器—计算 什么是运放的虚短和虚断? 二、施密特触发器 关于GPIO的原理与…

JavaWeb-JSP

JavaWeb-JSP 1,JSP 概述 JSP(全称:Java Server Pages):Java 服务端页面。是一种动态的网页技术,其中既可以定义 HTML、JS、CSS等静态内容,还可以定义 Java代码的动态内容,也就是 J…

设计模式 (二) 工厂模式 Java

目录 一、案例引出 二、简单工厂模式 二、抽象工厂 工厂设计模式,顾名思义类似一家工厂来制造各种产品,目的在于提高代码的可扩展性。 一、案例引出 通过接口来实现一类产品的功能,如目前有飞机、轮船、汽车这类产品的实体类&#xff0c…