问题
我需要在已经被格式化为ext4的USB密钥上对“mongodb”系统组进行读/写访问。 似乎命令工作,但是当我尝试让系统用户写入此文件夹时,我得到一个权限错误:
2014-11-11T10:41:19.326-0500 [initandlisten] exception in initAndListen std::exception: boost::filesystem::status: Permission denied: "/media/me/mongotest/mongodb", terminating
这是我用来检查这个组是否有权访问的命令:
me@medev:~$ getfacl /media/me/mongotest/mongodb/ getfacl: Removing leading '/' from absolute path names # file: media/me/mongotest/mongodb/ # owner: root # group: root user::rwx group::rx group:mongodb:rwx mask::rwx other::rx
附加testing
为了certificate它正在工作,我做了以下工作:
me@medev:~$ getfacl /media/me/mongotest/mongodb/ getfacl: Removing leading '/' from absolute path names # file: media/me/mongotest/mongodb/ # owner: root # group: root user::rwx group::rx group:mongodb:rwx group:testers:rwx mask::rwx other::rx
me@medev:~$ su test Password:
test@medev:/home/me$ cd /media/me/mongotest bash: cd: /media/me/mongotest: Permission denied test@medev:/home/me$ cd /media/me/mongotest/mongodb bash: cd: /media/me/mongotest/mongodb: Permission denied test@medev:/home/me$
所以看起来我在创build/添加这些权限的方式上做错了什么,因为这对于两个用户/组都是失败的。
我不得不在/ media / me文件夹上授予ACL权限。 “我”是我的个人资料/用户名的名称,我想在我的名字默认情况下Ubuntu的安装。 所以这就是我所做的:
setfacl -mg:mondodb:rwx / media / me
它工作。
始终使用非用户安装点。 所以意思是一个用户(mongodb)不能写(我)其他用户文件或链接。 如果删除“我”用户,则创build相关用户和服务的错误。 当你给一个文件夹超过一个用户时,你做一个交叉链接。 从来没有一个服务提供您使用交叉链接。
***对不起,语言不好