Linux基础:用户管理
(一)用户基础介绍
1、用户的含义:
用户就是系统使用者的身份,分为超级用户(root)和普通用户
用户信息文件:
分别为:用户:密码:uid:gid:说明:家目录:用户使用的shell
2、用户组的含义:
用户组就是一组用户的集合,类似于大学里的各种社团。
用户组信息文件:
分别为:组的名字:组密码:组id:组成员
3、用户的查看
(1)查看当前用户
使用命令whoami #查看当前用户
(2)系统中用户的查看
Id 【参数】用户 ##查看指定用户id信息
-u ##查看用户的uid
-g ##查看用户的gid
-G ##查看用户所在的所有组的id
-n ##显示名字而不显示id数字
4、用户的切换
su - 用户名称
注意:(1)su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境。
(2)su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换也需要。
(3)每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户。
5、用户在系统中的存储方式
/etc/passwd -------> 用户信息文件
/etc/group --------> 用户组信息文件
/etc/gshadow --------> 用户组认证信息
/home/username -------->用户家目录
/etc/skel/.* ---------> 用户骨架文件
(二)用户管理
1、用户建立(useradd)
useradd [参数] 用户名字
-u 6666 file 指定用户uid
-g 财务 file 指定用户初始组信息,这个组必须已经存在
-G 财务 file 指定附加组,这个组必须存在
-c “hello1” file 指定用户的说明
-d /home/lee file 用户家目录
-s /bin/sh file 用户所使用的shell,/etc/shells记录了用户能使用shell的名字
2、用户组建立(groupadd)
groupadd jishu ##建立jishu组
groupadd -g 888 huanhuan # 建立用户组并指定用户组的id
3、用户删除(userdel)
userdel huanhuan ##删除用户但不删除用户的配置文件
userdel -r huanhuan ##删除用户并删除用户的配置文件
4、用户组删除(groupdel)
groupdel 用户组 ##删除用户组
5、更改用户信息(usermod)
usermod 参数 用户
-l 新名称 更改用户名称
-u 8888 file 更改用户uid
-g caiwu file 更改用户的初始组
-G caiwu file 更改用户的附加组
-aG jishu file 添加用户的附加组
-c “hello” file 指定用户说明文字
-d /home/lee file 更改用户家目录的指向
-md /home/lee file 更改用户家目录
-s /bin/sh file 更改用户的shell
-L file 冻结帐号
-U file 解锁
6、用户认证信息( /etc/shadow )
cat /etc/shadow 查看用户认证信息
例如: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] 用户自定义列,目前没有启用
7、用户密码更改设置等
passwd [参数] 用户名称 更改用户密码
-e student 最后一次更改密码时间为0,会被强制改密码
-l student 在用户密码前加入!,锁定账号
-u student 解锁
-n 1 student 用户在1天之内不能修改密码
-x 30 student 设定密码在30天内必须改密码
-w 3 student 密码过期前3天有警告输出
-i 2 student 密码过期2天后仍可登录
-d student 清除用户密码
-L student 在用户密码前加入!
-U student 在密码不为空时使用
功能类似,命令不同:
chage 参数 用户
-m 1 student 用户在1天之内不能修改密码
-M 30 student 设定密码在30天内必须改密码
-W 3 student 密码过期前3天有警告输出
-I 2 student 密码过期2天后仍可登录
-E 2019-10-10 student 用户在2019年10月10日会被冻结
注意: 普通用户改密码时
1.必须知道当前用户原始密码
2.密码不能和帐号名称相似
3.密码不能是纯数字或纯字母
4.密码不能是有序的字母和数字的组合
8、用户授权
1.权力下放文件为/etc/sudoers
此文件可以用vim直接编辑,但是不提供语法检测
也可以使用visudo编辑此文件,visudo命令是提供语法检测的
2.下放方式
visudo
linux localhost=(root) /usr/sbin/useradd
##linux用户可以在localhost 主机以##root用户身份执行useradd命令
tom localhost=(root) NOPASSWD: /usr/sbin/useradd ##tom
用户可以在localhost主机以##root用户身份免密执行useradd
步骤:root用户下建立一个Linux用户→root用户下进入visudo,更在文件内容,在第99行左右加入 Linux 主机名称=(root) 命令→退出保存→切换到Linux用户下。
3、测试
su - tom
sudo useradd hello
原文:https://www.cnblogs.com/minligang539/p/10642002.html