← 返回博客 学习笔记 Linux RHCE RHCE:用户和用户组的管理 2026年07月04日 · 37 阅读 ## 用户和用户组的概念 ### Linux用户分类: - 超级管理员:root用户,拥有最大的权限,可以对系统进行任何操作 - 系统用户:为服务而生,专门运行服务的 - 普通用户:root用户手动创建的 为什么要用户? 1. 登录系统,操作系统的资源,执行命令 2. 每个用户都能管理应用服务,保证安全每个用户都可以运行自己的服务 每个用户都有一个UID,一个用户对应一个UID - UID:用户标识符,类似个人身份证 - 系统使用用户通过UID识别 - 个人识别用户通过用户名 用户的分类通过UID范围进行分类 - 超级管理员的uid是0,root的uid是0,所以root用户是超级管理员 - 系统用户范围 0-999,root是一种特殊的系统用户 - 普通用户的UID范围是1000<x<60000 - 可以通过修改`/etc/login.defs`文件,修改UID上限 ### 用户和UID对应关系的文件(用户和UID的对应关系) ``` /etc/passwd root:x:0:0:root:/root:/bin/bash ``` - root:用户名 - x:密码占位符(表示此用户登录是否需要验证密码,有x表示登陆系统需要验证密码,密码保存在`/etc/shadow`) - 0:用户UID - 0:组GID - root:描述信息(只有普通用户在可视化界面可以体现) - /root:用户的Home目录,用户的默认所在目录 - /bin/bash:用户的登录shell,指的是用户登录系统运行的第一个程序,称之为shell,会给用户分配一个和系统交互的shell(/sbin/nologin为非登录shell,不允许用户登录) **误区:用户不能登录不代表不能使用** **使用 `su - [用户名] -s /bin/bash` 可以临时登录不允许登录的用户** ## 用户组 每一个用户都会属于一个用户组;用户组的作用是为了更好的管理用户,每一个用户组里可以有多个用户 ### 用户组的分类: 私有组(属组):在创建用户的时候会同时创建一个同名的私有组,用户必须属于一个私有组,有且只有一个 公共组(附加组):用户可以加入其他的用户组, ### 用户组和GID的对应关系(用户组信息) ``` /etc/group root:x:0: ``` root:组名 x:密码占位(有X表示登录组需要密码) 0:表示组id :后表示用户组的成员 使用 `newgrp [组名]` 可以临时登录到该组获取到该组的权限 将用户名写入 `/etc/group` 中的某个组可以永久加入该组(下半部分应该会有更好的方法) ## 用户和用户组的管理 ### 用户密码文件 ``` /etc/shadow user:$6¥asdasxc56468s46a5x148sa4965dsa84d684:19707:0:99999:7:2:20437: ``` - uers:用户名 - `$6$`as....:加密后的密码 - !! * 表示该用户没有密码 - `$6$` 加密类型 6 sha512 5 sha256 - 19707:上一次修改密码的时间,从1970年1月1日之后的19707天 - 0:代表密码的最短期限(如果是0代表无限制) - 99999:代表密码的最长期限(如果99999代表无限期) - 7:代表密码过期前的警告时间 - 2:账号的锁定日期,代表密码过期后的两天锁定账户(-1表示无限制)原理就是在加密后的密码前面加! - 20437:账号的失效日期,从1970年1月1日之后的19707天 使用 `openssl passwd -6/-5/-1 密码` 对密码进行加密 使用 `date -d '1970-01-01' 19707days +%F` 可以計算日期 `change` 修改密码期限 - `-m`密码最短期限 - `-M`密码最长期限 - -`W`密码警告期限 - `-E`账号失效日期 强制用户登陆时修改密码 `chage -d 0 [用户名]` 修改默认密码策略:`/etc/login.defs` ### 用户管理 #### 创建用户 `useradd [用户名]` 每次创建用户,用的UID=/etc/passwd最大数+1 `-u`指定UID `-g`指定私有组 `-c ""` 指定描述信息 `-d`指定home目录(不要提前创建用户home目录) -`s`指定登录shell ``` useradd -u [UID] -g [组id] -c “[描述问价]” -d [指定目录] -s [指定登录shell] [用户名] useradd -u 1006 -g 1002 -c “demotest” -d /user -s /sbin/nologin users ``` #### 删除用户 `userdel [用户名]` 创建用户的时候,会同时创建在/home创建一个同名的目录作为用户的home目录。并且在/var/spool/mail下面也会创建一个同名的文件作为用的邮箱文件 `userdel -r` 完全的删除用户 #### 修改用户 `usermod` 修改已经存在的用户信息 `-c` 修改描述信息 `-u` UID `-aG`追加附加组 `-g`改私有组 `-G`改附加組 `-d`指定Home目录 `-md`移动家目录 `-s`指定登录shell `-l`修改用户名 `-L`锁定用户 `-U`解锁用户 `-o`允许重复使用UID 用法同创建用户 *** ## 组管理 `groupadd` 创建组 `-g` 指定GID `-o`允许重复使用GID `groupdel`删除组 用户的私有组无法删除 `groupmod`修改组信息 `-n`修改组名 `-g`修改GID `-o`允许重复使用GID `gpasswd` 默认为修改组密码/管理组的成员 `-d` 在某个组中删除某个用户 `-a`在某个组中添加某个用户 `-A`给组指定一个管理员 `newgrp`临时登录到某个组 `groupmems`管理組的成員(root用戶可用) `-g`指定租名(必须) `-l`列出成员 `-a`添加组员 `-d`删除成员 `-p`删除某个组的所有成员 组文件 `/etc/group` `/etc/gshadow` ← 上一篇 RHCE:Linux文件系统结构和常用命令 下一篇 → RHCE:文件权限管理