EDITAR Depois de cavar um pouco mais, descobri que você pode iniciar o nautilus como root e obter acesso aos URIs especiais usando o dbus. O comando seria
sudo dbus-launch nautilus
E então os URIs estão todos disponíveis. Para ser sincero, não sou 100% por que isso funciona, mas algumas das informações originais que encontrei abaixo ainda podem ser úteis.
A razão pela qual esses URIs existem é porque o Nautilus usa um sistema de arquivos virtual chamado Gnome Virtual File System (gvfs), construído sobre outro sistema de arquivos virtual chamado FUSE. Especificamente, esses URIs são configurados no /usr/lib/gvfs/
diretório denominado gvfsd- *. Estes são arquivos binários, portanto, não tente editá-los.
Quando você monta um compartilhamento Samba usando o Nautilus, ele usa o comando gvfsd-mount (armazenado em /usr/bin
) para montar o compartilhamento especificado. O compartilhamento é então montado /run/user/<UID>/gvfs/
onde está seu ID de usuário (geralmente 1000 para sistemas de usuário único).
Quanto ao root poder usar esses URIs, o Ubuntu, e eu estou assumindo outras distribuições, configura o fusível para que o root não possa usar o sistema de arquivos virtual por razões de segurança. Você notará na /run/user
pasta que não há diretório 0 para o usuário root. O /etc/fuse.conf
arquivo por padrão não está configurado para permitir o acesso do usuário root . Isso significa que, se o usuário monta um compartilhamento, mesmo o usuário root não pode visualizá-lo sem configurar o Fuse para permitir isso.
Na verdade, eu não testei fornecendo acesso root ao sistema de arquivos Fuse ou URIs especiais, mas você pode ter sorte em configurá-lo conforme descrito neste link ou ler na página de manual do Fuse .
Desculpe pela resposta do RTFM, mas não consegui encontrar uma solução definitiva e depende da versão do Ubuntu em que você está, pois alguns diretórios / comandos foram alterados nas versões recentes.
x-nautilus-desktop
não está definido / configurado/usr/lib/gvfs/
e onde outro lugar poderia estar? Eu uso o Ubuntu 13.10, não há nenhum arquivo chamadogvfsd-x-nautilus-desktop
no/usr/lib/gvfs/
, mas ainda este URI (x-nautilus-desktop:///
) está funcionando. A partir disso, talvez eu possa encontrar uma maneira de definir um novo URI. Este é o meu objetivo final ...