1.创建用户
useradd user1 #创建user1用户,创建user1用户同时会创建一个同名的工作组user1
passwd user1 #设置user1用户密码
userdel -rf user1 #删除user1用户及user1工作组
id user1 #查看用户归属组,cat /etc/passwd | grep user1使用等同
详细:
useradd -u UID:指定 UID,这个 UID 必须是大于等于500,并没有其他用户占用的 UID
useradd -g GID/GROUPNAME:指定默认组,可以是 GID 或者 GROUPNAME,同样也必须真实存在
useradd -G GROUPS:指定额外组
useradd -c COMMENT:指定用户的注释信息
useradd -d PATH:指定用户的家目录
useradd -s SHELL:指定用户的默认 shell,最好是在 /etc/shells 中存在的路径
useradd -s /sbin/nologin:该用户不能登录,还记得我们上面说到的系统用户不能登录吧?我们可以看到系统用户的 shell 字段也是 /sbin/nologin
echo $SHELL :查看当前用户的 shell 类型
useradd -M USERNAME:创建用户但不创建家目录
useradd -mk USERNAME:创建用户的同时创建家目录,并复制 /etc/skel 中的内容到家目录中。关于 /etc/skel 目录会在下一篇 Linux 权限管理中再次讲解。
如果用户没有家目录,那么不能切换到该用户
2.删除用户
userdel user1:删除用户
userdel -r user1:删除用户的同时删除用户家目录
3.创建工作组
groupadd usergroup #创建usergruop工作组
groupdel usergroup #删除usergruop工作组
cat /etc/group | grep usergroup #查看工作组添加了哪些用户
详细:
基本用法和 useradd 相似,这里列出需要注意的点
usermod -G GROUPS USERNAME:改变用户的附加组,会完全替换原有的附加组
usermod -G -a GROUPS USERNAME:在原有附加组的基础上追加附加组
usermod -d PATH USERNAME:修改家目录。修改后原先家目录中的文件不能访问了,因为在当前的家目录中并不存在这些文件。
usermod -l NEWNAME USERNAME:改变用户名
usermod -e USERNAME:指定该用户的过期时间
usermod -L USERNAME:锁定用户
usermod -U USERNAME:解锁用户
4.删除组和修改组
groupdel GROUPNAME
groupmod -g NEWGID GROUPNAME:修改GID
groupmod -n NEWGROUPNAME GROUPNAME:修改组名
5.把user1拉进usergroup工作组
usermod -G usergruop user1 #离开原来的用户组,直接添加进usergroup组 (user1默认组会改变)
usermod -a -G usergroup user1 #不离开原来的用户组,直接添加进usergroup组 (user1默认组不会该变)
6./etc/passwd 中的字段分别表示如下信息:
ACCOUNT:用户名
PASSWORD:密码占位符
UID:用户ID
GID:用户组ID
COMMAND:注释信息
HOME DIR:用户家目录
SHELL:用户的默认 shell
https://www.linuxidc.com/Linux/2016-10/136251.htm
https://www.cnblogs.com/zoulongbin/p/5783880.html