Linux 用户和组管理完整指南(中英文参数对照)

在 Linux 系统中,理解命令参数的中英文对照有助于记忆和正确使用。本文将详细介绍用户和组管理的完整操作,包含所有常用参数的中英文完整解释。

1. 用户管理操作

1.1 创建用户 (useradd)

bash 复制代码
# 完整创建示例
sudo useradd -m -s /bin/bash -c "Alice User" -d /home/alice alice

# 参数详解(中英文对照):
# -m, --create-home: 自动创建用户主目录 | Create the user's home directory
# -s, --shell SHELL: 指定登录shell | Login shell for the new user
# -c, --comment COMMENT: 用户备注信息(全名、电话等)| GECOS field (full name, phone, etc.)
# -d, --home-dir HOME_DIR: 指定主目录路径 | Home directory for the new user
# alice: 用户名 | username

1.2 修改用户属性 (usermod)

bash 复制代码
# 修改用户shell
sudo usermod -s /bin/zsh alice

# 修改用户主目录(并移动文件)
sudo usermod -m -d /home/new_alice alice

# 锁定用户账户
sudo usermod -L alice

# 解锁用户账户
sudo usermod -U alice

# 将用户添加到附加组
sudo usermod -aG developers alice

# 参数详解(中英文对照):
# -s, --shell SHELL: 新登录shell | New login shell for the user
# -m, --move-home: 移动主目录到新位置 | Move home directory to new location
# -d, --home HOME_DIR: 新主目录路径 | New home directory
# -L, --lock: 锁定用户账户 | Lock the user account
# -U, --unlock: 解锁用户账户 | Unlock the user account
# -a, --append: 追加用户到组(不移除原有组)| Append the user to the supplemental groups
# -G, --groups GROUPS: 附加组列表 | List of supplementary groups

1.3 删除用户 (userdel)

bash 复制代码
# 删除用户但保留主目录
sudo userdel alice

# 完全删除用户(包括主目录和邮件)
sudo userdel -r alice

# 参数详解(中英文对照):
# -r, --remove: 递归删除主目录和邮件文件 | Remove home directory and mail spool

2. 组管理操作

2.1 创建组 (groupadd)

bash 复制代码
# 创建普通组
sudo groupadd developers

# 创建系统组
sudo groupadd -r systemgroup

# 指定GID创建组
sudo groupadd -g 1005 developers

# 参数详解(中英文对照):
# -r, --system: 创建系统组(GID < 1000)| Create a system group (GID < 1000)
# -g, --gid GID: 强制使用指定GID | Force use the specified GID

2.2 修改组属性 (groupmod)

bash 复制代码
# 修改组名
sudo groupmod -n devteam developers

# 修改GID
sudo groupmod -g 1006 devteam

# 参数详解(中英文对照):
# -n, --new-name NEW_GROUP: 新组名 | New name of the group
# -g, --gid GID: 新组ID | New GID for the group

2.3 删除组 (groupdel)

bash 复制代码
# 删除组
sudo groupdel devteam

# 注意:如果组是用户的主组,需要先修改用户主组才能删除

3. 密码和账户策略管理

3.1 密码管理 (passwd)

bash 复制代码
# 修改用户密码
sudo passwd alice

# 锁定密码(禁止登录)
sudo passwd -l alice

# 解锁密码
sudo passwd -u alice

# 参数详解(中英文对照):
# -l, --lock: 锁定账户密码 | Lock the password of the named account
# -u, --unlock: 解锁账户密码 | Unlock the password of the named account

3.2 密码策略 (chage)

bash 复制代码
# 设置密码90天后过期
sudo chage -M 90 alice

# 强制用户下次登录修改密码
sudo chage -d 0 alice

# 查看密码信息
sudo chage -l alice

# 参数详解(中英文对照):
# -M, --maxdays MAX_DAYS: 密码最大有效天数 | Maximum number of days a password is valid
# -d, --lastday LAST_DAY: 设置最后密码修改日期(0=强制修改)| Set last password change date (0 = force change)
# -l, --list: 显示账户老化信息 | Show account aging information

4. 文件权限管理

4.1 修改所有权 (chown)

bash 复制代码
# 修改文件所有者和组
sudo chown alice:developers filename

# 递归修改目录所有权
sudo chown -R alice:developers /project/

# 参数详解(中英文对照):
# -R, --recursive: 递归操作文件和目录 | Operate on files and directories recursively

4.2 修改权限 (chmod)

bash 复制代码
# 设置目录权限:所有者rwx,组r-x,其他无权限
sudo chmod 750 /project/

# 设置SUID位(执行时以所有者身份运行)
sudo chmod u+s /usr/bin/special_command

# 参数详解(数字权限中英文):
# 7 = rwx (读、写、执行 | read, write, execute)
# 5 = r-x (读、执行 | read, execute)
# 0 = --- (无权限 | no permissions)
# u+s: 设置用户ID位 | Set User ID bit

5. 实用组合操作示例

5.1 开发团队完整配置

bash 复制代码
# 1. 创建开发组
sudo groupadd -g 2000 developers

# 2. 创建用户并加入组
sudo useradd -m -s /bin/bash -G developers -c "Developer Alice" alice
sudo useradd -m -s /bin/bash -G developers -c "Developer Bob" bob

# 3. 设置密码
sudo passwd alice
sudo passwd bob

# 4. 配置共享目录
sudo mkdir /shared
sudo chown root:developers /shared
sudo chmod 2775 /shared  # 2=SGID, 775=rwxrwxr-x

# 5. 验证配置
ls -ld /shared
groups alice
groups bob

5.2 用户离职清理流程

bash 复制代码
# 1. 锁定用户账户
sudo usermod -L alice

# 2. 备份用户数据
sudo tar -czf alice_backup.tar.gz /home/alice

# 3. 删除用户
sudo userdel -r alice

# 4. 从相关组中移除
sudo gpasswd -d alice developers

6. 常用信息查看命令

6.1 用户和组信息

bash 复制代码
# 查看用户详细信息
finger alice
getent passwd alice

# 查看组信息
getent group developers

# 查看当前登录用户
who
w

6.2 安全审计命令

bash 复制代码
# 查看空密码用户
sudo awk -F: '($2 == "") {print $1}' /etc/shadow

# 查看sudo权限用户
sudo grep -Po '^sudo:\K.*$' /etc/group

# 检查最近登录记录
last
lastlog

总结

本文详细介绍了 Linux 用户和组管理的完整流程,包括创建、修改、删除以及权限配置等操作。关键要点如下:

1. 用户管理最佳实践

  • 创建用户时应使用 -m 参数自动创建主目录
  • 使用 -s 参数指定合适的登录 shell
  • 修改用户组权限时务必使用 -aG 避免移除原有权限

2. 安全配置建议

  • 实施密码策略,定期强制修改密码
  • 为不同团队创建独立的组和权限
  • 使用 SSH 密钥认证替代密码登录
  • 定期审计用户权限和登录状态

3. 数据保护措施

  • 删除用户前务必备份重要数据
  • 设置适当的文件权限和所有权
  • 对敏感目录启用 SGID 位确保文件继承正确组权限

4. 运维管理技巧

  • 使用完整参数名称编写脚本提高可读性
  • 建立标准的用户入职和离职流程
  • 定期检查系统日志和登录记录

通过系统化的用户和组管理,可以确保 Linux 系统的安全性和可维护性,同时提高团队协作效率。

相关推荐
S-码农2 小时前
Linux进程通讯——共享内存
linux
EmbedLinX2 小时前
嵌入式Linux之U-Boot
linux·服务器·笔记·学习
程序设计实验室2 小时前
从挖矿木马入侵到 Docker Rootless 加固,我的服务器安全复盘
linux·docker
雷电法拉珑2 小时前
财务数据批量采集
linux·前端·python
fjh19973 小时前
使用caddy签发ip证书
运维·服务器
Roc.Chang4 小时前
Vite 启动报错:listen EACCES: permission denied 0.0.0.0:80 解决方案
linux·前端·vue·vite
暴力求解4 小时前
Linux进程(六)命令行参数
linux·运维·服务器
我怎么又饿了呀4 小时前
Linux 下 的Vim/Vi 操作指南
linux·运维·vim
野犬寒鸦5 小时前
深入解析HashMap核心机制(底层数据结构及扩容机制详解剖析)
java·服务器·开发语言·数据库·后端·面试