目录
一:linux用户及用户组相关文件
1. /etc/passwd
保存用户信息的文件
系统管理员通过修改这个文件来完成对用户的管理工作,该文件对所有用户都是可读的。
- 超级用户root
root:x:0:0:root:/root:/bin/bash
# 解读
用户名: root
密码: x 占位符
用户ID: 0 linux系统规定root的uid为0
组ID:0 linux系统规定root的GID为0
用户全名:root
主目录(家目录):/root
登录shell:/bin/bash
2. /etc/shadow
用于存储用户密码信息的重要文件,通常被称为"影子文件",只有root用户有权限访问该文件
3. /etc/group
是一个在 Unix 和类 Unix 系统(如 Linux)中存储用户组信息的文件。它包含了系统中所有用户组的列表,每个用户组都有一个唯一的组名、组密码(通常为空)、组ID以及属于该组的用户列表
- 文件解读
lisen:x:1000:lisen
- 组名(Group Name):用户组的名称。
- 密码(Password):通常为空或包含加密后的密码。在某些系统中,可能使用
x
表示密码已被加密,但在现代系统中,密码通常被存储在/etc/gshadow
文件中。 - GID(Group ID):用户组的唯一标识符,用于系统内部引用。
- 用户列表(User List):属于该组的用户列表,以逗号分隔。
4. /etc/gshadow
组用户信息存储在 /etc/group 文件中,而将组用户的密码信息存储在 /etc/gshadow 文件中
文件解读
lisen:!!::lisen
组名:加密密码:组管理员:组附加用户列表
二.用户的基本管理
1.创建用户(useradd)
(1) 基本语法和选项
useradd [选项] 用户名 常用选项: -u 指定用户uid,唯一标识,必须唯一 -g 指定用户的默认组(主组) -G 指定用户附加组(一个用户可以加入多个组,但是默认组只有一个) -d 指定用户家目录(每个用户都有一个自己的家,并且默认在/home/xxx) -s 指定用户默认shell 查看系统支持的shell(命令解释器) [root@localhost ~]# cat /etc/shells /bin/sh 软连接文件 /bin/bash 系统默认的解释器 /usr/bin/sh 软连接文件 /usr/bin/bash 系统默认的解释器 其他shell: /sbin/nologin 不能登录操作系统,也叫非交互式shell /bin/dash /bin/tcsh /bin/csh 1.创建默认用户
2.根据需求创建用户
#1. 创建用户stu2,但是不能登录操作系统
#注意:-s 指定用户的默认shell,/sbin/nologin表示不能登录系统,也叫非交互
#2. 创建用户stu2,同时指定该用户的家目录为/rhome/stu2
#注意:-d 指定用户的家目录,前提该用户家目录的上一级目录/rhome必须存在
说明:指定stu2家目录/rhome/stu2时,只需要/rhome存在即可,系统会默认在/rhome下创建stu2目录
2.用户密码设置(passwd)
passwd 用户名 表示给指定用户修改密码
passwd 直接回车 表示给当前用户修改密码
说明:
1.管理员root可以给任何用户修改密码
2.普通用户可以自己给自己修改密码,但是密码复杂度要符合规范
2.1更改用户的账号信息(chage)
chage --help
-d 修改用户最后一次更改密码的时间
-m 修改密码的最小存活期(几天后才能修改密码)
-M 修改密码的最大存活期(每隔多少天更新一次密码)
-W 修改密码过期前警告(过期前几天发出警告)
-I 修改允许密码过期几天
-E 修改账户过期时间
-l 列出账户的信息
1.查看用户账号的相关信息命令:chage -l stu1
2.修改用户账号的过期时间:2030-03-10过期
3.修改用户账号的过期时间为10天以后:
3.修改用户信息(usermod)
基本语法选项 :
usermod [选项] 用户名
常用选项:
-u 指定用户uid,唯一标识,必须唯一
-g 指定用户的默认组(主组)
-G 指定用户附加组(一个用户可以加入多个组,但是默认组只有一个)
-d 指定用户家目录(每个用户都有一个自己的家,并且默认在/home/xxx)
-s 指定用户默认shell
-m 移动用户家目录,和-d一起使用
1. 修改stu2用户的UID为1100
修改前:
修改后:
2.修改stu4用户的默认shell为可登录系统:
3.修改stu5用户的家目录:
4.删除用户(userdel)
基本语法选项:
userdel [选项] 用户名
常用选项:
-r 删除用户并且移除其家目录和邮箱
-f 强制删除正在登录的用户
1. 删除stu4用户以及家目录
2.强制删除一个正在登录的用户