【Linux实践室】Linux用户管理实战指南:用户密码管理操作详解

🌈个人主页:聆风吟_
🔥系列专栏:Linux实践室、网络奇遇记
🔖少年有梦不应止于心动,更要付诸行动。
文章目录
- 一. ⛳️任务描述
- 二. ⛳️相关知识
- 2.1 🔔用户密码存放地及方式
- 2.2 🔔使用passwd命令修改用户密码
- 2.2.1 知识点讲解
- 2.2.2 案例演示
- 2.3 🔔使用chpasswd命令修改用户密码
- 2.3.1 知识点讲解
- 2.3.2 案例演示
- 三. ⛳️编程要求
- 四. ⛳️编程解答
- 📝全文总结
一. ⛳️任务描述
恭喜你已经完成了前面的内容,现在你已经学会了如何创建一个新用户和删除一个已经存在的用户,接下来,我们一起学习为新创建的用户设置登录密码。
本关的任务是新创建一个用户,并设置登录密码。
二. ⛳️相关知识
为了完成本节任务,你需要掌握如下知识:
Linux中用户登录密码存放地以及方式- 怎么使用
passwd命令修改用户密码- 怎么使用
chpasswd命令修改用户密码
2.1 🔔用户密码存放地及方式
Linux中用户的登录密码是存放在/etc/shadow文件中,/etc/shadow文件中存放的是加密过后的密码,所以在/etc/shadow文件中看到的密码是加密过后的密文。
看下笔者的电脑中/etc/shadow文件存放的内容格式。
可以看到第一个冒号前是用户名,用户名是以明文的方式存放。
在第一个冒号和第二个冒号之间存放的是加密过后的密码,密码是以密文的方式存放,其中密文是由用户密码和其它信息加密后组成的,这里不做详细讲解,我们只需要知道如果第一个冒号和第二个冒号之间是*或者!或者空,则表示该用户没有密码,否则,则表示该用户是有密码。
例如:用户名fzm是存在密码,而mysql是不存在密码的。
2.2 🔔使用passwd命令修改用户密码
2.2.1 知识点讲解
命令格式:
passwd [命令参数] 参数
常见命令参数:
| 参数 | 说明 |
|---|---|
| -d | 删除密码 |
| -l | 停止账号使用 |
| -S | 显示密码信息 |
passwd必须以root权限才能执行,如果是普通用户想执行passwd时,需要在命令前加sudo命令来提升权限为root权限。
2.2.2 案例演示
1 . 使用useradd命令来新创建一个用户,使用passwd命令来设置登录密码。
使用useradd命令创建一个新用户(test),此时test用户是没有密码的,所以使用tail -n 1 /etc/shadow命令查看/etc/shadow文件的最后一行可以看出test用户密码部分为!。
使用passwd命令为test用户设置密码时,可以看到需要输入两次密码,目的是为了确保两次输入的密码一致。当设置完密码后,可以看到/etc/shadow文件中test用户的密码部分已经为加密过后的密文。
2 . 使用passwd命令来清除用户的密码。

使用passwd命令清除用户test的登录密码,使用tail -n 1 /etc/shadow命令查看/etc/shadow文件的最后一行可以看出test用户密码部分为空,此时test用户是没有密码的。
2.3 🔔使用chpasswd命令修改用户密码
2.3.1 知识点讲解
chpasswd命令通常是用于批量修改用户密码,从标准输入批量读取成对的用户名和密码,其中输入的用户名和密码的格式为用户名:密码。
例如要批量更新用户密码,将用户名和密码写入到一个文件中,格式如下所示:

然后执行执行如下命令来更新密码:
sudo chpasswd < batch.txt
<符号表示输入重定向,接下来的实训中我们会详细的介绍。
命令格式:
chpasswd [命令参数] 参数
常见命令参数:
| 参数 | 说明 |
|---|---|
| -e | 输入的密码是加密后的密文 |
| -h | 显示帮助信息并退出 |
chpasswd必须以root权限才能执行,如果是普通用户执行时,需要在命令前加sudo命令来提升权限为root权限。
2.3.2 案例演示
1 . 使用chpasswd命令来更新用户登录密码。

chpasswd是从键盘不断的读入指令,我们可以使用Ctrl+D组合键来结束键盘输入。
三. ⛳️编程要求
本节的任务具体如下:
- 新创建一个用户newUser;
- 使用passwd命令为用户newUser设置登录密码;
四. ⛳️编程解答
#!/bin/bash#创建newUser新用户
#***********begin*************#
useradd newUser
#************end**************##在符号<<前输入设置用户密码的命令(命令与<< EOF保持在同一行), 密码输入在下一行,确认密码输入在下下行
#例如:
#command << EOF
#password
#password
#EOF
#***********begin*************#
passwd newUser << EOF
123
123
EOF
#************end**************#
📝全文总结
本文主要讲解 Linux 的用户密码管理的两个命令:
- passwd:修改用户密码
- chpasswd:批量修改用户密码。
今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!

相关文章:
【Linux实践室】Linux用户管理实战指南:用户密码管理操作详解
🌈个人主页:聆风吟_ 🔥系列专栏:Linux实践室、网络奇遇记 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 一. ⛳️任务描述二. ⛳️相关知识2.1 🔔用户密码存放地及方式2.2 🔔使用…...
UE5学习日记——蓝图节点前缀关键字整理
一、起因 节点如海,中英文翻译的时候还是有差别的,比如: 同一个中文,可能在英文里完全不同,连出现位置可能都不一样 附加 Attach Actor To Component(将Actor附加到组件)Append Array…...
浅析机器学习的常用方法
引言: 机器学习(Machine Learning,ML)是一种以计算机程序为基础,在不需要明确编程的情况下,对数据进行分析和处理的人工智能技术。与传统的计算机编程相比,机器学习的区别在于它通过数据建立模…...
大数据开发(日志离线分析项目)
大数据开发(日志离线分析项目) 一、项目需求1、使用jqueryecharts的方式调用程序后台提供的rest api接口,获取json数据,然后通过jquerycss的方式进行数据展示。工作流程如下:2、七大角度1、用户基本信息分析模块2、浏览…...
PostgreSQL技术大讲堂 - 第48讲:PG高可用实现keepalived
PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。 第48讲&#…...
【若依 SpringBoot 前后端分离版】修改加密传输后密码错误的解决方法(附排错过程)
目录 排错过程 报错信息 SysLoginController SysLoginService(问题核心) 太长不看版:解决方法 文章传送门:若依(RuoYi)SpringBoot框架密码加密传输(前后分离板)_若依密码加密方式-CSDN博客文章浏览阅读1.5w次,点赞…...
发送请求- header配置
请求头里是客户端的要求,把你的诉求告诉服务端,服务端按照你的要求返回数据 , 请求header需要严格全配置,把请求header全部传入,不能频繁访问,让后端知道它是正常请求 一般只配置User-Agent和Content Typ…...
C语言重难知识点
C语言重难知识点 if(a=1) 为真函数指针的调用(int)2.9 = 2逗号运算符,最右边表达式值作为整个逗号表达式的值。文件操作if(a=1) 为真 int a=0,b=0,c=0; if(a...
jMeter学习
一. JMeter介绍 1. 什么是JMeter? Apache JMeter™ 应用程序是开源软件,一个 100% 纯 Java 应用程序,旨在加载测试功能行为和测量性能 。它最初是为测试 Web 应用程序而设计的,但后来扩展到其他测试功能。 2. JMeter能做啥&#x…...
Nodejs运行vue项目时,报错:Error: error:0308010C:digital envelope routines::unsupported
前端项目使用( npm run dev ) 运行vue项目时,出现错误:Error: error:0308010C:digital envelope routines::unsupported 经过探索,发现问题所在,主要是nodeJs V17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制&#…...
华为汽车图谱
极狐 极狐(ARCFOX)是由北汽、华为、戴姆勒、麦格纳等联合打造。总部位于北京蓝谷。 问界 华为与赛力斯(东风小康)合作的成果。 阿维塔 阿维塔(AVATR)是由长安汽车、华为、宁德时代三方联合打造。公司总部位…...
鸿蒙操作系统-初识
HarmonyOS-初识 简述安装配置hello world1.创建项目2.目录解释3.构建页面4.真机运行 应用程序包共享包HARHSP 快速修复包 官方文档请参考:HarmonyOS 简述 1.定义:HarmonyOS是分布式操作系统,它旨在为不同类型的智能设备提供统一的操作系统&a…...
【ZZULIOJ】1003: 两个整数的四则运算(Java)
题目描述 输入两个整数num1和num2,请你设计一个程序,计算并输出它们的和、差、积、整数商及余数。 输入 输入只有两个正整数num1、num2。 输出 输出占一行,包括两个数的和、差、积、商及余数,数据之间用一个空格隔开。 样例…...
聊聊芯片原厂
芯片原厂是芯片的生产商,他们制造和设计芯片,并拥有产品的所有权原厂这个词是为了区分芯片代理商(厂)而创造的。 每一家芯片制造商都会通过自己忠诚的芯片代理商(厂)来销售自己的芯片,代理商(厂)也会打着芯片制造商的旗号来销售芯片,因此有时候为了强调自己的正统地…...
百人一岗,Android开发者的困境。。。。。
前言 在当前的Android开发领域,竞争的激烈程度已经达到了前所未有的水平,几乎到了100个开发者竞争1个岗位的地步。 这种“内卷”现象的背后,是技术的快速发展和市场对Android开发者技能要求的不断提升。随着移动应用的普及和多样化…...
若依分离版 —引入echart连接Springboot后端
1. vue引入echart (1)首先安装ECharts库。可以通过npm npm install echarts --save (2)在vue页面中添加一个容器元素来显示图表 <el-card class"mt20"><div id"ha" ref"main"><…...
Halcon深度学习项目实战
Halcon在机器视觉中的价值主要体现在提供高效、可扩展、灵活的机器视觉解决方案,帮助用户解决各种复杂的机器视觉问题,提高生产效率和产品质量。 缩短产品上市时间 Halcon的灵活架构使其能够快速开发出任何类型的机器视觉应用。其全球通用的集成开发环…...
子类中的方法去调用父类中的方法有几种形式?原生django如何向响应头写入数据
1 子类中的方法去调用父类中的方法有几种形式 2 原生django如何向响应头写入数据 1 子类中的方法去调用父类中的方法有几种形式? class Animal:def eat(self):print(self.name, 在吃饭)class Dog(Animal):def __init__(self, name):self.name namedef test(self):#…...
数据安全治理框架构建
一、引言 在数字化时代,数据已成为企业和社会发展的重要驱动力。然而,随着数据量的激增和数据应用场景的扩展,数据安全风险也日益凸显。数据安全治理作为确保数据安全、合规使用的关键手段,受到了广泛的关注。本文旨在探讨数据安…...
深度学习十大算法之图神经网络(GNN)
一、图神经网络的基础 图的基本概念 图是数学中的一个基本概念,用于表示事物间复杂的关系。在图论中,图通常被定义为一组节点(或称为顶点)以及连接这些节点的边。每个边可以有方向,称为有向边,或者没有方向…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...
