linux系统的用户管理

为什么要进行用户管理

因为linux系统是一个多用户多任务的操作系统,管理好用户才能保证系统有条不紊的工作

linux系统中用户存在的意义

用户是linux系统最底层的安全设备,属于权限问题,系统要回收权力
系统用户即系统的使用者,用户管理是对文件进行管理,用户的存在是为了回收权力

linux系统中组存在的意义

用户组是用户的延伸,可以得到身份,共享用户的权力
相当于我是我自己,但我还属于我的家,我和家人就组成了初始用户组
在学校,我属于自己班级的一员,我和班里的同学组成了附加用户组
组的存在是为了共享权力,组和用户是两个不同的机制

组的分类:

初始组用户刚建立时就加入的组
附加组用户后期加入的组

查看linux系统的用户信息

(1) whoami 查看当前用户
在这里插入图片描述
(2) 查看系统中用户的信息

id查看正在使用的用户的所有id信息
id -u查看用户的uid
id -g查看用户的gid
id -G查看用户所在的所有组的id
id -n显示名称不显示id数字

在这里插入图片描述
(3)切换用户

gnome–session–quit–force       ##注销当前用户,用其他用户登陆
su - 用户名称(前提是该用户在系统当中已经存在,若不存在需要现在超级用户模式下新建立用户)

备注:
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户,否则会造成用户紊乱
在这里插入图片描述

linux系统中用户的存储方式

其实用户也是文件,对用户的管理就是对文件的管理
用户其实就是以文件的方式存储的,和文件一样

默认shell的指定有哪些可以查看系统中/etc/shells文件

在这里插入图片描述
(1)用户信息文件 /etc/passwd

说明:用户信息文件里面存储了用户的一些基本信息
包括的内容:用户名称:用户密码:uid:gid:说明:家目录:默认shell

在这里插入图片描述
(2)用户组信息文件: /etc/group

说明:用户组信息文件里面存储了用户所属组(用户组)的一些基本信息
包括的内容:组的名字:组的密码:组的id:组的成员

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

说明:认证信息文件里面包括了一些认证信息,比如每个用户登陆时的密码
包括的内容:用户名称:密码

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

说明:骨文件里面存储了默认用户和系统对话工具的相关信息

(5) 用户的家目录: /home/username

注意:家目录指的是该用户建立的所属目录

用户其实就是文件的内容以及文件内容所指定的那些文件
uid相当于用户的身份证号 ,真正区别用户的不是名字,而是uid
用户说明和用户名字不一样
组用户为附加用户 ,并不是原有用户
初始组和附加组不一样

用户管理命令

(1)用户的建立:useradd

useradd 用户名 ###建立用户的同时会建立它的配置文件(包括用户的组信息和用户的家目录信息)

在这里插入图片描述
(2)用户的删除:userdel

  userdel    用户名     ###删除用户但不删除用户的配置文件
  userdel -r 用户名     ###删除用户的同时还会删除用户的配置文件

在这里插入图片描述
(3)useradd -u uid 用户名 ###指定用户的id
在这里插入图片描述
(4)useradd -g gid 用户名 ###指定用户的初始组id(用户组gid必须是存在的)
在这里插入图片描述
(5)useradd -G id 用户名 ###指定用户附加组的id(用户组id必须是存在的)
在这里插入图片描述
(6)useradd -c “hello” 用户名 ###指定用户的说明
在这里插入图片描述
(7)useradd -d /home/lee 用户名 ###指定用户的家目录
在这里插入图片描述
(8)useradd -s /bin/sh 用户名 ###指定用户的默认shell
在这里插入图片描述

用户组管理命令

(1)用户组的建立:groupadd
groupadd 用户组名
在这里插入图片描述
(2)用户组的删除:groupdel
groupdel 用户组名
在这里插入图片描述
(3)groupadd -g uid 用户组名字 ###建立用户组并指定用户组的id
在这里插入图片描述

修改用户信息

(1)usermod -l 新名称 用户名 ###更改用户的名称
在这里插入图片描述
(2)usermod -u uid 用户名 ###更改用户的uid
在这里插入图片描述
(3)usermod -g gid 用户名 ###更改用户的初始组
在这里插入图片描述
(4)usermod -G id 用户名 ###更改用户的附加组
使用-G时,如果已有附加组,则会代替;如果不想代替,想让两个都存在的话,使用-aG
在这里插入图片描述
(5)usermod -aG id 用户名 ###添加用户的附加组
在这里插入图片描述
(6)usermod -G “” 用户名 ##删除用户所有附加组的身份
在这里插入图片描述
(7)usermod -c “XXX” 用户名 指定用户说明文字
在这里插入图片描述
(8)usermod -d /home/lee 用户名 ###只改变家目录的指向
(其实就是相当于改变家庭地址)家目录指向,只是存放东西的一个路径,实际不改变文件的内容
在这里插入图片描述
(9)usermod -md /home/lee 用户名 ###同时改变家目录的指向和家目录的名字
在这里插入图片描述
(10)usermod -s /bin/sh 用户名 更改用户的shell
在这里插入图片描述

用户信息认证

/etc/shadow这个文件是记录用户的认证信息
例如:westos:!!:17895:0:99999:7:   :   :   ###一共有9项内容(此文件一共有9列)
       [1] [2]  [3] [4] [5] [6][7] [8] [9]
第一列用户名称
第二列用户密码的加密字符串,默认用的加密方式为sha512对称加密,如果加密字符串前出现“!”,则该用户的帐号被冻结
第三列用户密码最后一次被修改的时间,此时间的计算是从1970-1-1日起累计的总时间天数
第四列用户密码最短有效期限(用户在这个数字天数之内不能修改密码)如果此位有设定数字,那么在此数字范围内的天数内是不能更改用户的密码的
第五列用户密码最长有效期限,用户必须在此有效期内更新密码,如果超时会被冻结
第六列密码警告期限,在过期前指定天数内会发送警告信息给用户
第七列用户的非活跃天数(加的期限),此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数
第八列用户到期日,默认为空,表示帐号一定会被冻结的时间点,此时间计算是从1970-1-1开始计算的累计天数
第九列用户自定义列,目前没有启用
1)passwd -S 用户名 ###查看用户密码信息

在这里插入图片描述

2)用户密码的相关操作:
passwd 用户名 	 更改用户的密码
passwd -l 用户名 	在用户密码前加入“!!”
passwd -u 用户名 	解开已经上锁的用户
usermod -L 用户名 	在用户密码前加入“!”
usermod -U 用户名 	在密码不为空的时候使用
passwd -d 用户名 	清空用户的密码

(1)passwd 用户名 ###更改用户的秘密
在这里插入图片描述
(2)passwd -l 用户名 ###在用户密码前加入“!!”
在这里插入图片描述
(3)passwd -u 用户名 ###解开已经上锁的用户
在这里插入图片描述
(4)usermod -L 用户名 ###在用户密码前加入“!” 冻结用户
在这里插入图片描述
(5)usermod -U 用户名 ###在密码不为空的时候使用 解锁用户
在这里插入图片描述
(6)passwd -d 用户名 ###清空用户的密码
在这里插入图片描述

备注:
密码在/etc/shadow这个文件当中 只有超级用户可以操作
!!表示被封锁 改账户不能登陆
passwd比usermod强度更强

密码管理

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

在这里插入图片描述

2)用户密码最短有效期:
passwd -n 1  用户名   ###用户在一天之内不能修改密码
chage  -m 1  用户名    ###两个命令的效果一样

在这里插入图片描述

3)用户密码最长有效期:
passwd -x 30 用户名   ###设定用户在30天之内必须修改密码
chage  -M 40 用户名

在这里插入图片描述

4)密码警告期限:
passwd -w 2 用户名    ###密码过期前两天有警告输出
chage  -W 2 用户名

在这里插入图片描述

5)用户非活跃天数:
passwd -i 1 用户名    ###密码过期后仍可登陆系统的天数
chage  -I 1 用户名

在这里插入图片描述

6)用户到期日:
chage  -E 2019-11-1 用户名   ###用户在这一天会被冻结  
注意:此时间是从1970-1-1开始计算的累计天数|

在这里插入图片描述

用户授权

(1)什么叫用户授权?

一般情况下普通用户是不能新建用户或者新建用户组,只有超级用户有这个权力
现在想让普通用户使用超级用户的权力来建立用户或者用户组
此时需要把超级用户的权力给普通用户,这就叫用户授权
超级用户把自己的权力分享给普通用户,也可以叫权力共享

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

使普通用户拥有超级用户的权力

(1)先建立一个普通用户 useradd 用户名
在这里插入图片描述
(2)再看是否能建立新用户 su - 用户名 (查看是否为普通用户)useradd
在这里插入图片描述
(3)打开一个文件 visudo (/etc/sudoers)
在这里插入图片描述
(4)写要操作的东西(一般为了规范 在100行作用写)
在这里插入图片描述
(5)测试一定要用sudo
在这里插入图片描述

备注:
多个用户权力的下放的设定
例如:westos和test用户

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值