创建新用户
使用 useradd
命令
sudo useradd -m username # -m 自动创建用户家目录
- 关键参数:
-c "注释"
:添加用户描述(如全名)-s /bin/bash
:指定默认Shell-d /path/to/home
:自定义家目录路径-e YYYY-MM-DD
:设置账户过期时间
设置用户密码
sudo passwd username # 按提示输入密码
安全提示:密码需8位以上,包含大小写字母、数字和符号。
使用 adduser
工具(交互式)
部分系统(如Debian/Ubuntu)提供更友好的交互式命令:
sudo adduser username # 按提示输入密码及信息
创建用户组
新建用户组
sudo groupadd groupname # 创建新组
创建用户时直接分配组
sudo useradd -m -G group1,group2 username # -G 指定附加组 sudo useradd -g primarygroup username # -g 指定主组
将用户加入已有组
修改用户的附加组
sudo usermod -aG groupname username # -aG 追加附加组(保留原组)
注意:省略
-a
会覆盖原有附加组!
修改用户的主组
sudo usermod -g newmaingroup username
用户与组管理实例
场景:创建用户 john
,主组为 developers
,附加组为 docker
和 www-data
sudo groupadd developers # 创建主组 sudo useradd -m -g developers -G docker,www-data john # 创建用户并分组 sudo passwd john # 设置密码
查看用户与组信息
-
检查用户所属组:
id username # 显示用户UID、GID及所属组
输出示例:
uid=1001(john) gid=1002(developers) groups=1002(developers),1003(docker),1004(www-data)
-
查看所有用户:
cat /etc/passwd # 用户账户信息
-
查看所有组:
cat /etc/group # 用户组信息
关键配置文件
文件路径 | 作用 |
---|---|
/etc/passwd |
存储用户账户信息(不含密码) |
/etc/shadow |
存储加密后的用户密码 |
/etc/group |
存储用户组信息 |
/etc/gshadow |
存储组密码(极少使用) |
注意事项
- 权限分离:普通用户避免使用
root
权限,需通过sudo
授权。 - 组权限继承:用户创建的文件默认属于其主组。
- 删除用户/组:
sudo userdel -r username # -r 删除家目录和邮件 sudo groupdel groupname
最佳实践:生产环境中定期审计用户和组权限(如使用
auditd
工具),避免权限泄露风险。
引用说明: 参考Linux官方文档(man7.org)及以下资料:
- GNU Coreutils手册:
useradd
,usermod
,groupadd
命令详解 - Linux Filesystem Hierarchy Standard (FHS) 3.0
- Red Hat Enterprise Linux 系统管理指南(第8版)
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9122.html