一. 用户相关文件
-
/etc/passwd 用户信息文件
第一列:用户名
-
第二列:密码位
- 只是标识是否有密码,有密码:x
-
第三列:用户id
- 0 表示超级用户
- 1-499 表示系统用户(伪用户),系统保留的uid,此范围内的用户是不能登陆系统,用来运行系统或服务
- 1-99 是系统保留的账号,系统自动创建
- 100-499 预留给用户创建系统账号的
- 500-65535 表示普通用户
第四列:组id 添加用户时不指定用户所属组,那么会建立和用户名相同的组
第五列:用户说明
第六列:用户家目录
-
第七列:登陆shell
正常登陆用户是 /bin/bash
禁止登陆是 /sbin/nologin
-
/etc/shadow 用户影子文件
- 第一列:
- 第二列:
- 第三列:
- 第四列:
- 第五列:
- 第六列:
- 第七列:
- 第八列:
- 第九列:
-
/etc/group 组信息文件
- 第一列:组名
- 第二列:组密码位
- 第三列:组id
- 第四列:此组中支持的其他用户,附加组是此组的用户
- 初始组:每个用户只能有一个初始组,默认是和用户名相同
- 附加组:每个用户可以有多个附加组
/etc/gshadow 组影子文件
用户家目录 /home/用户名/
用户邮箱目录 /var/spool/mail/用户名/
-
用户模版目录 /etc/skel/
- 此目录下有什么文件,新建用户家目录就会有什么文件
- 此目录是新建用户家目录的模版目录
二. 用户管理命令
- 添加用户
- useradd 【选项】 用户名
- 选项:
-u 550 指定uid-g 组名 指定初始组,不建议手工指定- -G 组名 指定附加组,把用户加入组
- -c 说明 添加说明
-d 目录 手工指定家目录-s shell /bin/bash
- useradd 用户名:默认参数取自 /etc/default/useradd 和 /etc/login.defs 这两个文件的内容
- 常用命令(均使用默认值):useradd 用户名
- 设定密码
- passwd 【选项】用户名:修改指定用户的密码
- passwd:修改自己的密码
- 选项:
- -l:锁定用户(仅root用户可用)
- -u:解锁用户(仅root用户可用)
- --stdin:接收管道符输出的数据作为密码
- echo "密码" | passwd --stdin 用户名
- change -d 0 user:把密码修改日期归零,这样用户一登陆就要修改密码
- 修改的是 /etc/shadow 文件里 用户名为user的第三个字段
- 用户信息修改
- usermod 【选项】用户名
- 选项:
-u 550 指定uid-g 组名 指定初始组,不建议手工指定- -G 组名 指定附加组,把用户加入组
-c 说明 添加说明-d 目录 手工指定家目录-s shell /bin/bash
- 删除用户
- userdel -r 用户名
- -r:删除用户的同时删除用户的家目录
- userdel -r 用户名
- 切换用户身份
- su 【选项】用户名
- 选项:
- -:连带用户的环境变量一起切换
- "-" 最好加上,没加上只是切换用户,环境变量没有切换,加上会同时切换到新用户的环境变量
三. 组管理命令
- 添加用户组
- groupadd 组名
- 删除用户组
- groupdel 组名
- 把用户添加到组和从组中删除
- gpasswd -a 用户名 组名:添加用户到组
- gpasswd -d 用户名 组名:从组中删除用户