序章.可能用到的知识点
1.用户和组存储原理
在我们添加了一个用户时,系统会在家目录和etc目录下创建几个文件,这几个文件加起来本质上就是一个用户
用户组成
/etc/passwd 存放账号信息
/etc/shadow 存放密码信息
/var/mail 存放邮件信息
/home/ 存放家目录的信息默认来自/etc/sel/
/etc/passwd/etc/shadow
/var/mail
/home/
所以我们可以手动修改这几个文件达到增删改用户的操作。
2.手动添加用户
添加用户就是在/etc/passwd,/var/mail,/home/添加用户相关信息
大致流程如下:
编辑passwd
创建家目录
编辑邮箱
复制skel
修改所有文件需要权限和所有者所属组
切换用户
1.vim修该/etc/passwd
手动编写一个李华用户,保存退出
2.在/var/mail/目录下创建李华邮箱文件,并修改其默认权限,所属
3.创建家目录,修改权限、所属,并拷贝/etc/skel下的几个文件
3.切换用户lihua测试创建用户成功与否
3.创建用户默认属性
刚刚我们了解到,创建用户linux执行几个操作,但是怎么做到的呢?它怎么知道要创建home/目录下创建账号家目录,它怎么知道skel文件在/etc/skel中,为什么mail文件要放在/var/mail下?
这些相关配置可以在/etc/default/useradd中得到答案
cat /etc/default/useradd 查看该文件
显示结果如下,这些就是我们创建用户时的默认配置,当然也可以用vim修改
useradd defaults file
GROUP=100 当创建用户时不指定组,并且/etc/login.defs中USERGROUPS_ENAB 为no时,分配一个gid为100的组
HOME=/home 家目录所在
INACTIVE=-1 不活动的禁用(启用)
EXPIRE= 过期时间,没给表示永久
SHELL=/bin/bash 默认shell
SKEL=/etc/skel 被放在用户家目录里面的skel文件
CREATE_MAIL_SPOOL=yes 是否添加添加邮件池
4.相关目录中文件讲解
4.1 /etc/passwd用户信息文件
root:x:0:0:root:/root:/bin/bash
从左至右
标识符 | 含义 |
---|---|
root | 用户名 |
x | 密码占位符 |
0 | uid |
0 | gid |
root | 描述昵称 |
/root | 家目录 |
bin/bash | shell |
4.2 /etc/group组文件
root:x:0:
从左至右*
标识符 | 含义 |
---|---|
root | 组名 |
x | 组密码 |
0 | gid |
附加用户名 |
4.3 /etc/shadow密码文件
如标题所述此目录主要保存的是密码文件和一些参数
bin:*:18367:0:99999:7:::
root:$6$5/9EtBMY2mvladW.$3FcarIXdNfrksTIol2QLSWEOiztmXDd9DiZS1I9AvlNY3g07661mlC0AYCgNsma1VoTyY1ckLGQdFMgUwtvVg0::0:99999:7:::
除密码外的选项从左至右
用
用户密码 !! 表示没有
最近修改密码时间到1970.1.1 过去的天数
密码最短使用期限 为0不限制
密码最长使用期限 单位天
密码使用多长时间后必须改密码 99999表示可不改
密码过期警告时间 提前多少天数
密码过期宽限时间 登录先该密码,过了就锁定,找root
密码过期精确时间 99999 永不过期
保留字段
单独用root记录讲一下密码
root:$6$5/9EtBMY2mvladW.$3FcarIXdNfrksTIol2QLSWEOiztmXDd9DiZS1I9AvlNY3g07661mlC0AYCgNsma1VoTyY1ckLGQdFMgUwtvVg0::0:99999:7:::
密码可用"$"符号划分为几部分
$6
$5/9EtBMY2mvladW.
$3FcarIXdNfrksTIol2QLSWEOiztmXDd9DiZS1I9AvlNY3g07661mlC0AYCgNsma1VoTyY1ckLGQdFMgUwtvVg0
第一部分表示加密的算法
第二部分表示盐值
第三部分表示密码加盐后的密文
4.5 /etc/gshadow组密码信息
systemd-journal:!::
systemd-coredump:!::
systemd-resolve:!::
tss:!::
polkitd:!::
用":"分割
第一个表示组名
第二个表示组密码
第三个表示组时间
4.6/etc/login.defs
只提一下几个选项
MAIL_DIR 邮件目录
UMASK 022 权限掩码
HOME_MODE 0700 家目录权限
PASS_MAX_DAYS 999