查看系统用户、用户组
cat /etc/passwd #系统所有用户
cat /etc/group #系统所有用户组
groups #当前用户所在组
id #当前用户uid、gid信息
增加系统用户
useradd vs adduser:useradd是系统自带;adduser是一个perl脚本,底层使用useradd。
使用useradd兼容性更好
# 仅仅增加用户user1
useradd user1
# 增加用户user2并创建home目录
useradd user2 -m
# 增加用户user3
# -m 创建home目录
# -groot 将group设置为root
# -p`openssl passwd -1` 设置密码(需输入)
useradd user3 -m -groot -p`openssl passwd -1`
修改系统用户
- 修改用户密码
passwd foo # 修改用户foo的密码
- 修改用户名
usermod foo -l newfoo # 仅仅修改用户名
# 修改用户foo
# -l newfoo 将用户名foo修改为newfoo
# -d /home/newfoo 将foo的home目录制定为/home/newfoo
# -m 必须和-d一起使用,将原来home目录中的文件移入-d指定的目录中
usermod foo -l newfoo -d /home/newfoo -m
usermod foo -u 2000 # 将用户foo的uid修改为2000
- 修改用户组
usermod foo -G root # 将用户foo的副组(supplementary group)设为root组,多个可用逗号分隔
usermod foo -aG root # 往用户的副组中增加root组
usermod foo -g root # 将用户的主组(primary group)设置为root组
删除系统用户
userdel foo # 仅仅删除用户foo
userdel foo -r # 删除用户foo并将其home目录也删除
增加用户组
groupadd foo # 增加组foo
groupadd foo -g 2000 # 增加组foo并将gid置为2000
删除用户组
groupdel foo # 删除组foo
修改用户组
groupmod foo -n newfoo # 将组foo改名为newfoo
groupmod foo -g 2001 # 将组foo的gid改为2001
切换主组
如果用户有多个组的话可以临时切换主组
newgrp root # 临时将当前用户的主组切换为root