Table of Contents
一.用户
1.用户及用户组存在的意义
用户是操作者在系统中的身份标识,组是逻辑概念,是用户的集合,用户的存在是为了限制权限,组的存在是为了归类用户便于管理权限。
2.用户在系统中的存储方式
用户在系统中就是文件的字符串
每个字符串就是映射了该用户所用到的系统资源
3.用户涉及到的配置文件及内容
/etc/passwd 用户信息库
/etc/group 组信息库
/home/用户同名目录 默认用户家目录
/etc/skel/所有文件 用户环境配置文件模板
/etc/shadow 用户认证信息
/etc/gshadow 组认证信息
二.用户管理
1.用户信息查看
id 用户名 查看指定用户id信息
id 命令的常用参数:
-u 查看用户id
-g 查看用户组id
-G 查看用户所在的所有组的id
例如:
[dw@localhost Desktop]$ id
uid=1002(dw) gid=1002(dw) groups=1002(dw) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[dw@localhost Desktop]$ id -u
1002
[dw@localhost Desktop]$ id -g
1002
[dw@localhost Desktop]$ id -G
1002
2.用户身份切换方式及环境变量
1)gnome-session-quit --force
此命令用来注销当前用户
2)su 和 su -
su 只切换用户身份,不切换用户环境
su - 切换用户身份和用户环境
在用su切换用户操作之后必须退出,再次切换到其他用户。高级用户切换到低级用户时不需要密码,反之则需要密码,平级用户切换也需要密码。
例如:
[dw@localhost Desktop]$ su root
Password:
[root@localhost Desktop]#
[root@localhost Desktop]# exit
[dw@localhost Desktop]$ su - root
Password:
[root@localhost ~]#
3.用户及用户组的建立及删除
1) useradd 和 userdel
useradd 用于新建用户,它的常用参数有:
-u 指定用户id
-g 指定用户的组id
-G 指定用户的附加组
-c 指定用户的说明
-d 指定用户的家目录,默认为/home/username
-s 指定用户的默认shell
例如:
useradd lee
useradd -u 2000 lee1
useradd -g 72 lee2
userdel 用于删除用户,例如:
userdel lee
userdel -r lee1
userdel -r lee2
rm -rf /home/lee/
2)groupadd 和 groupdel
用户组的建立与删除方法与用户的建立与删除方法类似。
4.用户信息修改
usermod 的常用参数:
-l 修改用户名称
-u 修改用户的id
-g 修改用户的组id
-aG 指定用户的附加组
-c 修改用户的说明
-md 修改用户的家目录,默认为/home/username
-s 修改用户的shell类型
当我们要修改用户信息时用usermod 命令
我们首先用watch -n 1 "tail -n 3 /etc/passwd /etc/group ;echo ===;ls -l /home/" 来监视用户信息
usermod 命令常用参数及用法举例:
usermod -l WESTOS westos 更改用户名称
usermod -l westos WESTOS
usermod -u 888 westos 更改用户id
usermod -g dip westos 更改用户组id
usermod -g 1001 westos
usermod -G dip westos 附加用户组,这里命令实际上是更改
usermod -G 21 westos
usermod -aG 40 westos 添加用户附加组,这里是添加
usermod -G "" westos 清空附加组
usermod -c haha westos 更改用户描述
usermod -c "" westos
usermod -d /home/haha westos 更改用户家目录的指向,实际上只改变了字符,未改变实际目录
usermod -d /home/westos westos
usermod -md /home/haha westos 更改用户家目录
usermod -md /home/westos westos
usermod -s /bin/sh westos 更改shell
5.用户认证信息(密码属性)修改
用户认证文件的内容:
在/etc/shadow可以看到
student:$6$4/H/MNftYVlCJm6w$AUy1ia7Gx4GjfOI7oHvSy0Mfm9KAnVpwFgOs3Re6yI8HR0aHQmVRluDT2DxN1hUcETRYHB7xbxPgXd1Cg7l8G/::0:99999:7:::
每两个冒号之间为一项,从左至右为:
用户名称
用户密码
密码已经使用时间
密码最短有效期
密码最长有效期
密码到期前警告天数
密码非活跃天数
密码到期日
更改信息举例:
passwd westos 修改密码,普通用户只能修改自己的密码
passwd -S westos 查看密码属性
passwd -l westos usermod -L westos 锁定
passwd -u westos usermod -U westos 解锁
passwd -d westos 删除密码
passwd -e westos chage -d 20 westos 修改最后一次改密码的日期为0,每次登录时要强制设置密码
passwd -n 3 westos chage -m 2 westos 修改密码最小有效期
passwd -x 40 westos chage -M 20 westos 修改密码最大有效期
passwd -w 40 westos chage -W 2 westos 修改密码警告期
passwd -i 4 westos chage -I 5 westos 修改活跃天数
chage -E "2020-01-31" westos 修改密码有效期
echo Linux | passwd --stdin root 修改root用户的密码为Linux
6.用户权力的下放
权力下放的步骤:
visudo 打开权限设置文件
westos workstation.lab.example.com=(root) NOPASSWD: /usr/sbin/useradd,/usr/sbin/userdel 在100行左右输入
(格式:要下放权限的用户名 主机名=(root) NOPASSWD: 命令位置 )
其中NOPASSWD: 表示使用时不需要输入密码
:wq 退出保存
su - westos 切换到新用户
sudo useradd lee 现在完成权力下放westos用户可以创建新用户了
sudo userdel lee 也可以删除用户
注:可以用hostname 命令来查看主机名
用witch useradd来查找命令位置