Linux文件目录权限浅谈
1、基本权限三种
(1)r (read) 读
针对目录,有读(r)权限就代表能对此目录有列表功能,就是可以执行ls命令进行查看,另外还有cp的功能。
针对文件,有读(r)权限就代表能对此文件有阅读功能,可以通过cat等命令查看文件内容。
(2)w (write) 写
针对目录,有写(w)权限就代表着在此目录下创建文件和目录,可以通过touch,mkdir等命令创建文件和目录,另外还可以删除此目录下的文件。
针对文件,有写(w)权限就代表着对此文件可以写入新的内容和修改文件内容。
(3)x (execute) 执行
针对目录,有执行(x)权限就代表能进入此目录,利用cd等命令进入此目录
针对文件,有执行(x)权限就代表可以执行此文件。
例题:
(4)拷贝文件到目录中,需要对此目录具备哪些权限?
-----拷贝文件到目录时,需要写数据到目录中,所以需要对此目录有写的权限(w),另外写的动作是一个执行的过程,所以还需要对此目录有执行(x)权限才行。
(5)什么情况下可以删除文件或者目录
-----能不能删除文件与它本身的权限和owner,group无关,能否删除需要看它的上一级目录的权限,也就是说当前用户对上一级目录有写(w)和执行(x)权限,就可以删除此目录下的文件或子目录
是否能删除目录,要求
1、如果是空目录,只要对它的上级有写(w)和执行(x)权限,就可以删
2、如果是非空目录,那么当前用户要对这个目录里的包括上级目录、本身目录以及所有的子目录都有写(w)和执行(x)权限,才可以删除非空目录。
(6)什么时候会出现强制保存的选项?什么时候可以强制保存,什么时候不能?
只有当用户对文件没有写权限的时候,才会在保存时出现要你使用!强制保存的选项;比如上级目录对user1没有写权限,目录里的文件对user1也没有写权限,那么user1不能强制保存这个文件(--但是这个文件是属于其它用户的,才不能强制保存,如果这个文件就是属于user1,文件和目录都没有写权限,也可以强制保存)
而如果把上级目录改为对user1有写权限,就算是目录里的文件对user1没有写权限,user1也可以强制保存这个文件,并且保存后,属主和属组会变为user1;这种情况会比较混乱(特别是文件服务器的情况),所以目录一般默认权限就是755,避免除开目录属主外的用户能够写
--总结:
(1)只有当用户对文件没有写权限的时候,才会在保存时出现要你使用!强制保存的选项
(2)你是文件的所有者,不管对上级目录还是文件本身有何权限,都可以强制保存。
(3)你不是文件的所有者,对上级目录有写权限,就可以强制保存,并且强制保存后,owner和group改变成你自己这个用户了。
2、特殊位导致权限变化一般有以下两种
(1)特权位(s)
setuid s位在前三位
setgid s位在中间三位
特权位只针对文件有效,并且只能添加在权限位的前三位和中间三位;一个可执行文件拥有s位并且在前三位时,当别的用户来执行此文件,使用的权限是此可执行文件属主权限;如果一个可执行文件拥有s位并且在中间三位时,当别人的用户来执行此文件,使用的权限是此可执行文件属组的权限
[ test]# ll http://www.qixoo.qixoo.com/etc/shadow
-r-------- 1 root root 1425 Mar 7 16:42/etc/shadow
[ test]# ll http://qkxue.net/usr/bin/passwd
-rwsr-xr-x 1 root root 22960 Jul 17 2006/usr/bin/passwd
--通过上面的权限可知,普通用户修改密码使用passwd能改自己的密码,但是密码是存放在/etc/shadow里,也就是说普通用户对/etc/shadow没有写的权限,但passwd可执行文件的前三位有s位,所以普通在调用passswd时是用的root的权限
(2)粘帖位(t)
当一个目录共享给其他用户使用并且用户可以上传文件和删除文件,但是只能删除自己的文件,那么就必须用到粘帖位(t),特别用在/tmp目录。只针对目录有效。
有t位的目录,任何用户在有权限的情况下是可以创建文件和目录,就算是有权限删除别人的文件或目录也不能删除,同时互相也不能强制保存修改,自己只能删除自己创建的目录,用于一些共享上传的文件服务器场合
[ test]# ll -ld /tmp/
drwxrwxrwt. 72 root root 12288 Aug 23 20:26 /tmp/
--s位和t位都是占用x位,那么是否有x位,主要是看s或t的大小写来判别;
大写,表示没有执行权限x位
小写,表示有执行权限x位
3、隐藏属性权限--
i 权限,具备i 权限的文件将无法删除,修改,重命名等
命令查看隐藏权限和修改隐藏权限有以下命令
lsattr --listfile attributes on a Linux second extended file system
chattr --change file attributeson a Linux second extended file system
[ /]# lsattr /etc/shadow
------------- /etc/shadow
[ /]# chattr +i/etc/shadow ---添加i 权限
[ /]# lsattr /etc/shadow --有了i 权限后,此文件就不能改动,root用户都不行
----i-------- /etc/shadow
4、修改权限,通常使用的命令
(1)chmod --change file access permissions
(2)chown --change file owner and group
(3)chgrp --change group
推荐阅读:
Linux ACL权限规划:getfacl,setfacl使用
Linux权限补充:rwt rwT rws rwS 特殊权限
Linux用户及用户组权限
Linux文件目录权限浅谈的更多相关文章
- linux文件目录权限详解(20170101)
linux目录权限与文件权限是不同的,二者要相互配合,这是基础. 比如要读文件:目录至少要有x,文件至少要有r. 要写文件:目录至少要有x,文件至少要有rw. 要执行文件:目录至少要有x,文件至少要有 ...
- Linux特殊符号浅谈
Linux特殊字符浅谈 我们经常跟键盘上面那些特殊符号比如(?.!.~...)打交道,其实在Linux有其独特的含义,大致可以分为三类:Linux特殊符号.通配符.正则表达式. Linux特殊符号又可 ...
- linux安全加固浅谈
难易程度:★★★阅读点:linux;python;web安全;文章作者:xiaoye文章来源:i春秋关键字:网络渗透技术 前言linux被越来越多的企业使用,因此掌握一些基本的linux安全加固是有必 ...
- linux 文件目录权限
文件目录权限: 什么是文件权限: 在Linux中,每个文件都有所属的所有者,和所有组,并且规定了文件的所有者,所有组以及其他人对文件的,可读,可写,可执行等权限. 对于目录的权限来说,可读是读取目录文 ...
- linux文件目录权限和系统基础优化命令(yum源配置)
一.用户 1.介绍 我们都知道linux中有root用户和普通用户,但是同样是普通用户,为什么有些用户的权限却不一样呢?其实这就类似于我们的QQ群,root用户就是QQ群主,他拥有最高的权利,想干什么 ...
- linux文件目录权限操作
设置修改文件的属主或修改文件属组 [root@localhost ~]# ll test.txt -rw-r--r--. 1 root root 0 Oct 21 12:01 test.txt [ro ...
- Linux文件目录权限总结
代表字符 权限 对文件含义 对目录含义 r 读权限 允许查看文件内容 允许列出目录中内容 w 写权限 允许修改文件内容 允许在目录中创建或删除文件 x 执行权限 允许执行文件 允许进入目录
- 16. Linux 文件目录权限
# 文件参数 d:表示是一个目录-:表示这是一个普通的文件l: 表示这是一个符号链接文件,实际上它指向另一个文件b.c:分别表示区块设备和其他的外围设备,是特殊类型的文件s.p:这些文件关系到系统的数 ...
- linux服务器开发浅谈
[开发前准备] 在进行linux服务器开发之前,必须很清楚地了解所开发的对象需要考虑的相关问题比如:功能架构:提供服务的模块体系结构稳定性:服务器的出core率,内存泄露情况性能:请求与返回的速度与正 ...
随机推荐
- 分享一个刷网页PV的python小脚本
下面分享一个小脚本,用来刷网页PV. [root@huanqiu ~]# cat www.py #!/usr/bin/python# coding: UTF-8import webbrowser as ...
- javascript中的数组操作
1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...
- zepto的tap事件的穿透分析
首先是什么情况下会发生zepto(tap)的事件穿透: 当一个弹出层用tap点击之后这个层隐藏或者是移走,都会触发下面对应位置的点击事件(click)和一些标签的默认行为(a标签的跳转.input获取 ...
- Managing the Lifecycle of a Service
service的生命周期,从它被创建开始,到它被销毁为止,可以有两条不同的路径: A started service 被开启的service通过其他组件调用 startService()被创建. 这种 ...
- 【WPF】WPF通过RelativeSource绑定父控件的属性
1.后台代码实现绑定父控件的属性 RelativeSource rs = new RelativeSource(RelativeSourceMode.FindAncestor); //设定为离自己控件 ...
- OAF 中对文字实现html效果及对超级长文本实现默认换行,对只读的messageTextInput中的内容自动换行
今天遇到一个需求,客户注册页面客户化了一个超级长的注册须知,内容很多.但是样式相对又要做起来好看点. 注册须知的内容使用多个message拼接而成. 老大说rawText支持html样式,于是我想到了 ...
- C#基础——谈谈.NET异步编程的演变史
http://www.cnblogs.com/fzrain/p/3545810.html 前言 C#5.0最重要的改进,就是提供了更强大的异步编程.C#5.0仅增加两个新的关键字:async和awai ...
- [CareerCup] 1.3 Permutation String 字符串的排列
1.3 Given two strings, write a method to decide if one is a permutation of the other. 这道题给定我们两个字符串,让 ...
- [CareerCup] 13.7 Node Pointer 节点指针
13.7 Write a method that takes a pointer to a Node structure as a parameter and returns a complete c ...
- 《信息安全系统设计基础》第一次实验报告--Linux 基础入门
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全设计基础 班级:1352 姓名:何伟钦 学号:20135223 成绩: 指导教师:娄嘉鹏 ...