03-linux学习之旅之linux用户与组管理
linux学习之旅之linux用户与组管理一、用户基础1、普通用户普通用户是Linux系统中除了root用户之外的所有用户。它们的权限受到限制只能访问和操作自己被 授权的文件和目录。普通用户的UID通常大于0且每个用户都有一个唯一的UID和用户名。 Centos6的普通用户是从 500的id开始而Centos7|ubuntu之后的普通用户id是从1000开始的。2、管理员用户rootRoot用户是Linux系统中的超级用户拥有对系统的完全控制权。它可以执行系统中的任何命令访问 任何文件以及更改系统配置。在Linux系统中root用户的用户IDUID是0。3、系统用户配置文件/etc/passwd/etc/passwd:存放系统用户信息 格式 用户名占位符【X】用户id【UID】所属组id【gid】用户描述:家目录:默认Shell xyx :x :1000 :1000 :xyx,,, :/home/xyx :/bin/bash4、系统组配置文件/etc/group/etc/group:存放系统组信息 格式 组名占位符【X】组id[gid]组内成员列表 xyx:x :1000 :5、系统用户密码配置文件/etc/shadow/etc/shadow存放系统用户密码信息 格式 用户名:加密的密码::::::: xyx:$y$j9T$sxIaubscairy.OCsbjdasdhuhbJ.1w1zyPRSIkamksfnasfgnaskfbscbaUnn2f9:20636:0:99999:7:::二、组管理命令1、groupadd 创建组-r创建系统组 -g指定GID --help查看详细选项#创建组[rootrockyser ~]# groupadd devops[rootrockyser ~]# groupadd op#创建时指定GID[rootrockyser ~]# groupadd -g 3000 dba#验证是否创建[rootrockyser ~]# tail -3 /etc/groupdevops:x:1001: op:x:1002: dba:x:3000:2、groupmod 修改组#修改组名 -n 后面必须跟新组名[rootrockyser ~]# groupmod -n ops op#修改GID[rootrockyser ~]# groupmod -g 4000 devops[rootrockyser ~]# tail -3 /etc/groupdevops:x:4000: dba:x:3000: ops:x:1002:3、groupdel 删除组#删除组时组内不能有用户以该组为主组[rootrockyser ~]# groupdel ops[rootrockyser ~]# tail -3 /etc/groupnginx:x:991: devops:x:4000: dba:x:3000:4、groups - 查看用户所属组# 查看用户所属组[rootrockyser ~]# groups xyxxyx:xyx wheel[rootrockyser ~]# id xyxuid1000(xyx)gid1000(xyx)组1000(xyx),10(wheel)5、getent - 查看组中的成员# 查看组信息 [rootrockyser ~]# getent group wheel wheel:x:10:xyx三、用户管理命令主组用户的主要组每个用户必须有且只有一个附加组用户额外加入的组可以有0个或多个1、useradd 创建用户#Ubuntu创建用户时必须加-m和-s #创建xyx520用户并创建家目录-m指定shell为/bin/bash -s [rootrockyser ~]# useradd xyx520 -m -s /bin/bash #查看创建情况 [rootrockyser ~]# grep xyx520 /etc/passwd /etc/shadow /etc/group /etc/passwd:xyx520:x:1001:1001::/home/xyx520:/bin/bash /etc/shadow:xyx520:!:20662:0:99999:7::: /etc/group:xyx520:x:1001: #指定UID2000和主组devops不推荐 [rootrockyser ~]# useradd -u 2000 -g devops -m -s /bin/bash xyy [rootrockyser ~]# id xyy uid2000(xyy) gid4000(devops) 组4000(devops) #指定附属组dba,devops [rootrockyser ~]# useradd -m -s /bin/bash -G dba,devops myy [rootrockyser ~]# id myy uid2001(myy) gid2001(myy) 组2001(myy),4000(devops),3000(dba) #创建系统用户无法登陆 [rootrockyser ~]# useradd -r -s /sbin/nologin nginx #指定家目录/opt/nyy [rootrockyser ~]# useradd -m -s /bin/bash -d /opt/nyy nyy [rootrockyser ~]# ls -d /opt/nyy/ /opt/nyy/ [rootrockyser ~]# grep nyy /etc/passwd nyy:x:2002:2002::/opt/nyy:/bin/bash常见选项参数全称作用-r–system创建系统用户UID 1-999无家目录、禁止登录-u–uid指定自定义 UID例-u 1500-g–gid指定主组组必须提前存在-G–groups指定附加组多组逗号分隔-d–home-dir手动指定家目录路径-m–create-home自动创建家目录普通用户默认开启系统用户 - r 默认不创建-s–shell指定登录 shell/bin/bash可登录/sbin/nologin禁止登录2、usermod 修改用户#修改shell [rootrockyser ~]# usermod -s /bin/false xyx520 [rootrockyser ~]# grep xyx520 /etc/passwd xyx520:x:1001:1001::/home/xyx520:/bin/false #添加附加组-a必须加否则会覆盖 [rootrockyser ~]# usermod -aG dba xyx520 [rootrockyser ~]# id xyx520 uid1001(xyx520) gid1001(xyx520) 组1001(xyx520),3000(dba) #修改家目录 [rootrockyser ~]# usermod -d /opt/xyx520 -m xyx520 [rootrockyser ~]# grep xyx520 /etc/passwd xyx520:x:1001:1001::/opt/xyx520:/bin/false #修改密码 [rootrockyser ~]# passwd xyx520 新的密码 无效的密码 密码少于 8 个字符 重新输入新的密码 passwd已成功更新密码 #锁定用户可以观察shadow文件多了一个 [rootrockyser ~]# usermod -L xyx520 [rootrockyser ~]# grep xyx520 /etc/shadow xyx520:!$y$j9T$5YYmAuWoMkvtPxzoNU1W.1$TVJ/HTUKIXrebI6XtPaCUQr2ygD/ITw6piSoN7qlTu4:20662:0:99999:7::: #解开用户 [rootrockyser ~]# usermod -U xyx520 [rootrockyser ~]# grep xyx520 /etc/shadow xyx520:$y$j9T$5YYmAuWoMkvtPxzoNU1W.1$TVJ/HTUKIXrebI6XtPaCUQr2ygD/ITw6piSoN7qlTu4:20662:0:99999:7::: #修改用户名 [rootrockyser ~]# usermod -l xyx530 xyx520 [rootrockyser ~]# id xyx530 uid1001(xyx530) gid1001(xyx520) 组1001(xyx520),3000(dba) #修改UUID [rootrockyser ~]# usermod -u 3000 xyx530 [rootrockyser ~]# id xyx530 uid3000(xyx530) gid1001(xyx520) 组1001(xyx520),3000(dba) [rootrockyser ~]#3、userdel 删除用户[rootrockyser ~]# useradd user1 [rootrockyser ~]# useradd user2 [rootrockyser ~]# tail -2 /etc/passwd user1:x:3001:3001::/home/user1:/bin/bash user2:x:3002:3002::/home/user2:/bin/bash #删除用户user1会保留家目录 [rootrockyser ~]# userdel user1 [rootrockyser ~]# ls /home/ myy user1 user2 xyx xyy [rootrockyser ~]# rm -rf /home/user1 #删除用户user2不好保留家目录推荐-r [rootrockyser ~]# userdel -r user2 [rootrockyser ~]# ls /var/spool/mail/user2 ls: 无法访问 /var/spool/mail/user2: 没有那个文件或目录 [rootrockyser ~]# ls /home/user2 ls: 无法访问 /home/user2: 没有那个文件或目录 [rootrockyser ~]#4、修改密码#交互式 [rootrockyser ~]# passwd xyx530 新的密码 无效的密码 密码少于 8 个字符 重新输入新的密码 passwd已成功更新密码 #非交互式 [rootrockyser ~]# echo xyx530:123 | chpasswd5、rocky与ubuntu目录差异#创建用户 rockyuseradd xyx ubuntuseradd -m -s /bin/bash xyx #加入管理员组 rockyusermod -aG wheel xyx ubuntusermod -aG sudo xyx四、组成员管理gpasswd 组成员管理[rootrockyser ~]# id lyy uid991(lyy) gid990(lyy) 组990(lyy) #添加组dba [rootrockyser ~]# gpasswd -a lyy dba 正在将用户“lyy”加入到“dba”组中 [rootrockyser ~]# id lyy uid991(lyy) gid990(lyy) 组990(lyy),3000(dba) #删除组dba [rootrockyser ~]# gpasswd -d lyy dba 正在将用户“lyy”从“dba”组中删除 [rootrockyser ~]# id lyy uid991(lyy) gid990(lyy) 组990(lyy)五、su与sudo权限委派1、su切换用户#切换用户不切换环境 [rootrockyser ~]# su xyx530 #切换用户和环境推荐 [rootrockyser ~]# su - xyx530 # 切换并执行一条命令 [rootrockyser ~]# su - xyx -c ls -la # 切换为root [rootrockyser ~]# su -2、sudo权限委派普通用户临时获取管理员root权限执行命令不用切换 root 账号更安全。可修改赋予哪些权限更多sudo可查看链接08-linux学习之旅之进阶sudo-CSDN博客

相关新闻

深度解析SysML v2架构设计:下一代系统建模语言的技术演进

深度解析SysML v2架构设计:下一代系统建模语言的技术演进

深度解析SysML v2架构设计:下一代系统建模语言的技术演进 【免费下载链接】SysML-v2-Release The latest incremental release of SysML v2. Start here. 项目地址: https://gitcode.com/gh_mirrors/sy/SysML-v2-Release SysML v2作为对象管理组织&#xff0…

2026/9/29 21:37:45 阅读更多 →
Amphenol LTW RCP5SM-SPG06M-SL7B15线束组件解析及替代方案参考

Amphenol LTW RCP5SM-SPG06M-SL7B15线束组件解析及替代方案参考

在现代工业设备中,连接线束作为设备内部与外部模块之间的重要桥梁,不仅需要满足电气连接需求,还需要具备良好的环境适应能力。尤其是在自动化设备、新能源系统、户外控制终端等应用领域,连接器和线束组件的可靠性直接影响整机运行…

2026/10/5 4:35:30 阅读更多 →
Amphenol LTW RCP-5SAMMM-SLM7B15线束组件解析

Amphenol LTW RCP-5SAMMM-SLM7B15线束组件解析

在工业自动化、户外设备、新能源设备以及智能控制系统中,稳定可靠的连接方案对于设备长期运行具有重要意义。线束组件不仅承担电力传输任务,同时也负责信号连接、数据通信以及复杂环境下的稳定工作。 本文围绕 Amphenol LTW品牌 RCP-5SAMMM-SLM7B15线束组…

2026/9/24 22:06:13 阅读更多 →

最新新闻

池化方法全解析:从经典MaxPool到Strip Pooling的工程选型指南

池化方法全解析:从经典MaxPool到Strip Pooling的工程选型指南

1. 为什么“池化”这个看似简单的操作,值得花一整篇来深挖?池化(Pooling)这个词,在卷积神经网络的入门课里,往往三分钟就讲完:它就是个下采样操作,把特征图变小、降维、抗干扰。但我…

2026/10/5 16:08:40 阅读更多 →
数据科学家 vs 数据工程师:一文说透岗位差异、技能栈与职业选型

数据科学家 vs 数据工程师:一文说透岗位差异、技能栈与职业选型

1. 先搞清楚这两类人每天都在解决什么问题 我面试过不少想转行数据领域的人,也带过好几个应届生,发现一个特别普遍的现象:大家张口闭口“数据科学家”“数据工程师”,但真要追问一句“你投的这个岗位具体干什么”,回答…

2026/10/5 16:08:40 阅读更多 →
pywebview实战指南:用Python和WebView构建轻量桌面应用

pywebview实战指南:用Python和WebView构建轻量桌面应用

用Python做桌面工具这件事,我一直有个执念:界面要好看、交互要流畅,但又不想为了一个小工具硬塞一个Electron外壳进去。直到我认真用了一轮pywebview,才发现自己之前绕了不少弯路——它本质上就是把系统自带的WebView引擎包装成一…

2026/10/5 16:08:39 阅读更多 →
含间隙铰关节机构动力学分析:从MATLAB编程到ADAMS联合验证

含间隙铰关节机构动力学分析:从MATLAB编程到ADAMS联合验证

先聊点实际的。我做含间隙铰关节机构的动力学分析,并不是因为它"时髦",而是被工程问题逼的:某机构样机在高速运转时出现了明显的冲击噪声和异常磨损,可无论怎么调驱动参数,理想铰模型下的ADAMS仿真结果都指向…

2026/10/5 16:08:39 阅读更多 →
原理图级EMC设计实战:电流路径与网络命名的硬核控制

原理图级EMC设计实战:电流路径与网络命名的硬核控制

1. 这不是教科书里的EMC,是焊完第一块PCB后被测试工程师叫去喝茶时才真正看懂的东西“【EMC电磁兼容】02.04——原理图的实战落地细节”这个标题乍看像某本教材的章节编号,但如果你在硬件开发一线干过三年以上,看到“02.04”这串数字心里会下…

2026/10/5 16:08:39 阅读更多 →
Jetson Nano/NX上部署麒麟ARM版向日葵远程控制实战

Jetson Nano/NX上部署麒麟ARM版向日葵远程控制实战

1. 项目概述:为什么在Jetson Nano/NX上跑麒麟ARM版向日葵,不是“能用就行”,而是“必须稳、必须快、必须不掉帧”你手头有一块Jetson Nano或NX开发板,系统刷的是银河麒麟V10 ARM版——这本身就是一个典型的国产化AI边缘计算组合&a…

2026/10/5 16:07:39 阅读更多 →

日新闻

马斯克杀回智能体战场,Grok 4.5万亿参数撑腰,Cursor接手数字白领项目:用TaoToken统一Key跑通多模型Agent工作流

马斯克杀回智能体战场,Grok 4.5万亿参数撑腰,Cursor接手数字白领项目:用TaoToken统一Key跑通多模型Agent工作流

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 0:00:22 阅读更多 →
AI编程工具插件机制详解:plugin.json配置与加载失败排查指南

AI编程工具插件机制详解:plugin.json配置与加载失败排查指南

1. 从“plugins”这个词说起:它到底在解决什么问题如果你最近在折腾 AI 编程工具,尤其是 Cursor、Codex CLI、Claude Code 这类带 CLI 的编辑器或命令行助手,那你大概率绕不开一个词——plugins。这个词本身不新鲜,从浏览器到 IDE…

2026/10/5 0:00:23 阅读更多 →
第26课:OpenClaw|日志审计与问题诊断:把日志链路改到 TaoToken 的排查清单

第26课:OpenClaw|日志审计与问题诊断:把日志链路改到 TaoToken 的排查清单

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 0:00:23 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 5:06:42 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 1:10:22 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/5 3:06:17 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 11:40:45 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 20:14:29 阅读更多 →