一.什么是用户
1.用户:是系统的使用者
2.系统中,用户的信息存储为若干字符和若干配置文件
3.用户相关配置文件
/etc/passwd ##用户基本信息
mysql(用户):x(密码):27(uid):27(gid):MariaDB Server(用户说明):/var/lib/mysql(家目录):/sbin/nologin(默认的shell)
/etc/shadow ##用户密码信息
tcpdump(用户):!!(密码):(1970-1-1到现在的时间):(最短有效期):(最长有效期):(过期前警告期):(非活跃期):(密码到期日):
/etc/group ##组信息
/etc/gshadow ##组认证信息
/etc/skel/.* ##用户骨架文件
/home/username ##用户家目录
注意:/etc/skel 该目录下的所有文件/目录在新建用户时,都会复制到用户的家目录中
并且该目录下的默认隐藏文件是用户默认的配置文件
二.用户管理
1.用户建立 useradd [-ugGcds] 用户名
-u ##指定用户的初始uid
-g ##指定用户的初始gid,但这个组必须存在
-G ##指定用户的附加组,但这个组必须存在
-c ##用户说明
-d ##用户家目录
-s ##用户使用的shell(/etc/shells记录了用户能使用的shell)
2.用户删除 userdel -r 用户名
注意:-r 包括删除用户的所有默认配置文件,若无-r,需手动删除配置文件
3.组的建立及删除
groupadd 用户名
groupdel 用户名
4.用户信息查看 id [-ugGna] 用户名
-u ##查看用户的uid
-g ##查看用户的gid
-G ##查看用户的所有组id
-n ##查看用户的名称
-a ##查看用户所有信息
5.用户信息更改 usermod [-lugGcdsLU] 用户名
-u ##更改用户的uid
-g ##更改用户的gid,但这个组必须存在
-G ##更改用户的附加组,但这个组必须存在
-aG ##添加用户的附加组,但这个组必须存在
-c ##更改用户说明
-d ##更改用户家目录
-md ##更改家目录及家目录名称
-s ##更改用户使用的shell(/etc/shells记录了用户能使用的shell)
-L ##冻结用户
-U ##解除锁定
注意:当使用usermod -md 命令时,家目录和用户名需一致
三.用户权力下放
1.在系统中,超级用户可以下放权限给普通用户。更改权力配置文件:/etc/sudoers
2.权力下放方法
a.超级用户执行visudo进入sudoers编辑模式
b.更改格式: 用户 主机名称 命令
kiosk foundation77.ilt.example.com /usr/sbin/useradd
c.执行下放权限命令
sudo 命令
若需无密码操作,命令前加 “NOPASSWD”
再次操作如下:
四.用户认证信息更改
1.passwd 修改密码
若是超级用户,可直接修改密码,无需输入原始密码,无密码强度要求
若是普通用户,需要输入原始密码,新密码不能少于8位,不能是纯数字/纯字母
2.格式: passwd [-Sdluexnwi] 用户名
-S ##查看用户密码信息
-d ##删除用户密码
-l ##冻结用户
-u ##解除冻结
-e ##更改默认使用天数,即强制要求登陆时修改密码
-x ##更改密码最短有效期
-n ##更改密码最长有效期
-w ##更改密码过期前警告期
-i ##更改密码非活跃期
注意:非交互式更改用户密码:passwd --stdin 用户
例如:echo lee | passwd --stdin westos 将用户westos的密码改为lee
3.chage 修改格式: chage [-dmMWIE] 用户名
-d ##更改默认使用天数,0 即强制要求登陆时修改密码
-m ##更改密码最短有效期
-M ##更改密码最长有效期
-W ##更改密码过期前警告期
-I ##更改密码非活跃期
-E ##更改密码到期日 “yyyy-mm-dd"
例:将westos的密码到期日改为:2070-12-12
五:root密码忘记
1.重新启动系统
2.在系统启动阶段按上下健停止系统系统引导
3.选择启动引导标题,按“E”进行编辑
4.找到linux16引导条目这一行,从这行最后删除到ro选项,并把ro改为rw,然后添加rd.break选项
5.ctrl+x启动设定过后的系统引导条目
6.进入系统后执行chroot /sysroot切换到真实的系统环境
7.passwd root修改超级用户密码
8.建立文件/.autorelabel让系统从新扫描所有文件
9.exit两次使系统自动重新启动