易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux高级权限管理:ACL用法简介

转自: http://ipie.blogbus.com/logs/36730036.html
 
Linux高级权限管理:ACL用法简介
2009-03-18 23:11:22 by deepblue
前段时间,在Linux上设置一个目录的访问权限时,发现通过简单的chmod操作不能满足自己的需求,
问题:如果用root帐号创建了一个目录DIR,有A,B,C,D四组用户,我想给A组用户读写执行的权限(rwx),给B组用户读写的权限(rw-),给C组用户读的权限(r--),不给D任何权限(---),要如何实现?
UGO的局限性
通常大家熟悉的是UGO的权限管理方式(User, Group, Other),即对一个文件的所有者,所属组和其他用户来分别设置该文件的读写执行权限。对于简单应用来说,这种粗粒度的权限管理方式已经够用了,设置起来也很方便。然而,当我们需要对某个文件进行较复杂详细的权限设置时,UGO方式就显示出了其局限性。
如,对于本文开始所提出的问题,需要为四组不同用户设置对目录DIR的不同访问权限,而UGO方式只能对目录的所有者,所属组,以及其他用户设置不同权限,即最多只能设置3种不同权限,还不能对多个不同用户分别设置。
ACL则很好的满足了这样的需求。
ACL简介
ACL,全称Access Control List,即文件/目录的访问控制列表,可以针对任意指定的用户/组分配rwx权限。现在主流的商业Unix系统都支持ACL。FreeBSD也提供了对ACL的支持。Linux在这个方面也不会落后,从2.6版内核开始支持ACL[1]。顾名思义,ACL将用户对一个文件访问权限就像是放在了一个列表里,列表的每一项分别对应了一个或一组具体用户对该文件的特定访问权限。这就使任意的访问权限管理成为了可能。
下面我们来看看如何通过ACL进行详细的文件访问权限管理。
检查ACL包安装情况
首先检查你的Linux系统的核心是否有支持ACL的功能。因为Linux系统并不是每一个版本的核心都有支持ACL的功能,而且即使在 kernel 中已加进了 ACL 的支持,也不一定已经自动启用。最简单的方法就是检查系统目前的核心能否支持,下面是我在ubuntu8.04上面查看boot/config文件的结果:
zhou@zhou-desktop:~$ uname -a
Linux zhou-desktop 2.6.24-23-generic #1 SMP Thu Feb 5 15:00:25 UTC 2009 i686 GNU/Linux
zhou@zhou-desktop:~$ cat /boot/config-2.6.24-23-generic | grep -i acl
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_GENERIC_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y


相关文档:

linux进程状态浅析

众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看起来是在同时运行的。linux就是这样的一个操作系统。
  在linux系统中,每个被运行的程序实例对应一个或多个进程。linux内核需要对这些进程进行管理,以使它们在系统中“同时”运行。
linux内核对进程的这种管理分两个方面:进 ......

linux进程调度浅析


操作系统要实现多进程,进程调度必不可少。
有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一样,脱离了
实际环境,这些结论是比较片面的。
而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对TASK_R ......

linux 下压缩、解压 打包命令

ZZ 自http://dev.firnow.com/course/6_system/linux/Linuxjs/200896/139627.html     
      .tar
  解包: tar xvf FileName.tar
  打包:tar cvf FileName.tar DirName
 
 (注:tar是打包,不是压缩!)
  --------------------------------------------- ......

Linux下创建数据库表(sqlite3)的脚本

本文以数据库中的数据表UserInfo为实例展示数据库表的创建及数据记录的录入。
#!/bin/sh
#variables definition
#database location
db=/conf/db
#
#create table userInfo
#name: User name
#passwd: Password
#Privilege: User privilege -- Administrator:0 Operator:1
#
echo "create table UserInfo(n ......

Linux文件类型及如何查看,修改文件读写权限

现在使用 ls -l 命令,查看详细信息格式的文件列表,您将会看到如下内容: 
total 5
drwxr-x---  4   user group 4096 Mar 10 00:37 filename
drwxr-xr-x 21 user group 4096 Mar 10 20:16 文件名
-rw-------   1    user group 524 Mar 10 00:40 a
-rw-r--r-- &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号