Linux入门之用户管理

不论是windows系统、Linux系统还是UNIX系统,我们都可以发现用户的存在。用户存在的意义是为了提高系统的安全,为不同的用户分配不同的权限,如删除文件的权限,如果每个用户都拥有这样的权利,则系统安全就没有保障。同时系统中也存在用户组、家庭组,组的存在则是为了共享资源。

一、用户的查看

  1. whoami
    用来查看当前的用户
    在这里插入图片描述
  2. 查看系统中的用户
命令 说明
id 查看指定用户id信息
id -u 查看用户的uid
id -g 查看用户的gid
id -G 查看用户所在的所有组的id
id -n 显示名字而不显示id数字
id -Gn 查看用户组名称
id -un 查看用户名称
id -gn 查看用户组名称

在这里插入图片描述
3. 用户的切换
(1)gome-session-quit --force 命令注销当前用户再用其他用户登录,使用该命令可强制退出登录
(2)在Linux系统右上角,点击小x,选中logout退出登录
在这里插入图片描述
(3)su - 用户名称
表示在用户身份切换时同时切换当前用户的环境
注意:高级用户切换低级用户,不需要密码;低级用户切换高级用户,需要密码;平级用户相互切换,需要密码。 su切换到其他用户操作之后必须退出,然后再次切换到其他用户。
在这里插入图片描述
二、用户在系统中的存储方式
1./etc/passwd
用户信息文件
用户名称:密码:uid:gid:说明:家目录:默认shell
“说明:默认shell的指定有那些可以查看系统中/etc/shells文件”
在这里插入图片描述
2. /etc/group
用户组信息文件
组的名字:组密码:组id:组成员
在这里插入图片描述
3./etc/shadows
认证信息文件
在这里插入图片描述
4./etc/skel/.*
默认开启shell的配置,用户的骨文件
在这里插入图片描述
5./home/username
用户的家目录

三、用户和用户组的管理

1.用户管理
(1)新建用户

命令 说明
useradd 用户名称 新建用户
useradd -u 6666 用户名称 指定用户uid
useradd -g 21 用户名称 指定用户初始组id,21用户组必须存在
useradd -G 21 用户名称 指定用户的附加组id,21用户组必须存在
useradd -c “hello” 用户名称 指定用户的说明
useradd -d /home/student 用户名称 指定用户的家目录
useradd -s /bin/sh 用户名称 指定用户的默认shell

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

命令 说明
userdel 用户名称 删除用户但不删除用户的配置文件
userdel -r 用户名称 删除用户并删除用户的配置文件

(3)更改用户信息

命令 说明
usermod -l 新名称 用户名称 更改用户的名称
usermod -u 6666 用户名称 更改用户uid
usermod -g 21 用户名称 更改用户的初始组
usermod -G 21 用户名称 更改用户的附加组
usermod -aG 72 用户名称 添加用户的附加组
usermod -G “” 用户名称 删除用户所有附加组的身份
usermod -c “hello” 用户名称 指定用户说明文字
usermod -d /home/lee 用户名称 更改用户家目录的指向
usermod -md /home/lee 用户名称 更改用户家目录
usermod -s /bin/sh 用户名称 更改用户的shell
usermod -L 用户名称 冻结用户
usermod -U 用户名称 解锁用户

在这里插入图片描述
注意:同一个用户要所属两个及两个以上的组必须要用 -aG,如果只用 -G 则是对附加组的更改。
2.用户组管理

命令 说明
groupadd 组名 建立用户组
groupadd -g 6666 组名 建立用户组并指定用户组的id
groupdel 组名 删除用户组

在这里插入图片描述
3.用户认证信息

westos:!!:17895:0:99999: 7: : :
此文件一共有九列:
(1)westos:用户名称
(2) !!:用户密码
用户的加密字符串,默认用的加密方式为sha512对称加密,如果加密字符串前出现"!"那么用户被冻结,可以使用 " usermod -U 用户名称 "命令解锁用户
(3)17895:用户密码最后一次被更改的时间
此时间计算是从1970-1-1开始计算的累计天数

命令 说明
passwd -e 用户名 会改变用户最后一次更改密码时间为0,用户在登录时会被强制更改密码
chage -d 0 用户名 同上

(4)0:用户密码最短有效期
如果此位有设定数字,那么在此数字范围内的天数内是不能修改用户密码的

命令 说明
passwd -n 1 用户名 用户在1天之内不能修改密码
chage -m 1 用户名 同上

(5)99999:用户密码最长有效期
用户必须在此有效期内更新密码,如果超时会被冻结

命令 说明
passwd -x 30 用户名 设定用户在30天内必须改密码
chage -M 40 用户名 设定用户在40天内必须改密码

(6)7:密码警告期限
在过期前制定天数内会发送警告信息给用户

命令 说明
passwd -w 2 用户名 密码过期前两天有警告输出
chage -W 2 用户名 同上

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

命令 说明
passwd -i 1 用户名 密码过期后仍可登陆系统的天数
chage -I 1 用户名 同上

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

命令 说明
chage -E 2018-11-11 用户名 用户在2018-11-11日会被冻结

(9)用户自定义列,目前没有启用

4.用户密码的更改

命令 说明
passwd 用户名 更改用户密码
passwd -l 用户名 在用户密码前加入“!!”
passwd -u 用户名 解锁用户密码前的“!!”
passwd -d 用户名 清空用户密码

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

猜你喜欢

转载自blog.csdn.net/qq_43830639/article/details/88978729