控制对文件的访问

第二单元

ACL :访问控制列表

一 权限列表的读取

getfacl   filename

# file:  file 文件名称

# owner:root 文件所有人

# group: root文件所有组

user::rw- 用户权限

user:westos:rwx 特殊指派用户及权限

group::rw-     组权限

mask::rwx      可指派最大权限

other::r - -   其他人权限

二 setfacl 用于设置或修改文件的 ACL(访问控制列表)

修改文件的访问控制列表后,原本 “ . ” 会变成“ + ”:

setfacl  -m  u:westos:rwx  filename           : 授予用户 westos 读写权限

例:root在/mnt下创建一个文件westos,此时该文件的所有人和所有组均属于root,想要让westos用户(对westos文件来说,westos用户为其他人)拥有rwx的权限

setfacl  -m  g:redhat:rw  filename        :授予组 redhat 读写权限

setfacl  -m  g:redhat:r  filename         :授予组 redhat 读的权限

setfacl  -x  u:westos  filename              :删除用户 westos 的 ACL 权限

setfacl  -m  o::-  filename               :修改其他所有人的权限为空,也可以写o::0

三 ACL 掩码及继承

1 具有 ACL 的文件拥有一个 “ mask” ( 掩码 ), 这个掩码既

能够限制拥有该文件的组的最大权限 , 有能 够限制 ACL

中的补充用户和组所拥有的最大权限

当你对文件的访问权限进行修改后,ls  -l  后出现的权限会发生变化,显现出来的是mask的值,要想看到真正的权限执行getfacl  filename 即可。

此时也不能够用chmod命令去修改权限值,因为此时修改的值为mask的值,会导致错误

修改方法:setfacl  -m  m:rwx  file

2 目录可以有 “ 默认 ACL” 条目 , 系统自动针对在该目录中创建的新文件设置这些条目,这类似setgid权限的方法( 针对目录时 ), 使得在该目录中创建的新文件归拥有该目录的组所有。

setfacl -m d:u:bob:rw directory

时间: 2024-10-23 10:42:09

控制对文件的访问的相关文章

.NET 控制Windows文件和目录访问权限研究(FileSystemAccessRule)

前一段时间学习了.net 控制windows文件和目录权限的相关内容,期间做了一些总结.想把这方面的研究跟大家分享,一起学习.其中不免得有些用词不太标准的地方,希望大家留言指正留言,我加以修改. 首先,我们利用一个方法作为示例: /// <summary> /// 为指定用户组,授权目录指定完全访问权限 /// </summary> /// <param name="user">用户组,如Users</param> /// <par

DACL原理.控制文件的访问权限(文件,注册表.目录.等任何带有安全属性的对象.)

目录 一丶简介 1.DACL是什么. 2.如何创建一个自己控制的文件. 3.SDDL是个什么鬼. 二丶 编写SDDL 控制的文件 一丶简介 1.DACL是什么. DACL称为自主访问的控制列表.是应用程序开发必要且重要的部分.由于空DACL 允许对所有用户进行类型的访问.所以一般程序开发中都是传入NULL 比如创建文件 原型: HANDLE CreateFileA( LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSE

asp.net 未能写入输出文件--“拒绝访问”的解决办法

? 概述 将网部署在IIS 7 上,访问本地磁盘路径的时候,提示"**文件拒绝访问". ? 解决办法 ? 将需要访问的文件夹赋于IIS_IUSRS完全控制的权限即可,不用添加NETWORK SERVICE用户的权限. ?

命令行修改文件文件夹访问权限 cacls, 修改hosts内容方法

背景 日常使用Windows的过程中,hosts(C:\Windows\System32\drivers\etc)文件可能被一些程序串改,因此在网上找到禁止/允许修改hosts文件的bat脚本,但是在使用过程中有遇到了新的麻烦,特记录下相关问题的解决方法. 禁止/允许修改hosts文件的bat脚本 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要登录的网址时,系统会首先自动

01 安装apache php配置 时区 环境变量 安装mysql 虚拟主机 文件夹访问权限 目录别名

php介绍 简介与历史 应用领域: php运行环境 php语言运行原理 安装apache: PHP的命令行运行模式(独立运行): 配置apache以运行php网页 配置php的基本运行环境 确定php配置文件(php.ini)的位置: 配置时区: 设置环境变量 检测apache配置文件语法 配置数据库连接机制 安装mysql数据库 虚拟主机配置 端口监听: 主机配置关键项 配置文件夹访问权限 主机别名设置 文件夹访问控制的文件控制方式 目录别名设置Alias 多站点配置: php介绍 简介与历史

创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放。一个滑动条用来控制视频播放位置,以10为步长跳进。另一个滑动条用来控制停止/播放

/* 创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放. 一个滑动条用来控制视频播放位置,以10为步长跳进.另一个滑动条用来控制 停止/播放 */ #include <cv.h> #include <highgui.h> int g_slider_position = 0; CvCapture* g_capture = NULL; int index = 0; bool flag = true; int g_slider_position1 = 0; void o

SQL Server 2008 R2 附加数据库 “尝试打开或创建物理文件 拒绝访问”的解决办法

其实是来自一篇SQL Server 2005同样错误的帖子,不过试了在SQL Server 2008 R2下面也有效,记录一下. 解决方法: 在所有程序—Microsoft SQL Server 2008 R2—配置工具—SQL Server 配置管理器,点击"SQL Server 服务",右边会显示正在运行的服务,以及对应的用户,右击SQL Server (MSSQLSERVER),选择“属性”,把内置帐户选择为"Local System",点击重新启动就OK了.

用了springmvc为何JS,CSS等文件就是访问不到

那就是为什么我配置好web.xml中的dispatchservlet后,js,css,甚至gif都不能正常显示了 我们来看看我们配置的web.xml 1 <!-- springMVC核心配置 controller,viewResolver,HandlerMapping --> 2 <servlet> 3 <servlet-name>dispatcherServlet</servlet-name> 4 <servlet-class>org.spri

C#对于驱动器,目录,文件的访问及递归

这儿所说的并不是对文件进行读写,只是针对于获取文件和目录等. 主要分为对驱动器,目录和文件三大类. 对驱动器需要用到DriveInfo类来实现 对目录需要用到DirectoryInfo类来实现 对文件需要用到FileInfo类来实现. 其中 FileSystemInfo类既可以访问文件,也可以访问目录. 具体看下面的代码. 首先是访问驱动器: //演示文件操作 /// <summary> /// 定义一个操作类 /// </summary> class FileClass { //