web-dev-qa-db-ja.com

Fuseディレクトリにアクセスすると、なぜrootはアクセス権を拒否されますか?

自分のユーザーとして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

私のユーザーyonranはそれをうまく読むことができます:

~/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

しかしrootはどちらの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

編集:ルートがマウントにアクセスできるようになったという意味を取り除きました。考えてみてください。おそらく、私のスクリプトがルートとしてディレクトリにアクセスしようとしたことはありません。

24
yonran

これがFuseの動作方法です。 rootまたは他のユーザーへのアクセスを許可する場合は、以下を追加する必要があります。

user_allow_other

/etc/Fuse.confで、オプションとしてallow_otherまたはallow_rootを使用してFuseファイルシステムをマウントします。

24
tuxce