用户组操作
添加一个用户组:
语法:groupadd [选项] <组名>
选项有:-g:指定用户组的gid,示例groupadd -g 101 lucas 指定lucas组的gid=101,不写就是自动生成gid-o:一般和-g一起使用,表示可以与已存在的gid相同
添加成功后可以cat /etc/group来查看,一般最后一行就是刚添加的数据
删除一个已存在的用户组
语法:groupdel <组名>
示例:groupdel lucas
修改用户组的信息
语法:groupmod [选项] <组名>
选项有:-g:指定gid-o:配合-g-n:重新命名
示例:groupmod -g 102 lucas 重新设置lucas的gidgroupmod -n naves lucas 将组名lucas改为naves
用户管理
添加一个用户
语法:useradd [选项] <用户名>
选项有:-c:为用户添加一段描述-d:为用户指定一个家目录,如果目录不存在,可以使用-m来自动创建-g:为用户指定一个用户组,如果不指定,则默认创建和用户名相同的用户组-G:为用户指定附加的用户组,可以是多个组-s:为用户指定登录使用的shell,如果是/sbin/nologin则表明无法登录-u:为用户指定uid,如果不指定则会自动生成,也可以使用-o来使用已有的uid-M:表示不创建家目录
示例:useradd -s /sbin/nologin -M jeese 创建一个不能登录的用户jeese,由于没有指定-g,则会同时创建一个jeese的用户组,也由于使用-M,则没有创建家目录
这是去掉-M的情况,会自动在/home下创建一个同名的目录
这是指定了其他参数的情况,未指定-s则是使用的/bin/bash
从上面可以看到可以使用id <用户名>来查看用户的uid、gid、groups信息
设置用户密码
如果用户需要进行登录,则需要设置密码,可以使用passwd <用户名>来设置。
Linux系统中在输入密码时,输入字符是不可见的。
修改用户信息
语法:usermod [选项] <用户名>
选项和useradd是一样的,只是后面指定的是新的参数
示例:usermod -d /home/pank -m pank 将pank用户的家目录改为/home/pank,
注意上面是加了-m,表示目录不存在时自动创建,如果不加则只会修改用户配置,但是当用户登录后可能出现问题。如下:
删除用户
语法:userdel [选项] <用户名>
常用的选项是-r,表示删除用户的同时删除用户的家目录,不加-r则不会删除家目录

锁定用户、控制用户登录、控制用户修改密码
使用passwd [选项] <用户名> 来操作
选项包括:-l:锁定用户,使用户不能登录-d:清除用户的密码,使用户不能登录-u:解锁用户
和用户相关的系统文件
**/etc/passwd**
存储了所有用户信息,示例:sam:x:200:50:Sam san:/home/sam:/bin/sh
对应的描述是:用户名:口令:uid:gid:描述信息:家目录:登录shell
/etc/shadow
存储了用户的加密信息
具体含义:用户名:密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group
存储用户组信息,yooke:x:1002:
代表:组名:口令:gid:组内用户
