Linux文件权限与属性
来源:互联网 发布:淘宝怎么修改认证信息 编辑:程序博客网 时间:2024/05/16 07:22
- 在利用ls -l显示的文件属性中,第一个字段是文件的权限,共十位,第一位是文件类型,接下来三组分别为users group others 的权限,每组有rwx三个权限
对于文件来说
- read表示能否读到文件内容
- write表示能否新增、修改、删除文件内容(但不包括删除该文件)
- execute表示该文件能被系统执行的权限
具有可执行的权限与具有可执行的程序代码是两回事。文件具有 x 权限,只是具有可执行权限,至于能否执行成功,要看文件内容。
对目录来说
- read表示读取目录内文件信息的权限,是否能够查询该目录下文件名资料
对目录来说,r 权限相当于照射到该目录的灯光,对该目录下的文件进行很多操作可以不需要 r 权限,因为你提前知道各文件的位置,但如果无 r 权限,利用Tab键进行自动补全功能也将无法实现。 - write包括:
- 在该目录下新增文件与目录的权限
- 删除已建立的文件与目录的权限(不论该文件权限是什么,在Linux中,目录本质上也是一种文件)
- 将已存在的文件或目录进行更名
- 移动该目录下的文件或目录(包括复制该目录的权限)
复制或移动到其他目录需要只需要本目录的 x 权限,目标目录的 wx 权限
如果 testing 目录权限为744,所有者为root,那么对于一般使用者simon来说只有read权限无execute权限,如果目录testing内部存在777所有者为simon的文件test
在testing位置执行ls -l
将出现?????????? ?test
这时因为该目录无x权限,只有read权限,能读取到文件名,但其他信息无法读取
- 通常如果你想读一个文件的话,首先你要有这个文件所在目录的 x 权限才行,所以如果你想开放某个目录,至少要让其拥有 rx 这两个权限,但 w 权限不可随便给
- execute权限包括:
进入该目录使之成为工作目录的权限。
umask
- 新建一个文件或目录,其属性与umask有关,umask就是指定当前用户在建立文件或目录时的属性值。
- 不同用户具有不同umask。root用户的umask会去掉比较多的属性值,022,而一般身份用户umask为002;这是因为root身份建立的文件比较敏感,保护措施也较多
- 默认权限的属性上,文件与 目录是不同的(此属性非umask值,设定的umsk会在默认属性上再做删减)
- 对文件来说,默认没有可执行权限,因此默认属性值为:
-rw-rw-rw- (666) - 对目录来说,x关系到是否可以进入目录,因此默认所有权限开放,即:
-rwx-rwx-rwx- (777)
- 对文件来说,默认没有可执行权限,因此默认属性值为:
- umask制定的是“ 该默认属性值需要减掉的权限 ”,因此,若umask值为022,user并没有被减掉,group和others均被减去了 w 权限,所以,当用户:
- 建立文件时,权限值为:-rw-r–r–;
- 建立目录时,权限值为:-drwxr-xr-x-;
- 进行属性值计算时,最好用rwx符号进行加减,而不要使用数字进行,如6-3=3会出现错误,本来无x权限,减操作之后x出现。
隐藏属性
- chattr 设置隐藏属性
- i 属性,无法重命名,删除,设置连接,也无法写入或新增数据,即使root身份也不行。可以通过-i来还原。
- a 属性,这个文件将只能增加数据,而不能删除,只有root可以,如登陆文件可以设置a属性。
- lsattr : 查看隐藏属性
文件特殊权限
- SUID -s权限(s位置在user位则为SUID,在group位则为SGID)
- 更改密码需要使用/usr/bin/passwd指令,该指令会修改保存密码的文件即/etc/shadow文件,shadow文件权限为-r——–,只有root身份才可以“强制”修改,而passwd文件权限为-r-s–x–x。此 s 权限即为SUID。正常来说,一般用户身份也可修改自己的密码,但shadow文件只有root能修改,就是因为passed的 s 权限,会让当前用户暂时拥有此文件的拥有者身份,set User ID,而passwd的user为root,所以才能操作shadow文件。
- SUID只适用于二进制文件,(binary file)。不能用在批处理文件(shell脚本文件)上,因为shell脚本只是是将很多二进制文件调进来执行而已,所以SUID权限,还要看shell调用进来的二进制文件的本身属性,而不是shell脚本本身。
- SUID 对目录无效
- SGID -s权限
- SGID可用于文件或目录,有不同效果
- 文件:如果SGID设置在二进制文件上,无论用户是谁,执行该文件时,它的有效用户组(effective group)将变为该文件的用户组拥有者(group id)
- 目录:如果SGID设立的是在A目录,那么无论当前用户是谁,在A目录下建立的目录或文件的用户组都为A用户组,而不是当前用户组。
例
- Sticky Bit (SBit) -t 权限
只针对目录有效,如果一个目录具有SBit,则当用户在该目录下新建目录或文件时,只有文件拥有者与root有权删除。即使其他用户拥有该目录的 w 与 x 权限,也无法删除 - 可通过chown 7ugo filename来更改增加文件或目录的SUID\SGID\SBit权限
SUID:4
SGID:2
SBit:1 - s 权限位在user 或group的 x 位上,t 权限位在others的 x 位上
若此位原先有x权限,则 s 或 t 覆盖掉 x ,且为小写
若此为原先无x权限,则显示为大写的S或T
阅读全文
0 0
- Linux文件权限与属性
- Linux文件权限与属性
- linux文件与目录权限及其属性
- 修改Linux文件的属性与权限
- linux文件的权限属性与操作
- <一>Linux文件权限与属性详解--一般权限
- Linux文件权限与属性 的简单说明
- 如何改变Linux文件的属性与权限
- 如何修改Linux文件的属性与权限
- <二>Linux文件权限与属性详解--ACL
- <三>Linux文件权限与属性详解--SUID、SGID & SBIT
- <四>Linux文件权限与属性详解--chattr & lsattr
- <五>Linux文件权限与属性详解--su & sudo
- Linux文件权限和属性
- Linux文件权限与文件权限修改
- Linux命令(四)——文件查看与文件权限、属性设置
- LINUX系统文件权限属性详解
- Linux 文件与目录权限
- 【技术分享】《深入理解Elasticsearch》读书笔记
- 【资料合集】2017云栖大会·广东分会回顾合集:PDF下载
- No mapping found for HTTP request with URI完美解决
- html2canvas.js截取网页保存为图片
- 高数 05.03定积分的换元法和分部积分法
- Linux文件权限与属性
- JAVA | 37
- Listener(2)—案例
- unity内存优化教程笔记
- 李群、李代数在计算机视觉中的应用
- 制定一个智能的自动化数据结构
- 数据结构概括——链表,栈,队列
- js单例模式
- Ansible安装部署及常用模块详解