一、用户和用户组
-
# cat /etc/passwd |head
显示前10条信息,每行信息由’:'分割成7段,每段含义为用户名、用户密码、用户标识号、用户组标识号、用户属性、用户的家目录、用户的shell。 -
# cat /etc/shadow |head
显示前10条信息,每行信息由’:'分割成9段,每段含义为用户名、用户密码、上次更改密码日期、过多少天可以更改密码(默认0,不受限制)、过多少天必须更改密码(即密码多少天后到期)、密码到期前的警告期限(到期前多少天发出警告提醒)、账号失效期限(密码到期后多少天账号失效)、账号生命周期(到期后账号作废)、保留字段暂无任何意义。 -
# cat /etc/group |head
显示前10条信息,每行信息由’:'分割成4段,每段含义为用户组名、用户组密码、用户组标识号、此用户组包含的用户名。 -
# head /etc/gshadow
-
显示前10条信息,每行信息由’:'分割成4段,每段含义为用户组名、用户组密码、用户组管理员账号、此用户组包含的用户名。
用户组添加、修改、删除命令 | 功能 |
---|---|
groups | 查看当前登录用户的用户组。 |
groupadd groupname | 新建系统用户组(用户组的gid由500以上最大gid+1来决定)。 |
groupadd -r groupname | 新建系统用户组(用户组的gid由500以上最大gid+1来决定)。 |
groupadd -g 511 groupname | 新建系统用户组,用户组gid为511。 |
groupmod -g 1000 groupname | 修改groupname组的gid为1000。 |
groupmod -n groupother groupname | 修改groupname组名为groupother。 |
groupdel groupname | 删除组,如果组中含有用户,需先删除用户后才能删除组。 |
用户组管理员相关命令 | 功能 |
---|---|
gpasswd groupname | 设置groupname的密码(/etc/shadow)。 |
gpasswd -A user1,user2 groupname | 将groupname的主控权交由后面的用户管理(即该用户组管理员)。 |
gpasswd -M user3,user4 groupname | 将某些用户加入到这个用户组当中。 |
gpasswd -r groupname | 将groupname的密码删除。 |
gpasswd -R groupname | 将groupname的密码栏失效。 |
gpasswd -a user groupname | 将用户user加入到groupname组。 |
gpasswd -d user groupname | 将用户user从groupname组删除。 |
创建用户命令 | 功能 |
---|---|
useradd username | 创建用户和组。 |
useradd -u 510 -g groupname username | 创建用户username,加入groupname组。 |
useradd -u 510 -g 500 -d /dict -s /sbin/nologin username | 创建username用户名,其uid=510(必须是系统中不存在的),gid=500(必须是系统中已经存在的),-d /dict表示自定义的用户家目录为dict,-s 表示自定义shell为/sbin/nologin。 |
useradd -u 510 -g 500 -M -s /sbin/nologin username | 创建username用户名,其uid=510(必须是系统中不存在的),gid=500(必须是系统中已经存在的),-M表示不用创建用户家目录,自定义shell为/sbin/nologin。 |
useradd -D | -D参数作用是是显示useradd创建用户时的默认值。 |
修改用户命令 | 功能 |
---|---|
usermod -c “User’s Description” user | 后面接说明,passwd第5段,设置用户user的说明描述。 |
usermod -d /home/dict user | 后面接目录,passwd第6段,修改用户user的主目录。 |
usermod -e “2021-05-01” user | 后面接日期,格式是’YYYY-MM-DD’,shadow第8段,设置账号生命周期(到期后账号作废)。 |
usermod -f 90 user | 后面接天数,shadow第7段,设置账号失效期限(密码到期后多少天账号失效)。 |
usermod -g root user | 后面接初始用户组,passwd第4段,修改用户user的用户组为root。 |
usermod -G root user | 后面接次要用户组,修改此用户支持的用户组,修改的是/etc/group,表示同时支持user组和root组。 |
usermod -a -G root user | 增加用户user次要用户组的支持。 |
usermod -l xue user | 修改用户user的账号名称为xue,即passwd第1列。 |
usermod -s /bin/bash user | 后面接shell的实际文件,例 /bin/bash或/bin/csh,即passwd第7列。 |
usermod -u 502 user | 后面接uid数字,即修改passwd第3列数据。 |
usermod -L user | 暂时锁定用户密码,让他无法登陆,其实仅修改shadow的密码,在密码列前加’!’。 |
usermod -U user | 与’-L’相对,解除shadow密码锁定,去掉密码前的’!’。 |
删除用户命令 | 功能 |
---|---|
userdel username | 删除用户和组。 |
userdel -r username | -r参数作用是删除用户时一并删除该用户的家目录。 |
普通用户查询修改用户信息命令 | 功能 |
---|---|
chfn user | 修改用户user的finger信息,即/etc/passwd文件第5段中所显示的信息。 |
chfn -f lilei user | 修改用户user的finger信息,后面接完整的姓名。 |
chfn -o 201 user | 修改用户user的finger信息,办公室的房间号码。 |
chfn -p 82732525 user | 修改用户user的finger信息,办公室的电话号码。 |
chfn -h 88880101 user | 修改用户user的finger信息,家里的电话号码。 |
chsh -l | 列出目前系统可用的shell,即/etc/shells的内容chsh。 |
chsh -s /bin/csh ;grep xue /etc/passwd | 设置修改当前账户自己的shell为/bin/csh。 |
id user | 列出用户user的uid、gid、用户组信息。 |