linux文件目录权限详解(20170101)
linux目录权限与文件权限是不同的,二者要相互配合,这是基础。
比如要读文件:目录至少要有x,文件至少要有r。
要写文件:目录至少要有x,文件至少要有rw。
要执行文件:目录至少要有x,文件至少要有rx。
要建,删文件:目录至少要有wx。与文件无关。
可见,文件最基础的是r,目录最基础的是x。
因为目录权限是控制目录结构的,而最基础的就是要能进入该目录(x),所以没有x,一切莫谈。
而建,删文件只和目录结构有关,所以与文件权限没有关系。
但linux内还有隐藏权限的存在,这使得删除文件不再只与目录有关!
chattr +a 只能增加,不可删除。 +i 不能修改,删除。
想查看隐藏权限么,lsattr吧。
那么问题来了,linux权限只有这10位么。不不,还有SUID,SGID,SBIT,这一大类呢。
这几个也是4 2 1的分布。
SUID一般只对二进制文件使用(shell scipt不可用哦),作用是使二进制文件获得文件拥有者的权限。主要用于提升命令权限。
SGID用于二进制文件时,是二进制文件获得组拥有者的权限。
用于目录时,使可进入该目录并拥有w权限的用户新建的文件(目录)组信息与该目录相同。主要用于团队合作开发。
SBIT只用于目录,作用是使该目录中的文件只有拥有者和root才能删除。
这一类都默认对象拥有x权限。作用时也是对x权限位做出改变。UID使用户权限x变为s, GID使组权限x变为s,BIT使other权限变为t.如果没有x权限, 相应的会变成大写SST哦(表示无法执行)。
另外linux还有权限掩码 umask这一说,主要用于新建文件(目录)的默认权限。root一般为022,普通用户一般为002。掩码是拿掉的权限。也就是说root对group和other拿掉了w。
从哪里拿掉呢?新建文件一般是不可执行的,所以是666,拿掉w后,就变成了644(rw-r--r--)。新建目录由于x是必给,所以是777, 拿掉w之后是755(rwxr-xr-x)。
注意不可直接减,因为文件总权限是666,没有x,所以如果umask是033,直接减就错了哦。(正确结果是rw-r--r--)
总的来说,linux文件目录权限显式的有12位。所以使用chmod时可以用4777这种完整形式哦。
不要忘了隐形权限,虽然上镜率比较低.......
附录:linux下删不掉文件的原因:
1、在本目录没有w权限,这是最明显的。
2、本目录设置了SBIT,而对象文件拥有者不是你。这个在/tmp目录比较明显。
3、文件设置了隐藏权限-i或-a,这两个设置了任一个(-i尤其厉害),即使是root也删不了!
linux文件目录权限详解(20170101)的更多相关文章
- Linux之权限详解
如何知道你有什么权限 我能干什么?这是我最关心的问题! 切换到普通用户 [root@luffy-01 ~]# su - pizza [pizza@luffy-01 ~]$ ls /root ls: c ...
- linux学习之路第八天(linux文件权限详解)
建议和我上一篇博客一起通读,效果更加 1.权限的基本介绍 通过一张图片解决疑惑(重点) rwx权限详解 rwx作用到文件 1)[r]代表可读(read) :可以读取,查看 2)[w]代表可写(writ ...
- Linux文件目录结构详解
整理自<鸟哥的私房菜> 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于 ...
- Linux文件目录结构详解 (转)
整理自<鸟哥的私房菜> 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能, ...
- [转]Linux文件权限详解
转自:http://blog.chinaunix.net/uid-25052030-id-174343.html 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问 ...
- linux文件权限详解
一.文件和目录权限概述在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问:允许一 ...
- CentOS \Linux文件权限详解
文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问:允许一个 ...
- LINUX 文件权限详解
ls -l // 查看文件的权限 等价于 ll 文件的权限信息查看 -rw-rw-r-- 1 ceshi ceshi 891 Aug 8 17:28 server drwxrwxr-x 10 cesh ...
- LInux ugo权限详解[修]
Linux 中的用户和组是用来控制使用者或者进程可以或者不可以使用哪些资源和硬件,是Linux权限控制最基本的方式. 用户和组可以看一下上一章的部分,先来看一下权限. 一.权限概览 在Linux下,使 ...
随机推荐
- EasyUI ComboGrid的绑定,上下键和回车事件,输入条件查询
首先我们先看一下前台的绑定事件 1.先定义标签 <input id="cmbXm" type="text" style="width: 100p ...
- hdu 1232, disjoint set, linked list vs. rooted tree, a minor but substantial optimization for path c 分类: hdoj 2015-07-16 17:13 116人阅读 评论(0) 收藏
three version are provided. disjoint set, linked list version with weighted-union heuristic, rooted ...
- 依然同上~ 点击获取当前option的value与text
$(".tjbtn").click(function(){ $('#leader').each(function(index, ele){ var leader = ele.val ...
- Informatica Lookup Transformation组件的Connect 与Unconnected类型用法
Informatica Lookup Transformation组件的Connect 与Unconnected类型用法及区别:下面是通一个Lookup在不同Mapping中的使用: 1. Conne ...
- sql inner join , left join, right join , union,union all 的用法和区别
Persons 表: Id_P LastName FirstName Address City 1 Adams John Oxford Street London 2 Bush George Fift ...
- excel表数据对比 个人收集
做了那么久猿,转行做测试以后居然折堕到要用excel来对比数据...~—~.真是人算不如天算...不过没关系,技多不压身. 首先,准备好两个对比的数据表,sheet1 跟sheet2 .在sheet1 ...
- web 调用WCF 每次都要重新编译才能正常使用 终于解决了
项目中不知从何时起出现了个奇怪的问题,每次运行web都要全部重新编译解决方案,否则单独编译web,总是会出现WCF 调用失败的情况(什么无法激活服务,什么协议对地址不可用啊,七七八八的问题),因为这个 ...
- uboot(二): Uboot-arm-start.s分析
声明:该贴是通过参考其他人的帖子整理出来,从中我加深了对uboot的理解,我知道对其他人一定也是有很大的帮助,不敢私藏,如果里面的注释有什么错误请给我回复,我再加以修改.有些部分可能还没解释清楚,如果 ...
- UIKit框架之UITouch
1.继承链:NSObject 2.获取触发点的位置 (1)- (CGPoint)locationInView:(UIView *)view :返回指定视图的触发点的位置 (2)- (CGPoint)p ...
- Struts2版本升级到struts2 2.3.15.1操作说明
Struts2的官网公布了一个远程命令执行漏洞,官方强烈建议升级到2.3.15.1或者以上版本,该版本包含校正过的struts2核心库. 我们之前开发项目主要采用的Struts2版本是2.2.1,本文 ...