解读:1.首先判断是否为Root用户
2.是root用户则直接允许操作
3.非root用户判断文件的uid和当前用户的uid是否一致
4.uid一致则根据文件的owner权限进行判断是否可以对该文件进行操作
5.uid不一致,则判断文件的gid和是否包含在当前用户的gid中
6.包含则根据文件的group的权限进行判断是否可以对该文件进行操作
7.不包含则根据文件的others的权限进行判断是否可以对该文件进行操作
11.设置Linux文件和目录的权限
1).字符表示法: chmod [-R] mode file_or_directory
-R 递归改变权限
mode模式类别
例:chmod u+r owner增加读权限
chmod a= 所有角色取消所有权限
chmod -R a=rwx 递归给目录及目录下所有子目录和文件增加读写执行权限
2.数字表示法
使用一组三位数字来表示,第一组代表owner的权限;第二组代表group的权限;第三组代表others的权限.
权限数字 r:4 w:2 x:1 -:0
例:rwx = 4+2+1=7
r-x = 4+0+1=5
12.用户的主要群组和次要群组
1).主要群组:
每个文件必须有一个组所有者,因此必须有一个与每个用户相关的默认群组,这个默认群组成为新建文件的组所有者,被称为用户的主要群组。
用户的主要群组中在/etc/passwd文件中的第四个字段定义.
2).次要群组:除了主要群组,用户也可以根据需要在隶属于其他群组,这写组被称为次要群组,在/etc/group文件中的第四个字段中定义
3).使用groups命令可以查看当前用户的所有群组,第一个为主要群组,后面的N个为次要群组
13.用户的管理
1).useradd [-u UID] [-g 主要群组] [-G 次要群组] [-m|M] [-c 说明] [-d 家目录位置] [-s shell]
1.-u 指定一个UID给该账号
2.-g 指定一个主要群组名称,会修改/etc/passwd文件
3.-G 指定一个次要群组名称,会修改/etc/group文件
4.-m 强制建立用户家目录,一般账号默认
5.-M 强制不要建立用户家目录,系统账号默认
6.-c /etc/passwd文件中的第五个字段,账号简述
7.-d 指定用户家目录位置,不要使用默认的值
8.-s 指定默认的shell,如果没有指定则默认是/bin/bash