2.1.1 权限和归属概述
一、权限和归属
1.访问权限(基本访问权限)
–读取:允许查看内容-read
–写入:允许修改内容-write
–可执行:允许运行和切换-excute
说明:
主要针对文本文件
2.归属关系
–所有者:拥有此文件和目录的用户-user
–所属组:拥有此文件/目录的组-group
–其他用户:除所有者、所属组以外的用户
二、解析文件/目录权限
1.ls -l 查看权限
–输出信息包括7个字段
以“-”开头表示文本文件
以“d”开头表示目录
以“l”开头表示快捷方式
在根目录下,默认情况下/tmp目录具备特殊权限
[root@localhost03 ~]# ls -l /etc/passwd
-rw-r--r--. 1 root root 2778 Sep 2 02:09 /etc/passwd
-rw-r--r--:表示权限位
1:表示硬连接数,如果目标是目录表示子目录的个数
root:属主
root:属组
2778:大小
Sep 2 02:09:最后修改时间
/etc/passwd:文件/目录名称
2.1.2权限控制
一、设置基本权限
1. chmod命令
1)格式
chmod [ugoa] [+-=] 文件
chmod [nnn] 文件
[root@localhost03 ~]# mkdir /ceshi1
[root@localhost03 ~]# ls -ld /ceshi1/
[root@localhost03 ~]# chmod u-w /ceshi1
[root@localhost03 ~]# ls -ld /ceshi1/
[root@localhost03 ~]# chmod u+w /ceshi1
[root@localhost03 ~]# ls -ld /ceshi1/
[root@localhost03 ~]# chmod g=rwx /ceshi1
[root@localhost03 ~]# ls -ld /ceshi1/
[root@localhost03 ~]# chmod u=rwx,g=rx,o=--- /ceshi1/
[root@localhost03 ~]# ls -ld /ceshi1/
说明:
- o带有x权限时,目录会有绿色的背景
2)常用命令选项
– R:递归修改权限
[root@localhost03 ~]# mkdir -p /opt/aa/bb/cc/dd/
[root@localhost03 ~]# chmod -R o=--- /opt/aa/ #递归修改目录下子目录的权限
2.Linux的权限判定
判断用户对于该数据所处的身份
查看相应身份权限位
说明:
针对目录
r:查看目录的内容
w:可以新建/删除/改名,该目录的内容(对目录本身无法进行修改),想要修改目录本身,需要拥有该目录父目录的w权限
x:切换到此目录(进入到此目录)
说明:
1.当用户只有r权限时,只能查看目录下文件的内容,不能向文件中写入
2.当用户只有r权限时,ls目录时候,只能查看目录内有哪些文件,除此之外什么都不会显示
3.当用户只有w权限时,只能修改文件内的内容,不能查看文件的内容
4.w权限不光能创建文件,也可以删除文件
5.想要修改目录本身时,需要有该目录父目录的w权限
6.用户能否进入到目录中与x权限有关
7.当用户只有x权限时,可以进入目录,对目录不能进行其他的操作
8.如果对目录下的文件有权限,但是在目录本身没有权限,也是不能对目录进行修改
3.权限位的8进制表示
– r、w、x分别对应4、2、1后3组分别求和
分组 | User权限 | Group权限 | Other权限 |
---|---|---|---|
字符 |
[root@localhost03 ~]# ls -ld /ceshi1/ #查看权限
drwxrwx--x. 2 root root 6 Sep 4 09:27 /ceshi1/
[root@localhost03 ~]# chmod 750 /ceshi1/ #更改权限
[root@localhost03 ~]# ls -ld /ceshi1/ #查看权限是否修改
drwxr-x---. 2 root root 6 Sep 4 09:27 /ceshi1/
二、文件和目录的默认权限
1.umask命令
– 一般文件默认不给x执行权限
– 取决于umask 设置
[root@localhost03 ~]# umask
0022
说明:
第一个0代表特殊权限
第二个0代表所有者
第三个2代表所属组
第四个2代表其他人、
使用目录最大的权限减去022得出的结果是目录默认权限
文件的默认权限是644,默认是不会拥有x权限
[root@localhost03 ~]# umask -S
u=rwx,g=rx,o=rx
2.去除umask设置,提高安全性
– 去除默认的所有other权限
[root@localhost03 ~]# umask 027 //修改默认权限位750
3.创建文件时,直接设置权限
–mkdir的-m选项
[root@localhost03 ~]# mkdir -m 777 /ceshi4 #创建目录时,直接修改目录权限时
[root@localhost03 ~]# ls -ld /ceshi4
drwxrwxrwx. 2 root root 6 Sep 6 08:41 /ceshi4
2.1.3归属控制
1.设置归属
-chown 属主 文件
-chown 属主:属组 文件
-chown :属组 文件
2.常用命令选项
–R:递归修改权限
3.练习
[root@localhost03 ~]# groupadd ceshi1
[root@localhost03 ~]# chown ceshi1 /ceshi #修改所有者
[root@localhost03 ~]# chown ceshi1:cehshi /ceshi1/ #修改所有者和所属组
[root@localhost03 ~]# chown :ceshi2 /ceshi1/ #修改所属组