rootで実行しても/run/user/1000/gvfsを読み取れないのはなぜですか?

rootで実行しても/run/user/1000/gvfsを読み取れないのはなぜですか?

誰かが私が何を間違っているのか、それが何であるのか、それともどのように修正できるのか教えてください。 Fedora 18を実行していますが、エラーが発生します。

[root@servername /]# find . -name ngirc
find: `./run/user/1000/gvfs': Permission denied
[root@servername /]# 
[root@thinktank /]# pwd
/
[root@thinktank /]# ls -ltr ./run/user/1000
ls: cannot access ./run/user/1000/gvfs: Permission denied
total 0
d?????????? ? ?    ?      ?            ? gvfs
lrwxrwxrwx. 1 root root  17 May 28 12:30 X11-display -> /tmp/.X11-unix/X0
drwx------. 2 kal  kal  120 May 28 12:30 keyring-QjDw4b
drwx------. 2 kal  kal   40 May 28 12:30 gvfs-burn
drwx------. 2 kal  kal   60 May 28 12:30 krb5cc_5f0bcaf94f916d6b61696e2251a4dbb3
drwx------. 2 kal  kal   60 May 28 18:25 dconf

ベストアンサー1

あなたは間違ったことはなく、それを修正するためにできることもありません。/run/user/$uid/gvfsまたは~$user/.gvfsマウントポイントヒューズインターフェース重力加速度センサー。 GVFSはGnomeの仮想ファイルシステムの実装で、GnomeアプリケーションがFTPやSambaサーバーなどのリソースやローカルディレクトリなどのzipファイルの内容にアクセスできるようにします。 FUSEは、ファイルシステムドライバをカーネルコードではなくユーザーコードとして実装する方法です。 GVFS-FUSEゲートウェイを使用すると、Gnomeライブラリを使用するアプリケーションだけでなく、すべてのアプリケーションがGVFSファイルシステムドライバにアクセスできます。

FUSEファイルシステムによる信頼境界の管理は、ファイルシステムドライバが既存のファイルシステムのカーネルコードではなく、権限のないユーザーとして実行されるために困難です。複雑さを避けるために、FUSEファイルシステムはデフォルトでドライバプロセスを実行しているユーザーにのみアクセスできます。ルートでさえ、この制限を迂回することはできません。

ローカルファイルシステムでのみファイルを検索する場合に渡します-xdevfind複数のローカルファイルシステムを参照するには、すべて列挙します。

find  / /home -xdev -name ngirc

昨日からファイルが存在する場合は試してみることができますlocate ngirc代わりに(locate通常は夜ごとに更新されるファイル名データベースの検索)

GVFSマウントポイントを通過するには、適切なユーザーとして実行する必要があります。

find / -name ngirc -path '/run/user/*/gvfs' -prune -o -path '/home/*/.gvfs' -prune -o -name ngirc -print
for d in /run/user/*; do su "${d##*/}" -c "find $d -name ngirc -print"; done

おすすめ記事