1.用户是什么?
用户就是系统管理者的身份
用户在系统中的存储方式是:
/etc/passwd
用户信息文件
用户名称:密码:uid:gid:说明:家目录:系统默认shell (默认shell指定有哪些可以查看/etc/shells文件)
/etc/group
用户组文件
组名称:组密码:组id:组成员
/etc/shadows
认证信息文件
/etc/skel/.*
默认开启的shell配置,用户的骨文件
2.用户管理
1.用户建立
useradd 参数 用户名
-u ##指定用户uid
-g ##指定用户初始组信息,这个组必须已经存在
-G ##指定附加组,这个组必须存在
-c ##用户说明
-d ##用户家目录
-s ##用户使用的shell,/etc/shell记录了用户能使用的shell 的名字
2.用户删除
userdel -r 用户名 ##表删除用户信息即用户的配置信息
3.组的建立与删除
groupadd 组名称 ##组的建立
groupadd -g 233 ##建立组并预设组id为233
groupdel 组名称 ##组的删除
chaagrp 组名称 /sc ##改变组
注:建立的用户名字 不一定和主组名字相同
root 用户的uid 默认
系统用户一般为 1-499
登录用户500-65530(可登录账号)
当删除某个用户时,出现用户不能删除,正在被某个进程使用,则使用pkill -9 -u 用户名,结束进程,-9 表示不可抗击
4.用户信息监控
watch -n 1 'tail -n 3 /etc/passwd /etc/group ;ls -l /home '
如图:
1.
2.
3.
5.查看与切换用户
- 查看用户本身
whoami ##查看当前用户
- 查看系统用户
id 用户名 ##查看该用户id
-u ##查看用户uid
-g ##查看用户gid
-G ##查看所有组id
-n ##显示名称不显示数字
如图:
- 用户的切换
gnome-session-quit -- force ##注销当前用户
su - username ##切换到某个用户
su - ##切换到超级用户
exit ##退出su 环境
如图:
注:切换用户时要用exit退出,否则会占用资源,身份混乱。
- 表示切换用户时同时切换用户环境
高级用户切换到低级不用密码,低到高,低到低都需要密码
6.更改用户信息
usermod -l 新名称 某用户名 ##更改用户名称
-u 666 (下同) ##更改用户uid
-g 21 ##更改用户初始组
-G 21 ##更改用户附加组
-aG 73 ##添加用户附加组
-G "" ##删除用户所有附加组身份
-c "hahaha" ##指定用户说明文字
-d /home/lee ##更改用户家目录指向
-md /home/lee ##更改用户家目录
-s /bin/sh ##更改用户的shell
-L ##冻结用户
-U ##解所用户
如图:
注:更改附加组会删掉原来的组
-md会改变系统中真实存在的目录
7.用户认证信息
8.用户密码管理
(1)
passwd haha ##更改haha的密码
passwd -l haha ##在用户密码前加 !!
passwd -u haha
passwd -S haha ##查看用古密码信息
usermod -L haha ##在用户密码前加 !
usermod -U haha ##在用户密码不为空时使用
passwd -d haha ##清空haha密码
chage -l haha ##列出haha的详细密码参数
注:普通用户修改密码时
- 必须知道当前用户密码
- 密码不能和账户名称相似
- 密码不能是有序的数字或纯字母
- 密码如果是纯数字或纯字母要大于8位
例如:
(2)
用户密码最短有效期
passwd -n 1 haha ##haha用户一天之内不能修改密码
chage -m 1 haha
用户密码最长有效期
passwd -X 30 haha ##haha用户30天之内不能修改密码
chage -M 30 haha
密码警告期限
passwd -w 2 haha ##密码过期两天前有警告输出
chage -W 2 haha
用户非活跃天数
passwd -i 1 haha ##密码过期后仍可登陆的天数
chage -I 1 haha
用户到期日
chagr -E 2019-10-9 haha ##haha用户在2019.10.9后会冻结
如图:
3.用户权力的下放
1.权力下放文件位置为/etc/sudoers,用visudo命令编辑此文件会有语法检测;
2.下放步骤:
- visudo
- 编辑/etc/sudoers文件(在该文件100行左右编辑)
- 用户 主机名称即得道的身份 命令
3.执行命令:sudo
注:
- 查看主机名称命令 hostname 详细 hostnamectl
- 查看文件所在位置 which 命令名
- 查看文件位置 find -name 文件名
- 第一次无密码执行命令 NOPASSWD:/usr/sbin/useradd
如图:
4.以集合的方式下放权力