linux用户群组命令
linux用户群组命令详细介绍
在 Linux 系统中,用户和群组管理是系统管理的基础操作,以下是常用的用户与群组相关命令及说明:
一、用户管理命令
1.
useradd:创建新用户
- 作用:添加新的用户账户。
- 常用选项:
-m:自动创建用户家目录(默认路径为/home/用户名);-d <路径>:指定用户家目录路径(若目录不存在需手动创建);-s <shell路径>:指定用户登录后的默认 Shell(如/bin/bash);-g <主群组名>:指定用户的主群组(需提前存在);-G <附加群组名>:指定用户的附加群组(可多个,用逗号分隔);-u <UID>:指定用户的唯一 ID(未指定时自动分配)。
示例:
bash
/bin/bash dev alice
2.
usermod:修改用户属性
- 作用:修改已存在用户的信息(如家目录、Shell、群组、UID 等)。
- 常用选项(与
useradd类似):-l <新用户名>:修改用户名;-d <新路径>:修改家目录(需配合-m移动原家目录内容);-s <新shell>:修改默认 Shell;-g <新主群组>:修改主群组;-G <新附加群组>:修改附加群组(覆盖原附加群组);-aG <附加群组>:向用户添加新的附加群组(不覆盖原附加群组)。
示例:
bash
alice
3.
userdel:删除用户
- 作用:删除用户账户。
- 常用选项:
-r:删除用户家目录及邮件等关联文件(谨慎使用!)。
示例:
bash
alice
4.
passwd:设置 / 修改用户密码
- 作用:为用户设置或修改密码(root 可修改其他用户密码,普通用户仅能修改自己的)。
- 示例:
bash
bob
5.
id:查看用户 / 群组信息
- 作用:显示用户的 UID、主群组 GID、附加群组 GID 等信息。
- 示例:
bash
alice
6.
su:切换用户
- 作用:切换到其他用户(需输入目标用户密码,除非是 root)。
- 常用选项:
-或-l:以登录模式切换(加载目标用户的环境变量);<用户名>:切换到指定用户(默认切换到 root)。
示例:
bash
-
- bob
7.
sudo:以管理员权限执行命令
- 作用:允许普通用户以 root 权限执行指定命令(需提前在
/etc/sudoers中配置权限)。 - 示例:
bash
update
二、群组管理命令
1.
groupadd:创建新群组
- 作用:添加新的用户群组。
- 常用选项:
-g <GID>:指定群组的唯一 ID(未指定时自动分配)。
示例:
bash
developers
2.
groupmod:修改群组属性
- 作用:修改群组名称或 GID。
- 常用选项:
-n <新群组名>:修改群组名称;-g <新GID>:修改群组 GID。
示例:
bash
dev developers
3.
groupdel:删除群组
- 作用:删除已存在的群组(若群组是某个用户的主群组,则需先删除该用户)。
示例:
bash
dev
4.
gpasswd:管理群组用户
- 作用:添加 / 删除群组中的用户,或设置群组管理员。
- 常用选项:
-a <用户名>:将用户添加到群组;-d <用户名>:从群组中删除用户;-M <用户列表>:设置群组的管理员(逗号分隔)。
示例:
bash
gpasswd alice dev
5.
groups:查看用户所属群组
- 作用:显示当前用户或指定用户所属的所有群组。
示例:
bash
bob
三、相关配置文件
Linux 用户和群组的信息存储在以下文件中:
/etc/passwd:存储用户基本信息(每行格式:用户名:密码占位符:UID:GID:描述:家目录:Shell);/etc/shadow:存储用户密码的加密信息(仅 root 可读写);/etc/group:存储群组基本信息(每行格式:群组名:密码占位符:GID:成员列表);/etc/sudoers:配置用户的 sudo 权限(需用visudo命令编辑,避免语法错误)。
通过这些命令,可以灵活管理 Linux 系统中的用户和群组,满足权限控制、协作开发等需求。