Linux学习之用户管理命令与用户组管理命令
目录
用户管理命令
用户组管理命令
用户管理命令
用户添加命令useradd
只能超级用户才能添加用户。
useradd [选项] 用户名
选项:
-u UID:手工指定用户的UID号
-d 家目录:手工指定用户的家目录
-c 用户说明:手工指定用户的说明
-g 组名:手工指定用户的初始组
-G 组名:指定用户的附加组
-s shell:手工指定用户的登录shell。默认是/bin/bash
例子:
useradd liming
useradd -u 666 -G root -c "test user" -d /lingling lingling
修改用户密码passwd
超级用户可以给自己或者普通用户改密码,密码设置简单也可以生效。
普通用户只能给自己改密码。密码设置必须符合密码设置的要求。
passwd [选项] 用户名
选项:
-S 查询用户密码的密码状态。仅root用户可用。
-l 暂时锁定用户。仅root用户可用。
-u 解锁用户。仅root用户可用。
--stdin 可以通过管道符输出的数据作为用户的密码
修改用户密码
超级用户改自己密码:
passwd或者passwd root 超级用户改普通用户:
passwd 普通用户名 普通用户改密码:
passwd
查询密码状态
passwd -S user1
锁定用户和解锁用户
passwd -l user1
passwd -u user1
使用字符串作为用户的密码
这种给用户设置密码的方法主要用于shell,比如批量给多个用户设置密码
echo "123" | passwd --stdin user
修改用户信息usermod
useradd [选项] 用户名
选项:
-u UID:手工指定用户的UID号
-d 家目录:手工指定用户的家目录
-c 用户说明:手工指定用户的说明
-g 组名:手工指定用户的初始组
-G 组名:指定用户的附加组
-s shell:手工指定用户的登录shell。默认是/bin/bash
修改user1用户的说明
usermod -c "test user" user1 把user1用户加入root组
usermod -G root user1 锁定用户
usermod -L user1 解锁用户
usermod -U user1
修改用户信息usermod
也可以使用vi 修改 /etc/shadow。
chage [选项] 用户名
选项:
-l: 列出用户的详细密码状态
-d 日期: 修改密码最后一次更改日期(三字段)
-m 天数: 两次密码修改间隔(四字段)
-M 天数: 密码有效期(五字段)
-W 天数: 密码过期前警告天数(六字段)
-l 天数: 密码过后宽限天数(七字段)
-E 日期:账号失效时间(八字段)
这个命令将修改密码的最后一次更改日期为0,结果就是用户登录user用户登录上去就要修改密码。
chage -d 0 user
删除用户userdel
user [-r] 用户名
选项:
-r 删除用户的同时删除用户家目录
用户切换命令su
超级用户切换到普通用户是需要不需要密码的。
普通用户切换到超级用户或者切换成另一个普通用户都是需要密码的。
su [选项] 用户名
选项:
-:选项只使用"-"代表连带用户的环境变量一起切换
-c 命令:仅执行一次命令,而不是切换用户身份
切换成root
su - root 不切换成root,但是 执行useradd命令添加user1用户
su - root -c "useradd user3"
用户组管理命令
添加用户组
groupadd [选项] 组名
选项:
-g GID:指定组ID
例子:
groupadd group1
修改用户组
groupmod [选项] 组名
选项:
-g GID:修改组ID
-n 新组名:修改组名
例子:
groupmod -n testgroup group1
删除用户组
如果组中有初始用户,则这个组不能删除。
如果组中只有附加用户,则这个组可以删除。
groupdel 组名
将用户添加到组或者从组中删除
手工写入/etc/group也一样。
gpasswd [选项] 组名
选项:
-a 用户名:把用户加入组
-d 用户名:把用户从组中删除