web-dev-qa-db-ja.com

〜/ .gvfsで利用できないGVFSの場所

そのため、Gnomeの[場所]メニューから、またはコマンドラインgvfs-mountを介して、GVFSの場所(具体的にはCIFS)を正しくマウントできますが、ファイルシステムは期待される場所にマウントされません。 ~/.gvfs。実際、mountコマンドを実行しても、GVFSファイルシステムはまったくリストされません。

  • これは、rootユーザーが期待どおりに動作している間、root以外のユーザーに対して再現可能です。
  • Straceは、パス/home/username/.gvfsのファイルシステムをマウントしているユーザーのアクセス許可エラーを明らかにします。
  • 所有権と権限は正しく、lsattrで示されるパスの拡張属性はありません。
  • また、/ root /.gvfsと/home/username/.gvfsは同じファイルシステム上にあります。
  • すべてのパッケージは最新のものです。

何か案は?

編集:

この質問 を読んだ後、gvfs-Fuse-daemonが開始されていないことがわかり、手動で実行しようとしました。

$/usr/libexec/gvfs-Fuse-daemon〜/.gvfsヒューズ:fusermountの実行に失敗しました:アクセスが拒否されました

したがって、straceで拒否されたアクセス許可は、宛先パス/bin/fusermountではなく、/home/username/.gvfsにありました。ただし、/bin/fusermountはsetuidであるため、権限のないユーザーはrootとして実行できるはずです。私はパーミッションをいじくり回すのは好きではありませんが、テストするために/bin/fusermount o + rxを与えました。実行して問題を修正します。 では、なぜこのデーモンをroot以外のユーザーに対して手動で実行する必要があるのですか?これもUbuntuの問題のようですが、他の質問では答えられませんでした。

編集:2012年7月10日

/ bin/fusermountにo + rxを与える代わりに、ユーザーをFuseグループに追加する必要があることを学びました。

2
Aaron Copley

Ubuntu 12.10では、パスが変更されました。

$ mount |grep gvfs
gvfsd-Fuse on /run/user/pcm/gvfs type Fuse.gvfsd-Fuse (rw,nosuid,nodev,user=pcm)
1
cmcginty