目录
1.创建用户-useradd
格式:
useradd [选项] 用户名 创建新用户
参数:
-u UID用户标识号,UID必须唯一
#当需要指定所创建用户为服务用户时,指定UID为1000以内
-g group指定新用户登录时所属的默认组(主组)
-G 指定新用户的附加组,为已经存在的用户组
#附加组对于默认组而言,当一个用户同时是多个组的成员时,登陆默认组称为主组,其他组称为附加组
-d 指定新用户的默认目录(默认不指定)
-s 指定新用户的默认shell类型
-c 添加说明信息
-f 指定账号过期后多久会永久停用
-M 创建用户时不生成家目录
#创建nguser用户为Nginx服务的服务用户,用户ID199,默认shell类型为/sbin/nologin,且不创建家目录
例:
userdaa -u 199 -s /sbin/nologin -M nguser
2.修改用户属性-usermod
格式:
usermod [选项] 用户名 修改用户信息
参数:
-a(append) #当添加用户到一个新组时,保留用户在其他组的成员身份。如果不使用 -a 选项,用户会从原有的附加组中被移除,仅留在指定的新组中。
#usermod -aG wheel daboluo #将daboluo用户添加到wheel组中,并保留原来的所属组
-u #修改用户指定UID
-g #修改用户指定初始组
-G #修改用户附加组(替换原附加组)
-c #修改用户描述信息
-d -m #直接对原家目录进行改名
#suermod -m -d /home/user4 /home/u 修改用户家目录为u4
-s #修改用户的shell类型
-L #锁定用户密码
-u #解锁用户密码
-l #新用户名 旧用户名 修改用户名
3.删除用户-userdel
userdel [选项] 用户名
参数:
-r #删除用户时,连带家目录一起删除
4.修改密码-passwd
passwd [选项] 用户名
-l 锁定用户密码
-u 解锁用户密码
-S 查看账号状态
#第一次执行passwd时,设置用户密码,第二次为修改密码,当用户未设置密码时,用户自己无法修改密码
echo "123" | passwd --stdin user1
#采用非交互式的方式把user1的密码修改为123
#非交互式密码设置,在创建大批量用户并需要设置密码时,采用非交互的的方式,采用交互无人为响应,达不到脚本自动执行
5.创建用户组-groupadd
groupadd [选项] 组名 创建新的用户组
-g #指定新建用户组的GID,该GID必须唯一,不得重复
-o #指定新建用户组的ID可以和系统中已有的用户组GID相同
6.修改组密码-gpasswd
gpasswd [选项] 用户名 组名
-a #把某一用户加入用户组
-d #删除用户组中某一用户
-M #定义组内成员,用户之间“,”间隔,直接采用替换的方式
-A #设置组内某一成员为管理员
例:
gpasswd -a user1 xxhf
#正在将用户“user1”加入到“xxhf”组中
gpasswd user1
#正在修改 user1 组的密码
7.切换用户组-newgrp
newgrp 切换用户组
#一个用户处于不同的属组,可以在用户组间随意切换,以便具有其他用户组权限,用户在多个用户组之间进行切换,用exit退出,当切换到未加入的用户组是,需要验证组密码
#加入用户的方式:
临时加入用户组需要root用户设置组密码,且不在/etc/group文件中生效
永久加入用户组需要root用户或管理员执行命令,多个用户需要重复执行
#永久加入用户组:
#加入用户组
gpasswd -a nameuser group
#删除用户组
gpasswd -d nameuser group
#临时加入用户组
newgrp
#退出临时用户组
exit
8.删除用户组-groupdel
groupdel 删除用户组
#如果用户组内包含某些用户,需要确定组内用户的全部权限,否则会造成为文件或目录组关系混乱
[root@localhost ~]# ll
总用量 76
drwxr-xr-x. 2 root hfjy 6 6月 4 17:47 hf.d
[root@localhost ~]# groupdel hfjy
[root@localhost ~]# ll
总用量 76
drwxr-xr-x. 2 root 1004 6 6月 4 17:47 hf.d
[root@localhost ~]# groupadd -g 1004 wlzx
[root@localhost ~]# ll
总用量 76
drwxr-xr-x. 2 root wlzx 6 6月 4 17:47 hf.d
9.查看当前组-groups
#查看当前用户,属于哪些用户组
groups
10.查看当前用户id-id
#显示用户UID,初始组,附加组列表
id $用户名
11.查看用户详细信息-finger
#查看用户详细信息
finger
[root@localhost ~]# finger
Login Name Tty Idle Login Time Office Office Phone Host
root root pts/1 Jun 4 17:29 (192.168.10.1)
shi-text shi-test *:0 Jun 4 17:27 (:0)
user1 *:1 Jun 4 17:32 (:1)