Você não está fazendo nada errado e não há nada para consertar. /run/user/$uid/gvfs
ou ~$user/.gvfs
é o ponto de montagem da interface FUSE para GVFS . O GVFS é uma implementação de sistema de arquivos virtual para o Gnome, que permite que os aplicativos do Gnome acessem recursos como servidores FTP ou Samba ou o conteúdo de arquivos zip, como diretórios locais. O FUSE é uma maneira de implementar drivers do sistema de arquivos como código do usuário (em vez do código do kernel). O gateway GVFS-FUSE torna os drivers do sistema de arquivos GVFS acessíveis a todos os aplicativos, não apenas àqueles que usam bibliotecas Gnome.
Gerenciar limites de confiança com sistemas de arquivos FUSE é difícil, porque o driver do sistema de arquivos está sendo executado como um usuário não privilegiado, ao contrário do código do kernel para sistemas de arquivos tradicionais. Para evitar complicações, por padrão, os sistemas de arquivos FUSE são acessíveis apenas ao usuário que está executando o processo do driver. Mesmo a raiz não consegue contornar essa restrição.
Se você estiver pesquisando um arquivo apenas em sistemas de arquivos locais, passe -xdev
para find
. Se você quiser percorrer vários sistemas de arquivos locais, enumerá-los todos.
find / /home -xdev -name ngirc
Se o arquivo estiver presente desde ontem, você pode tentar locate ngirc
em vez disso ( locate
pesquisa através de um banco de dados de nomes de arquivos que é tipicamente atualizado todas as noites).
Se você quiser percorrer os pontos de montagem do GVFS, terá que fazer isso como o usuário apropriado.
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