一文吃透 Linux 用户 / 用户组:passwd/group+useradd 全套命令

发布时间:2026/7/19 18:42:08
一文吃透 Linux 用户 / 用户组:passwd/group+useradd 全套命令 Linux 用户和组管理详解摘要本文详细介绍了Linux系统中的用户和组管理机制。首先解释了用户root、系统用户、普通用户和用户组主组、附加组的基本概念并解析了核心配置文件/etc/passwd和/etc/group的结构与含义。接着系统介绍了本地用户管理的常用命令包括查看登录用户的whoami、who、w、users以及用户增删改的useradd、usermod、userdel命令及其常用参数和实操示例。最后总结了Linux用户权限管理的核心要点为系统管理员和开发者提供清晰的实践指导。前言Linux 是支持多用户同时登录使用的系统为了区分每个用户的权限、隔离文件就有了用户和用户组。一、用户和用户组基础介绍1. 用户介绍Linux 里分 3 种用户root 超级管理员UID 固定 0系统最高权限可执行任何操作。系统内置用户UID 1~999供软件服务使用mysql、nginx通常禁止登录系统。普通用户UID ≥1000由管理员手动创建用来日常登录权限有限无权修改系统关键文件。2. /etc/passwd 用户信息文件存放系统所有用户基础信息所有用户均可读取只有 root 能改。查看文件# 查看全部用户 cat /etc/passwdroot:x:0:0:root:/root:/bin/bashroot用户名x密码占位符真正加密密码存在 /etc/shadow0UID 用户编号0GID 默认主组编号root备注说明/root用户专属文件夹家目录/bin/bash登录终端/sbin/nologin 通常禁止登录系统3. /etc/group 用户组文件记录所有用户组记录属于该组的用户列表。查看文件# 查看所有组 cat /etc/group # 查看当前用户属于哪些组 groups # 查看指定用户所属组 groups zhangsan一行用:分成 4 段举例docker:x:988:zhangsan,lisidocker组名x组密码占位符988GID 组编号zhangsan,lisi属于该组的用户列表4. 组的两种类型主组初始组新建用户自动生成和用户名同名用户新建文件默认归属这个组一个用户只能有 1 个主组。附加组额外添加的组用于为用户开放额外权限一个用户能加多个附加组。查看用户主组与附加组id zhangsan二、本地用户管理命令1. 查看登录用户命令whoami显示当前登录用户的用户名whoamiwho / wwho简要列出所有当前登录系统的用户whousers最简输出简要列出所有当前登录系统的用户users2. useradd 创建新用户常用参数参数作用-u指定用户 UID-g指定默认主组-G添加多个附加组逗号隔开-m自动生成用户家目录-s指定登录终端/sbin/nologin 通常禁止登录系统-c为用户添加备注信息实操示例# 最简创建用户账户自动生成同名组、家目录 useradd zhangsan # 创建用户lisi指定编号、主组、附加组、备注 useradd -u 1005 -g docker -G wheel -c 运维人员 lisi # 创建通常禁止登录系统的服务账号nginx useradd -s /sbin/nologin nginx # 创建用户后设置登录密码 passwd zhangsan3. usermod 修改已有用户信息用于修改用户 UID、所属组、备注、登录权限等# 给用户zhangsan追加附加组docker usermod -aG docker zhangsan # 修改用户备注 usermod -c 前端开发 zhangsan # 修改用户登录shell禁止登录 usermod -s /sbin/nologin zhangsan4. userdel 删除用户# 仅删除用户账户保留家目录文件 userdel zhangsan # 删除用户同时删除家目录彻底清理 userdel -r zhangsan三、总结/etc/passwd存用户基础信息/etc/group存用户组信息用户分 root、系统用户、普通用户组分主组、附加组查询用户whoami、w、who、users用户增删改核心命令useradd 创建、usermod 修改、userdel 删除。