我以自己的用户身份使用 FUSE 文件系统,没有任何问题,但 root 无法访问我的 FUSE 挂载。相反,任何命令都会给出Permission denied
。我如何授予 root 读取这些挂载的权限?
~/top$ sudo ls -l
total 12
drwxr-xr-x 2 yonran yonran 4096 2011-07-25 18:50 bar
drwxr-xr-x 2 yonran yonran 4096 2011-07-25 18:50 foo
drwxr-xr-x 2 yonran yonran 4096 2011-07-25 18:50 normal-directory
~/top$ fuse-zip foo.zip foo
~/top$ unionfs-fuse ~/Pictures bar
我的用户,永然,可以很好地阅读:
~/top$ ls -l
total 8
drwxr-xr-x 1 yonran yonran 4096 2011-07-25 18:12 bar
drwxr-xr-x 2 yonran yonran 0 2011-07-25 18:51 foo
drwxr-xr-x 2 yonran yonran 4096 2011-07-25 18:50 normal-directory
~/top$ ls bar/
Photos
但根无法读取任一 FUSE 目录:
~/top$ sudo ls -l
ls: cannot access foo: Permission denied
ls: cannot access bar: Permission denied
total 4
d????????? ? ? ? ? ? bar
d????????? ? ? ? ? ? foo
drwxr-xr-x 2 yonran yonran 4096 2011-07-25 18:50 normal-directory
~/top$ sudo ls bar/
ls: cannot access bar/: Permission denied
我运行的是 Ubuntu 10.04:我总是安装来自 Canonical 的任何更新。
$ uname -a
Linux mochi 2.6.32-33-generic #70-Ubuntu SMP Thu Jul 7 21:13:52 UTC 2011 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 10.04.3 LTS
Release: 10.04
Codename: lucid
编辑:删除了 root 曾经能够访问坐骑的暗示。想想看,也许我的脚本从未尝试以 root 身份访问该目录。
答案1
这就是有效的方法fuse
。如果你想允许 root 或其他用户访问,你必须添加:
user_allow_other
在 /etc/fuse.conf 中并使用allow_other
或allow_root
作为选项挂载您的熔断文件系统。
答案2
/etc/fuse.conf
您可以使用 sshfs 命令行选项,而不是编辑系统范围的配置文件:
sshfs -o allow_other user@server:/source /destination
编辑:感谢@lilith-elina 指出不应-o allow_root
在那里使用。