目录
Linux 文件基本属性
注:下文中所提的 l 是字母 L 的小写
显示一个文件的属性以及文件所属的用户和组:
ll
ls -l
-rw-r--r-- 是什么? 在 Linux 中第一个字符代表这个文件是目录、文件或者链接文件等等。
- 当为 d 则是目录;
- 当为 - 则是文件;
- 若是 l 则表示为链接文档(link file);
- 若是 b 则表示为装置文件里面的可供存储的接口设备(可随机存储装置);
- 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
rw-r--r-- 是什么?以三个为一组,且均为 rwx 的三个参数的组合。其中,r 代表可读(read)、w 代表可写(write)、x 代表可执行(execute)。
注意:这个三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。
Linux 文件属主和属组
属主:该文件的所有者
属组:所有者的同组用户
更改文件属性
chgrp:更改文件属组
- 语法:chgrp [-R] 属组名 文件名
- -R:如果修改某个目录文件的属组时,加上 -R,那么该目录下的所有文件的属组都会更改。
重点:修改文件或目录的所属用户与权限,chown (change owner) 修改所属用户与组,chmod (change mode) 修改用户的权限。
chown:更改文件属主,也可以同时更改文件属组
- 语法:chown [-R] 属主名 文件名 或者 chown [-R] 属主名 : 属组名 文件名
- -R:如果修改某个目录文件的属组时,加上 -R,那么该目录下的所有文件的属组都会更改。
chmod:更改文件9个属性(权限)。Linux 文件属性有两种设置方法,一种是数字,一种是符号。
- 下面介绍使用数字方法设置文件属性:
Linux 文件的基本权限就有九个,分别是三种身份 owner/group/others(拥有者/组/其他)各自有的 r/w/x 权限。
文件的权限字符为:-rwxrwxrwx ,这九个权限三个三个一组,可以使用数字来代表各个权限,如,r = 4 , w = 2 , x = 1 。
每种身份各自的三个权限数字累加,例如文件权限是:-rwxrwxrwx ,该文件的权限数字就是 777 。
变更权限的指令是 chmod
- 语法:chmod [-R] xyz 文件或者目录
- xyz:是数字型的权限属性,为 rwx 属性数值的相加。
- -R:如果修改某个目录文件的属组时,加上 -R,那么该目录下的所有文件的属组都会更改。
2. 下面介绍使用符号方法设置文件属性:
三种身份 owner/group/others(拥有者/组/其他),这里用 u ,g ,o 代表三种身份的权限。此外,a 则代表 all ,既全部的身份。权限的添加、移除、设定使用 + 、 - 、= 。权限写成 r ,w ,x
变更权限的指令是 chmod
指令 | 身份 | 设置 | 权限 | 文件名或者目录 |
chmod | u g o a | + - = | r,w , r | 文件或者目录 |
- 语法:chmod 身份1设置权限,身份2设置权限,身份3设置权限 文件或目录
例如:将文件设置为 -rwxr-xr-- ,可以使用 chmod u=rwx,g=rx,o=r 文件名。
例如:移除全部身份的可执行权限(将文件权限去掉,而不改变其他已存在的权限):
chmod a-x 文件名 或者 chmod u-x,g-x,o-x 文件名