linux用户管理

用户管理

1.用户存在的意义

用户是能够获取系统资源的权限的集合

2.组存在的一意义

组是权限的容器
a.管理员 root :具有使用系统所有权限的用户,其UID 为0.
b.普通用户 : 即一般用户,其使用系统的权限受限,其UID为500-60000之间.
c.系统用户 :保障系统运行的用户,一般不提供密码登录系统,其UID为1-499之间.

3.用户的查看

1)
查看当前用户
whoami ##查看当前用户
2)
系统中用户的查看
id ##查看指定用户id信息
id
-u ##查看用户的uid
-g ##查看用户的gid
-G ##查看用户所在的所有组的id
-n ##显示名字而不显示id数字

在这里插入图片描述

用户切换
gome-session-quit --force	##注销当前用户
在用其他用户登陆	

在这里插入图片描述

su - 用户名称
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

在这里插入图片描述

用户在系统中的存储方式

/etc/passwd
用户信息文件
用户名称:密码:uid:gid:说明:家目录:默认shell
“说明:默认shell的指定有那些可以查看系统中/etc/shells文件”

在这里插入图片描述
/etc/group
用户组信息文件
组的名字:组密码:组id:组成员

在这里插入图片描述
/etc/shadows
认证信息文件

在这里插入图片描述
/etc/skel/.*
默认开启shell的配置,用户的骨文件

/home/username
用户的家目录
在这里插入图片描述

用户管理命令

1)用户的删除

	userdel
	userdel usertest		##删除用户但不删除用户的配置文件
	userdel -r usertest ##删除用户并删除用户的配置文件

2)用户建立
用户信息监控命令.

watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home'
useradd		##建立用户的,建立用户时,读取/etc/login.defs 文件内容确定规则
useradd -u 8888 usertest		##指定用户uid
useradd -g 21	usertest		##指定用户初始组id,"21用户组必须是存在的"

在这里插入图片描述

useradd -G 21	usertest 	##指定用户的附加组id “21用户组必须存在”
useradd -c "hello"  usertest ##指定用户的说明
useradd -d /home/lee usertest ##指定用户的家目录
useradd -s /bin/sh usertest ##指定用户的默认shell

在这里插入图片描述

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

在这里插入图片描述
3)更改用户信息

usermod
usermod -l 新名称	usertest 	##更改用户的名称
usermod -u 6666		usertest		##更改用户uid
usermod -g 21		usertest		##更改用户的初始组
usermod -G 21		usertest		##更改用户的附加组
usermod -aG 72		usertest	 ##添加用户的附加组

在这里插入图片描述

usermod -G ""		westos		##删除用户所有附加组的身份
usermod -c "hello,csdn"	usertest 	##指定用户说明文字
usermod -d /home/csdn usertest		##更改用户家目录的指向
usermod -md /home/lcsdn	usertest		##更改用户家目录
usermod -s /bin/sh	usertest		##更改用户的shell
usermod -L 		usertest		##冻结用户
usermod -U		usertest		##解锁用户

在这里插入图片描述

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

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

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

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

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

在这里插入图片描述

#用户密码#
passwd usertest ##更改usertest密码
passwd -l usertest##在用户密码前加入“!!”
passwd -u usertest
usermod -L usertest ##在用户密码前加入“!”
usermod -U usertest ##在密码不为空时使用
passwd -d usertest##清空usertest密码

在这里插入图片描述

注意:
	普通用户改密码时
	1.必须知道当前用户原始密码
	2.密码不能和帐号名称相似
	3.密码不能是纯数字或纯字母
	4.密码不能是有序的字母和数字的组合


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


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

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

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

在这里插入图片描述

用户授权

1.权力下放文件为/etc/sudoers
此文件可以用vim直接编辑,但是不提供语法检测
也可以使用visudo编辑此文件,visudo命令是提供语法检测的

2.下放方式

  • visudo
    100行左右

用户 主机名称=(得到的用户身份) 命令

usertest localhost=(root) /usr/sbin/useradd ##usertest用户可以在localhost主机以
##root用户身份执行useradd命令
usertest localhost=(root) NOPASSWD: /usr/sbin/useradd ##usertest用户可以在localhost主机以
##root用户身份免密执行useradd
在这里插入图片描述

3.测试
su - usertest
sudo useradd hello

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值