文件的基本属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一个文件(包括目录文件)的权限做了不同的规定。
查看文件的属性
用ls -l的方式查看文件的属性:
- 第0位确定文件类型
- 第1~3位确定属主拥有该文件的权限
- 第4~6位确定属组拥有该文件的权限
- 第7~9位确定其他用户拥有该文件的权限
更改文件属性
chgrp 更改文件属组
语法:
chgrp [-R] 属组名 文件名
举例:
在 /home/zxq 目录下,以root身份新建一个Test文件夹,可以看到其属主与属组均是root
键入命令:chgrp zxq Test,发现文件的属组已经改变
chown:更改文件属主,也可以同时更改文件属组
语法:
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
举例
还以Test文件夹为例。
键入命令:chown zxq Test 发现文件的属主已经改变
键入命令:chown root:zxq Test 发现文件的属组与属主均已改变
chmod:更改文件9个属性
Linux文件属性有两种设置方法,一种是数字,一种是符号。
Linux文件的基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。
我们可以使用数字代表各个权限:
- r: 4 = 22,
- w: 2 = 22
- x: 1 = 20
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为:[-rwxrwx—]
- owner : 4 + 2 + 1 = 7
- group : 4 + 2 + 1 = 7
- others : 0 + 0 + 0 = 0
我们变更权限时,该文件的权限数字就是770
语法:
chmod [-R] xyz 文件或者目录
选项与参数:
- xyz:就是刚刚提到的数字类型的权限属性,为rwx属性数值的相加
- -R:进行递归(recursive)的持续变更,也就是连同次目录下的所有文件都会变更
举例:
依旧以Test文件夹为例,Test文件夹目前的属性是rwxr-xr-x,换算成数字也就是755
现在把Test文件夹的属性更改为rwxr–r--,换算成数字也就是744
键入命令chmod 744 Test 属性已更改
还有另一种方法是符号类型改变文件权限。
用u(user),g(group),o(others)代表三种身份的权限。
此外,a则代表all,即全部的身份。读写的权限可以写成r,w,x,也就是可以使用下表的方式来看:
命令 | 身份 | 符号 | 权限 | 作用对象 |
---|---|---|---|---|
chmod | u | +(加入) | r | 文件或目录 |
g | -(除去) | w | ||
o | =(设定) | x | ||
a |
举例:
将Test文件夹的属性设置为:rwxrw-rw-
键入命令 chmod u=rwx,g=rw,o=rw Test
将Test文件夹的属性设置为:rwxrwxrwx
键入命令 chmod a=rwx Test
将Test文件夹的属性设置为:rwxrwxrw-
键入命令 chmod o-x Test