linux下文件扩展权限ACL的设置.doc_第1页
linux下文件扩展权限ACL的设置.doc_第2页
linux下文件扩展权限ACL的设置.doc_第3页
linux下文件扩展权限ACL的设置.doc_第4页
linux下文件扩展权限ACL的设置.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

linux下文件扩展权限ACL的设置 2010-03-16 23:32:14标签:ACL 权限 linux 设置 文件 文件扩展权限限制ACL用户大家对 Linux/Unix 的 UGO 权限管理方式一定不陌生.为了实现一些比较复杂的权限管理,往往不得不创建很多的组,并加以详细的记录和区分这是一件很麻烦的事。为了能使某一个用户对某一文件指定一个权限,比如对某一个特定的文件,用户A可以读取,用户B所在的组可以修改,惟独用户B不可以。于是就有了IEEE POSIX 1003.1e这个ACL的标准。ACL的出现专门解决了这个问题。下面我们来探讨下ACL在实际生活中的应用。扩展acl的一些基本语法getfacl -d 文件的默认权限setfacl -m 设置扩展权限|u 针对用户设置扩展权限|g 针对组置扩展权限|d 设置默认权限|m 设定统一收回么个选项-k 移除默认acl条目-R 权限递归 -x 取消特定权限setfacl -想 取消宽展权限首先我们要在linux加载硬盘acl功能的支持#vim /etc/fstab /rich ext3 defaults,acl 1 2在default后面加入acl然后重新挂载硬盘#mount o remount | /home查看验证下是否添加成功#mount(看/etc/fstab中添加的内容是否正常出现)新文件apple#touch apple#getfacl apple#su - aaa$vim /root/apple这里我们发现permission denied无写权限$su - root#setfacl u:aaa:rwx$vim /root/apple这里我们就可以正常写入了,我们下面添加一个组$su - root#getfacl g:nasasha:rw#su - nasasha$vim /root/apple # touch file1# ls -l file1-rw-r-r- 1 root root 7 Dec 11 00:28 file1查看文件缺省的ACL,这时这个文件除了通常的UGO的权限之外,并没有ACL: # getfacl file1# file: file1# owner: root# group: rootuser:rw-group:r-other:r-下面添加几个用户和组,一会我将使用ACL赋予他们不同的权限: # groupadd testg1# useradd testu1# useradd testu2# usermod -G testg1 testu1切换到用户testu1 # su testu1$ echo testu1 >> file1bash: file1: Permission denied失败了。因为file1并不允许除了root以外的用户写。我们现在就通过修改file1的ACL赋予testu1足够的权限: # setfacl -m u:testu1:rw file1# su testu1$ echo testu1 >> file1$ cat file1testu1修改成功了,用户testu1可以对file1做读写操作了。我们来看一下file1的ACL: $ getfacl file1# file: file1# owner: root# group: rootuser:rw-user:testu1:rw-group:r-mask:rw-other:r-我们ls看一下: # ls -l file1-rw-rw-r-+ 1 root root 7 Dec 11 00:28 file1如果仔细看的话,我们会发现权限末尾有个“+”号,这个说明file1设置了ACL, 接下来我们修改一下testu1的权限,同时给testg1这个组以读的权限: # setfacl -m u:testu1:rwx,g:testg1:r file1# getfacl file1# file: file1# owner: root# group: rootuser:rw-user:testu1:rwxgroup:r-group:testg1:r-mask:rwxother:r-: # setfacl -m mask:r file1# getfacl file1# file: file1# owner: root# group: rootuser:rw-user:testu1:rwx #effective:r-group:r-group:testg1:r-mask:r-other:r-# ls -l file1-rw-r-r-+ 1 root root 7 Dec 11 00:28 file1删除已有的ACL项 # setfacl -x g:testg1 file1# getfacl file1# file: file1# owner: root# group: rootuser:rw-user:testu1:rwxgroup:r-mask:rwxother:r-我们看到testg1的权限已经被去掉了。如果需要去掉所有的ACL可以用-b选项。所有的ACL项都会被去掉。 # setfacl -b file1# getfacl file1# file: file1# owner: root# group: rootuser:rw-group:r-other:r-# setfacl -set u:rw,u:testu1:rw,g:r,o:- file1# getfacl file1# file: file1# owner: root# group: rootuser:rw-user:testu1:rw-group:r-mask:rw-other:-目录的默认ACL # setfacl -d -set g:testg1:rwx dir1# getfacl dir1# file: dir1# owner: root# group: rootuser:rwxgroup:r-xother:r-xdefault:user:rwxdefault:group:r-xdefault:group:testg1:rwxdefault:mask:rwxdefault:other:r-x建立一个文件试试: # touch dir1/file1# getfacl dir1/file1# file: dir1/file1# owner: root# group: rootuser:rw-group:r-x #effective:r-group:testg1:rwx #effective:rw-mask:rw-other:r-备份和恢复ACL # getfacl -R dir1 > dir1.acl# ls -l dir1.acltotal 16-rw-r-r- 1 root root 310 Dec 12 21:10 dir1.acl我们用-b选项删除所有的ACL数据,来模拟从备份中回复的文件和目录: # setfacl -restore dir1.acl# getfacl -R dir1# file: dir1# owner: root# group: rootuser:rwxgroup:r-xother:r-xdefault:user:rwxdefault:group:r-xdefault:group:tes

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论