红联Linux门户
Linux帮助

Ubuntu中setfacl命令提示Operation not supported错误及解决方法

发布时间:2015-04-29 11:26:41来源:xiaozhou.net作者:xiaozhou.net

ACL是Linux中的访问控制列表,它提供对文件、目录更好的读写、访问控制权限等功能,也是我在Ubuntu下配置用户权限经常用到的工具。ACL工具的安装非常简单:

sudo apt-get install acl

系统便会自动下载、安装ACL工具。安装好后,你就可以通过setfacl和getfacl来设置、获取文件及目录的访问控制权限了。


最近在用ACL设置权限的时候,老是提示: Operation not supported ,百思不得其解,反复检查了shell命令,并没有发现不妥之处,后来在向google老师请教后,发现Linux下的文件系统,在挂接时,有可能默认并没有开启对ACL的支持。通过如下命令可以检查:

mount -l


比如,在我的VPS中,通过此命令的输出信息,就能看到,我要设置权限的目录是在/home 而此目录是和根目录在同一个文件系统,被统一加载为 / 的。这个文件系统默认并没有开启动对ACL的支持,需要我们修改/etc/fstab来开启ACL支持。做法比较简单:

vim /etc/fstab


在你所需要的文件系统options中,追加acl(注意是小写),如下:

# <file system> <mount point>   <type>   <options>       <dump>  <pass>

/dev/xvda                        /               ext3          rw,acl                   0             1

修改后,保存并退出,然后直接重启系统,或者直接umount该文件系统,并重新mount。最后再用mount -l确认一下看ACL支持是否开启即可。


相关文章:

Linux中通过setfacl实现目录下创建文件:http://www.linuxdiyf.com/linux/4794.html

setfacl实现Linux文件权限继承:http://www.linuxdiyf.com/linux/2991.html