1.用户管理
Linux中主要是通过用户配置文件来查看和修改用户信息。
2./etc/passwd
使用man passwd 查看配置文件的路径
cat /etc/passwd
每个:分割一个字段
1)用户名称
2)密码标志x:真正的密码存放在/etc/shadow中,x表示有密码
3)UID(用户id)
0:超级用户
1-1000系统用户
1000-?普通用户
4)GID(用户初始组GID):
初始组是用户创建时候就有的,每个用户的初始组只有一个,一般和用户名有相同的组名。
附加组:指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。
5)用户说明
6)家目录
7)登陆后的shell:是linux命令 的解释器
/bin/bash:可以登录
/bin/nologin:不可以登录
二:/etc/shadow
1)用户名
2)加密密码:加密算法升级为SHA512散列加密算法
如果这里是!!或者 ”*“代表没有密码,不能登录
3)密码最后一次修改日期
使用的时间戳
时间戳换算成日期
date -d "1970-01-01 16066 days"
日期换算成时间戳
echo $(($(date --date="2021/09/26"+%s)/86400+1))
4)两次密码的修改间隔时间(和第三字段比)
5)密码有效期(和第三字段比)
6)密码修改到期前的警告天数(和第五字段比)
7)密码过期后的宽限天数
0:立即失效
-1:永远不失效
8)账号失效时间
用时间戳表示
9)保留
组信息存放在/etc/group
组密码存放在/etc/gshadow
用户管理相关文件:
注意:普通用户权限设置为管理员,将所属组改为0,但是家目录不会变。
变为超级管理员,uid设为0,组id设为原始的,家目录位置不会变
用户邮箱
/var/spool/mail/用户名
用户模板目录:
/etc/skel:创建新用户时,会从该目录下直接拷贝出来文件
用户添加 useradd:
-u:手工指定用户UID
-d:家目录
-c用户说明
-g:初始组
-G:附加组
-s:shell
修改密码:passwd
-S查询用户密码的密码状态
-l暂时锁定用户
-u:解锁用户
--stdin:可以通过管道符输出的数据作为用户的密码
修改用户信息usermod
-u:手工指定用户UID
-c用户说明
-G:附加组
-L暂时锁定用户
-U:解锁用户
修改密码状态;chage
删除用户:userdel
-r删除用户同时删除家目录
id用户名:查看用户ID
用户切换 su
用户组管理 :
添加 :group 【选项】 组名
-g:指定组ID
groupmod 【选项】 组名
-g修改组id
-n 修改组名
删除:groupdel
删除附加组直接 groupdel 组名
如果是初始组,需要先删除用户,再删除组
为已存在的组加入附加用户
gpasswd 【选项】 组名
-a用户名 ;把用户加入组
-d用户名 ;把用户从组删除