1. Linux用户管理核心命令解析
作为Linux系统管理员,用户管理是最基础的日常工作之一。掌握用户管理命令不仅能提高工作效率,还能确保系统安全。本文将详细介绍Linux系统中用户管理相关的核心命令及其实际应用场景。
注意:本文所有命令均在CentOS 7/8和Ubuntu 20.04 LTS环境下测试通过,不同发行版可能存在细微差异。
1.1 用户账户管理命令
useradd命令详解
useradd是创建新用户的基础命令,其完整语法为:
bash复制useradd [选项] 用户名
常用选项组合示例:
bash复制useradd -m -d /home/username -s /bin/bash -G wheel,developers username
这条命令实现了:
-m:自动创建用户家目录-d:指定家目录路径-s:设置默认shell-G:将用户添加到附加组
实际工作中,我习惯使用以下组合创建开发人员账户:
bash复制useradd -m -s /bin/bash -G developers -c "Developer Account" devuser
避坑提示:Ubuntu系统建议使用adduser命令而非useradd,因为adduser会交互式引导设置密码并创建完整用户环境。
usermod命令实战
usermod用于修改现有用户属性,常见场景包括:
- 修改用户主组:
bash复制usermod -g developers username
- 追加用户到附加组(保留原有组):
bash复制usermod -aG sudo username
- 修改用户家目录(需手动移动文件):
bash复制usermod -d /new/home/dir -m username
userdel删除用户
安全删除用户的正确姿势:
bash复制userdel -r username
-r参数会同时删除用户家目录和邮件池,但生产环境中建议先备份再删除。
1.2 用户组管理命令
groupadd创建组
创建开发组并指定GID:
bash复制groupadd -g 1005 developers
gpasswd组管理
- 设置组密码:
bash复制gpasswd developers
- 添加用户到组:
bash复制gpasswd -a user1 developers
- 从组移除用户:
bash复制gpasswd -d user1 developers
组信息查看
查看用户所属组:
bash复制groups username
查看组内成员:
bash复制getent group developers
1.3 密码管理命令
passwd基础用法
- 修改自身密码:
ba复制
