您查看的文章来源于http://www.oklinux.cn
笔者企业前不久为了一个新产品项目,抽调销售、质量、采购等部门人员成立了一个临时项目小组,专门进行一类产品的开发。为了配合他们的工作,笔者在Linux文件服务器上建立了一个文件夹NewProject。公司规定,只有这个项目组的人员可以更改这个文件夹中的内容。而其他用户则无法修改这个文件夹以及文件夹下任何文件的权利。这个需求实现起来有一定的难度。因为他们需要不同部门的员工组成一个新的小组,然后这个小组的成员对这个文件夹具有修改的权限。为了实现这个目标,笔者采用了Linux系统中的ACL(文件存储控制清单)来实现这个需求。
一、ACL的用途。
通常情况下,Linux系统中文件与目录都包含有关于文件所有者、文件相关的组以及系统上所有其他用户的权限设定。也就是说,可以通过用户、组等方式来对文件进行权限的设置。但是,却无法针对多个不同组的用户或者多个组设置不同的权限。说得白一点,就是同一个组中的用户具有相同的权限,而不能够同一个组中的用户有某些例外。片、新建文件等等。而且只有自己可以删除自己建立的文件。不过光这个限制还不行,因为其他员工也可以往这个文件夹中存放内容。为此还需要通过ACL来限制其他用户的权利。另外,除了文件所有者之外,其他人(包括这个项目小组中的其他成员)只能够查看这个文件,但是无法进行修改。所以还需要设置项目小组中的其他成员可以修改这个文件夹下的文件。