目录
一.用户账号
二.组账号
三.标识号
四.用户账号文件介绍
1. /etc/passwd :存放用户信息文件
2. /etc/shadow:存放用户密码信息的文件
五.管理用户账号相关命令
1.useradd:添加用户账号
2.passwd:修改密码
3.usermod:修改用户账号属性
4.userdel:删除用户账号
5.echo:快捷设置用户密码
六.用户账号和组账号配置文件
1.家目录基本配置文件
2.组账号文件
六.管理组账号相关命令
1.groupadd:添加组账号
2.gpasswd:添加删除组成员
七.查询账号信息相关命令
八.读写执行权限
九.关于文件或目录的权限和归属命令
1.chmod:设置文件和目录的权限
2.chown:设置文件和目录的归属
3.umask:决定新建文件目录的权限
Linux有三大用户类型,介绍如下:
1.超级用户:拥有最高权限,root用户是Linux操作系统中默认的超级用户账号,对本主机拥有最高的权限,系统中超级用户是唯一的。
2.普通用户:权限受限的用户,账号需要由root用户或其他管理员用户创建,拥有的权限会受到限制,处理问题收到限制,一般只在用户自己的宿主目录中拥有完整权限。
3.程序用户:给程序用的用户,在安装Linux操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,仅用于维持系统或某个程序的正常运行。
1.基本组(私有组):有且只有一个,一般为创建用户时指定的组。
2.附加组(公共组):可有(可以有多个)可无 ,用户除了基本组以外,额外添加指定的组。
1.UID(User IDentity ,用户标识号)
生成用户的时候,会自动分配一个 uid 的账号,系统去分别用户的时候不是以 用户名 而是以 uid号作为区分。
超级用户UID | 0 | 0 |
---|---|---|
普通用户UID | CentOs6以前 500+ | CentOs7以后 1000-60000 |
程序用户UID | CentOs6以前 1-499 | CentOs7以后 201-999 |
root 不一定是超级管理员 uid=0 的才是超级管理员
2.GID(Group IDentifi,组标识号)
与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID(Group IDentity,组标识号)。root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。
系统上所有的用户信息都存在这个文件中
共七个字段,七段用冒号(:)隔开
第一字段:root:用户名
第二字段:x:密码占位符
第三字段:0 : uid 用户编号
第四字段:0:gid 组编号
第五字段:root: 备注
第六字段:/root: 家目录的位置
第七字段: /bin/bash:用户默认加载的 shell 环境
保存用户的密码、账号有效期等信息
root:$6$4V92DDnjpoaeXmmD$Dx./:18318:0:99999:7: : :
第一字段:root:用户名
第二字段:$6$4V92DDnjpoaeXmmD$Dx:算法加密后密码 如果此处 为* !! 禁止登陆
第三字段:18318: 从1970.1.1 (linux 诞生的日期) 到 今天 过了19318
第四字段:0: 代表不限制 更改密码的时间 ,如果写10 代表10天内不能修改
第五字段:99999:密码 有效期 约等200年 永久
第六字段:7:密码到期前 7天 提醒你
第七字段: 密码过期后的宽限天数 30 天 还能登陆
第八字段: 账号失效时间
第九字段:无用字段,保留字段收费内容
对新建用户的基本信息进行修改 (对已有用户无法设置)
格式:
useradd [选项] 用户名
-u 指定uid
-d 指定家目录
-M 不建立家目录
-s 指定shell类型
建立一个用户 指定uid(-u) 不建家目录(-M) 不让这个用户登录(-s /sbin/nologin)
-e 账户失效时间,指定过期时间-e yy-mm-dd
-g 指定基本组的 gid
-G 指定附加组的gid
格式:
passwd [选项] 用户名
-l 锁定用户 ,不让用户登录
-S 查看是否锁定
-fu 强制解锁
-d 清空密码,不需要密码登录
useradd 新建用户的信息进行修改
已存在的用户需要 使用 usermod 进行修改
格式:
usermod [选项] 用户名
-l 更改用户名
-u 指定uid
-d 指定家目录
-M 不建立家目录
-s 指定shell类型
-e 账户失效时间 yy-mm-dd
-g 指定基本组的 gid
-G 指定附加组的gid
-L 锁定用户 passwd -l 一样
-U 解锁用户 passwd -u 一样
格式:
userdel [-r] 用户名
添加-r选项时,表示连用户的宿主目录—并删除
格式:
echo 密码 | passwd --stdin 用户名
.bash_logout
#退出用户后 ,关机之前 会执行此文件里面的命令
.bash_profile
.bashrc
#进入用户后会执行里面的所有命令
etc /passwd :用户信息
etc /shadow :用户密码,保存组账号的密码信息
/etc/group: 保存组账号基本信息
格式:
groupadd 组名
格式:
gpasswd [选项] 组帐号名
选项 | 功能作用 |
---|---|
-a | 向组内添加一个用户 |
-d | 从组内删除一个用户成员 |
-M | 向组内批量添加用户 |
1.groups:查询用户所属组
格式:
groups 用户名
2.id:查询用户身份标识(uid、gid和组)
格式:
id 用户名
3.finger:查询用户账号的详细信息
格式:
finger [用户名]
使用该命令前需要先下载安装,命令如下
[root@localhost ~]#yum install finger -y
读 | r | 4 |
写 | w | 2 |
执行 | x | 1 |
读写执行 | rwx | 7 |
例题:
1.一个文件可以被删除是和什么有关?和文件夹权限有关,和自己本身没有关系。
能不能看文件是和用户有关,而不是和命令有关,当前用户有权限就可以看,没有权限就不可以看。
文件夹最小权限是执行,如果没有执行权限,一样不可以打开
目录没有执行权限什么都做不了
文件没有读的权限,无法进行复制操作
2.cp /etc/issue /mnt/dir 这条命令中 ,cp、etc、issue、dir和mnt分别最低需要什么权限?
/bin/cp 需要x权限 ; /etc/ 需要x权限 ; /etc/issue 需要r权限 ;
/data 需要x权限 ; /data/dir 需要w,x权限
3.作为超级管理员,别人没有读写权限,我有读写权限,那么别人没有执行权限,我有吗?
别人有执行权限,我也有执行权限,如果别人没有执行权限,我也没有执行权限
格式:
chmod [ugoa] [+-=] [rwx] 文件或目录
u:属主 g:属组 o:其他用户 a:所有用户
+:增加 -:去除 =:设置权限
r: 读 w:写 x :运行
格式:
chmod nnn(3位八进制数) 文件或目录
此时 r 八进制为4 w 八进制为2 x 八进制为1
常用选项:-R:递归修改指定目录下所有子项的权限
格式:chown 属主 文件或目录
chown :属组 文件或目录
chown 属主:属组 文件或目录
常用选项:-R:递归修改指定目录下所有子项的权限
文件落地最高权限 666 (为安全性考虑,文件没有执行权限) ;文件夹落地最高权限 777
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022