用户管理

用户与组存在的意义
通过建立用户和用户组,或者控制新建用户和所在的用户组,可以控制用户访问系统的权限。
用户的查看
1)
查看当前用户
whoami ##查看当前用户

2)
系统中用户的查看
id ##查看指定用户id信息
id
-u ##查看用户的uid
-g ##查看用户的gid
-G ##查看用户所在的所有组的id
-n ##显示名字而不显示id数字
改图表示的信息为当前用户为root,其id为0,组id为0,附加组id也为0.

whoami    查看当前用户
id  	查看当前用户所有id
id -u		查看当前用户uid
id -g		查看当前用户组id
id -G		查看当前用户附加组

当前用户为root(超级用户),其id,组id,附加组id都为0.
在这里插入图片描述
用户的切换
gome-session-quit --force ##注销当前用户
在用其他用户登陆

su - 用户名称
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户
gome-session-quit --force   注销当前用户后用其他命令登录,效果如以下两张图所示。


在这里插入图片描述

su -user    用来切换用户,该用户必须存在,每次切换用户后,想要切换用户时,先执行“exit”命令退出当前环境后在使用该命令切换用户。

在这里插入图片描述

用户在系统中的存储方式
/etc/passwd
用户信息文件
用户名称:密码:uid:gid:说明:家目录:默认shell
“说明:默认shell的指定有那些可以查看系统中/etc/shells文件”
/etc/group
用户组信息文件
组的名字:组密码:组id:组成员
/etc/shadows
认证信息文件

/etc/skel/.*
默认开启shell的配置,用户的骨文件

/home/username
用户的家目录

用户管理命令
1)用户的删除
userdel
userdel student ##删除用户但不删除用户的配置文件
userdel -r student ##删除用户并删除用户的配置文件

在删除用户student时,在使用su命令切换用户到student,发现无法切换,原因是该用户不存在(student用户被删除)在这里插入图片描述

2)用户建立
用户信息监控命令
watch -n 1 ‘tail -n 3 /etc/passwd /etc/group;ls -l /home’

useradd ##建立用户的,建立用户时,读取/etc/login.defs 文件内容确定规则

useradd -u 8888 westos ##指定用户uid
useradd -g 21 westos ##指定用户初始组id,“21用户组必须是存在的”
useradd -G 21 westos ##指定用户的附加组id “21用户组必须存在”
useradd -c “hello” westos ##指定用户的说明
useradd -d /home/lee westos ##指定用户的家目录
useradd -s /bin/sh westos ##指定用户的默认shell

groupadd ##建立用户组
groupadd -g 888 westos ##建立用户组并指定用户组的id
groupdel ##删除用户组

watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'   使用该命令监视用户与用户组的后三行并展示/home目录下的文件(监视频率为每秒一次)

在这里插入图片描述

useradd westos   添加用户westos

可以发现用户与用户组的最后一行的信息变为了westos的信息。

在这里插入图片描述
在用户westos存在时,再次执行上述命令创建用户westos,系统报错,因为用户westos已经存在,不可以创建相同名字的用户。(解决方法,先删除用户westos,然后再创建用户westos,或建立一个非同名的用户)在这里插入图片描述

useradd -u 8888 westos    指定用户的uid为8888建立用户westos(若不想使用系统配置的默认uid,则可以使用该命令)

使用该命令后,可以发现用户的uid为8888
在这里插入图片描述

useradd -g 21 westos 建立组id为21的用户westos(该组id必须存在,slocate的组id为21,所以改组存在)
在图中可以看到,新建的用户westos的uid系统配置为1001,而gid则被配置为21.在这里插入图片描述报错,报错原因:指定建立用户组id为33的用户westos,而改组不存在。
解决方法:先建立组id为33的组,然后建立组id为33的用户westos。(如下第二张图所示)在这里插入图片描述
在这里插入图片描述
useradd -G 21 westos 该命令为建立附加组id为21的用户westos(组id为21的组必须存在,slocate的组id为21,所以改组存在)
在这里插入图片描述报错:
报错原因:指定建立用户附加组id为33的用户westos,而改组不存在。
解决方法:先建立组id为33的组,然后建立附加组id为33的用户westos。在这里插入图片描述
3)更改用户信息
usermod
usermod -l 新名称 westos ##更改用户的名称
usermod -u 6666 westos ##更改用户uid
usermod -g 21 westos ##更改用户的初始组
usermod -G 21 westos ##更改用户的附加组
usermod -aG 72 westos ##添加用户的附加组
usermod -G “” westos ##删除用户所有附加组的身份
usermod -c “hahahah” westos ##指定用户说明文字
usermod -d /home/lee westos ##更改用户家目录的指向
usermod -md /home/lee westos ##更改用户家目录
usermod -s /bin/sh westos ##更改用户的shell
usermod -L westos ##冻结用户
usermod -U westos ##解锁用户

usermod -l tom westos    改变用户名westos为tom

在这里插入图片描述

usermod -l westos tom    修改用户名tom为westos
usermod -u 333 westos   修改用户的uid为333

用户的uid由1001变为333
在这里插入图片描述

usermod -g 21 westos   修改用户的初始组id为21

用户的组id由88变为21
在这里插入图片描述
usermod -G 520 westos 更改用户westos附加组为520(该命令会覆盖用户之前的附加组)在这里插入图片描述
usermod -aG 88 westos 为用户westos添加附加组88(该命令不会覆盖用户之前的附加组,上图中添加的组520依旧存在)

usermod -G 88    westos  更改用户的附加组为88,若运行该命令,则原来的附加组520会被替换成88

在这里插入图片描述

usermod -G “” westos    删除用户westos的所有附加组

可以看到之前的附加组520,88都会被删除。在这里插入图片描述
usermod -d /home/lee westos 更改用户的家目录指向为/home/lee 用户的家目录由/home更改为/home/lee在这里插入图片描述

usermod -c “i am a new student” westos  更改用户westos的说明为i am a new student    用户说明由westos变为了i am a new student

在这里插入图片描述

usermod -s /bin/sh westos    更该用户的shell为sh(该命令不要轻易修改,shell的某些类型不一定支持本机的命令)

用户认证信息
/etc/shadows ##记录用户认证信息
westos:!!:17895:0:99999: 7: : :
[1] [2] [3][4] [5] [6] [7] [8] [9]
此文件一共有九列:
[1]
westos
用户名称:
[2]
!!
用户密码:
用户的加密字符串,默认用的加密方式为sha512对称加密,
如果加密字符串前出现"!"那么用户被冻结
[3]
17895
用户密码最后一次被更改的时间:
此时间计算是从1970-1-1开始计算的累计天数
[4]
0
用户密码最短有效期:
如果此位有设定数字,那么在此数字范围内的天数内是不能修改用户密码的
[5]
99999
用户密码最长有效期:
用户必须在此有效期内更新密码,如果超时会被冻结
[6]
7
密码警告期限:
在过期前制定天数内会发送警告信息给用户

[7]
用户非活跃天数:
此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数

[8]
用户到期日:
默认为空,表示帐号一定会被冻结的时间点

[9]
用户自定义列,目前没有启用

passwd -S westos ##查看westos用户密码信息

#用户名称#

#用户密码#
passwd westos ##更改westos密码
passwd -l westos ##在用户密码前加入“!!”
passwd -u westos
usermod -L westos ##在用户密码前加入“!”
usermod -U westos ##在密码不为空时使用
passwd -d westos ##清空westos密码
注意:
普通用户改密码时
1.必须知道当前用户原始密码
2.密码不能和帐号名称相似
3.密码不能是纯数字或纯字母
4.密码不能是有序的字母和数字的组合
passwd passwd -l westos 在用户westos密码前加入“!” !表示账号被冻结

在这里插入图片描述
passwd -u user 去除用户密码中的! passwd -u westos 去除用户密码中的!
在这里插入图片描述

修改用户westos的密码

passwd  user   修改使用者的密码
passwd westos   修改使用者westos的密码

修改密码时设置的密码不能短于8位(下图中设置的新密码少于8为,系统发出提示改密码少于8wei,不是一个优秀的密码),不能和账号相似,不能是纯数字或纯字母,不能是数字字母的有序结合,这几类密码系统都会报错。

在这里插入图片描述

#用户密码最后一次被更改的时间#
passwd -e westos ##会改变用户最后一次更改密码时间为0.
##用户在登陆时会被强制更改密码
chage -d 0 westos ##两个命令功能类似

passwd -e westos     会改变用户最后一次更改密码时间为0.

在这里插入图片描述

#用户密码最短有效期#
passwd -n 1 westos ##westos用户在1天之内不能修改密码
chage -m 1 westos

passwd -n  555 user   使用者在555天内不能修改密码
passwd -n 1 westos 用户westos在一天之内不能修改密码

在这里插入图片描述
#用户密码最长有效期#
passwd -x 30 westos ##设定westos在30天内必须改密码
chage -M 40 westos
passwd -x 30 westos 用户westos在30天内必须修改密码在这里插入图片描述
#密码警告期限#
passwd -w 2 westos ##密码过期前两天有警告输出
chage -W 2 westos
pass passwd -w 2 westos 密码过期前两天有警告输出在这里插入图片描述
#用户非活跃天数#
passwd -i 1 westos ##密码过期后仍可登陆系统的天数
chage -I 1 westos
passwd -i 1 westos 密码过期后仍可登录系统的天数在这里插入图片描述
#用户到期日#
chage -E 2018-11-11 westos ##westos用户在2018-11-11日会被冻结

chage -E  冻结日期  user   用户在设定的冻结日期冻结
`chage -E 2019-11-11 westos      使用者westos在2019-11-11日被冻结`

在这里插入图片描述

#用户自定义列,目前没有启用#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值