Linux文件属性
- 查看Linux文件属性的命令:
ls -la
- 文件属性的解释:
(1)第一列:文件类型与权限
第一个字符:
d:表明文件为目录文件
-:普通文件
l:连接文件
b:表示设备文件里的可供存储的接口设备
c:设备文件里的串行端口设备,如鼠标、键盘
接下来的的字符,以3个为一组,第一组表示文件拥有者的权限,第二组表示文件所属组内的用户的权限,第三组表示其他用户的权限。
(2)第二列:文件连接数
每个文件都会将它的权限与属性记录到文件系统的inode号中。第二列这个属性表示有多少个不同的文件名链接到相同的一个inode号。(关于inode:理解inode)
(3)第三列:文件拥有者
(4)第四列:文件所属组
(5)第五列:文件大小,默认单位为B
(6)第六列:文件创建时间或最近修改时间
(7)第七列:文件名
Linux文件权限
Linux下文件的属性由r、w、x组成。Linux文件的基本权限有9个,分别是owner、group、others三种身份各有自己的read、write、execute权限。各种权限对应的数字如下:
r:4
w:2
x:1
权限的改变
权限的改变涉及到以下3个命令:
chgrp:改变文件所属组
chown:改变文件拥有者
chmod:改变文件的权限
chgrp用法:
命令格式:chgrp 选项 用户组 文件
命令选项:
-c或–changes:效果类似“-v”参数,但仅回报更改的部分;
-f或–quiet或–silent:不显示错误信息;
-h或–no-dereference:只对符号连接的文件作修改,而不是该其他任何相关文件;
-R或–recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
-v或–verbose:显示指令执行过程;
–reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
–help 显示帮助信息
–version 显示版本信息
chown用法:
命令格式:chown [选项]… [所有者][:[组]] 文件…
命令选项:
-c 显示更改的部分的信息
-f 忽略错误信息
-h 修复符号链接
-R 处理指定目录以及其子目录下的所有文件
-v 显示详细的处理信息
-deference 作用于符号链接的指向,而不是链接文件本身
–reference=<目录或文件> 把指定的目录/文件作为参考,把操作的文件/目录设置成参考文件/目录相同拥有者和群组
–from=<当前用户:当前群组> 只有当前用户和群组跟指定的用户和群组相同时才进行改变
–help 显示帮助信息
–version 显示版本信息
chmod用法:
命令格式:chmod 选项 权限 文件
命令选项:
c或–changes:效果类似“-v”参数,但仅回报更改的部分;
-f或–quiet或–silent:不显示错误信息;
-v或–verbose:显示指令执行过程;
–reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
<权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置;
<权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置;
<权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;
数字类型改变文件权限:
如要设置一个文件的权限为:owner=rwx=4+2+1=7;group=rwx=4+2+1=7;others=—=0+0+0=0,则可以用以下方式改变它的权限:
chmod 770 filename
符号类型改变文件权限:
u是user,代表文件的拥有用户;g是group,代表文件的所属组;o是others,代表其他用户;a是all,代表所有用户。
举例:
设置权限为774 :chmod u=rwx,g=rwx,o=r filename
设置权限为766 :chmod u=rwx,go=rw filename
为所有用户加上文件的写权限:chmod a+w filename
为所有用户去掉文件的执行权限:chmod a-x filename