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 ...Não muito, mas aqui está algo para todos:
No terminal ou por Alt + F2:
Em um sistema raiz, você não precisa de "gksudo" ou "dbus-launch"
Alguns exemplos:
Por outro lado, este site mostra como criar um URI para o seu script ou programa que funciona no firefox e no gnome. Há um exemplo de script bem legal que você pode usar como referência, dependendo da sua necessidade.
Integrando um novo manipulador de esquema de URIs ao Gnome e Firefox
fonte