Linux文件权限

一,常规权限

常规权限指的是文件的针对文件所有者、不同用户组的可读、可写、可执行权限。在命令模式下执行ls -al可以得到:

drwxr-x---   4   root   root   4096   Sep  8   14:06   .gconf

-rw-r--r--     4   root   root   4096   Sep  8   14:06   install.log

首先第一块是由10位字符组成。第一个是表示这个文件是目录,或是文件,或是链接文件等。具体含义如下:

d:目录

-:文件

l:链接文件

b:设备文件中可供存储的借口设备

c:设备文件中串行端口设备

接下来九位字符分为三组,分别表示文件所有者、文件用户组和其他用户做所拥有的权限,以第一行的第一组为例:rwx

第一位r表示读权限,这里表示文件所有者对这个文件拥有读权限,当然根据这个文件的具体属性(即这个文件是目录还是一般的文件),读权限的具体含义不尽相同,但是这里统一指的是读权限;第二位w表示写权限;第三位x表示执行权限,这在不同文件情况下定义还是有区别的。也就是说对于一组字符来说,第一位表示读权限,第二位表示写权限,第三位表示执行权相,相应的位置上如果是对应的字符,则表示拥有此权限,如果为-,则表示不具有此权限。类似以第一组,第二组表示文件所在用户组的用户拥有读和执行的权限,但不具备写权限。第三组同理。

针对不同文件的具体属性,权限的具体含义也是不同的,这点非常重要。具体来说,可以分为目录和文件两大类:

1、文件

r:可读取此文件的实际内容;

w:可以编辑此文件的内容;

x:可以执行该文件;

2、目录

r:表示具有读取目录结构列表的权限;

w:表示具有改动该目录结构列表的权限:包括新建、删除、重命名和移动文件及目录

x:表示是否可以进入该目录;


二,默认权限

默认权限指的是在新建文件和目录是权限的默认值。由于文件和目录权限的具体含义不同,所以一般来说,默认的权限也是不同的。文件默认是没有x权限的,所以默认权限为:-rw-rw-rw-,而目录一般是具有所有权限的,所以默认权限为:drwxrwxrwx。 那么新建一个文件或者目录就是对应的权限么?当然不是。

这里还要减去一个umask配置的缺省权限,顾名思义就是默认权限中要减去的权限。先看示例吧:在root用户下输入umask指令,得到:0022

首先,这里的第一位数字0表示特殊权限,暂且不谈,后面三位分别表示三组权限的缺省权限。第一个0表示对于文件的所有者来说缺省权限为0,即无缺省权限,也就是具备所有的默认权限,以此类推,文件所在用户组和其他用户组的缺省权限都为w权限,就需要在默认权限中省去此权限。分到具体情况表现为:

新建文件:默认权限为-rw-rw-rw-,umask=0022,实际权限为-rw-r--r--

新建目录:默认权限为drwxrwxrwx,umask=0022,实际权限为dr-xr-xr-x


三,隐藏权限

隐藏权限主要用于系统安全方面。例如你想将一个文件设置为不可删除状态,以免你误删。那这个隐藏权限就起作用了。

首先,可以设置文件特殊权限:

chattr [+-=] [ASacdistu] 文件和目录

+:增加一个特殊参数

-:移除一个特殊参数

=:设定特殊参数集合

具体字母代表的含义为:

A:存取此文件时,访问时间不会被更改;

S:对文件的更改会同步到磁盘中;

a:文件数据只能增加,不能删除也不能修改,只有root才能修改;

c:自动压缩,读取的时候自动解压缩;

d:不会被dump;

i:不能被删除、改名、设定链接、无法写入,只有root才能修改;

s:如果被删除,将被完全移除出这个硬盘;

u:和s相反,如果被删除了,数据其实还在,还可以不就。

其次可以利用lsattr来查询隐藏的属性。










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值