EDIT Après avoir creusé un peu plus, j'ai découvert que vous pouvez lancer nautilus en tant que root et accéder aux URI spéciaux en utilisant dbus. La commande serait
sudo dbus-launch nautilus
Et puis les URI sont tous disponibles. Pour être honnête, je ne sais pas à 100% pourquoi cela fonctionne, mais certaines des informations originales que j'ai trouvées ci-dessous peuvent toujours être utiles.
La raison pour laquelle ces URI existent est que Nautilus utilise un système de fichiers virtuel appelé Gnome Virtual File System (gvfs) qui est construit au-dessus d'un autre système de fichiers virtuel appelé FUSE. Plus précisément, ces URI sont configurés dans le /usr/lib/gvfs/
répertoire nommé gvfsd- *. Ce sont des fichiers binaires, alors n'essayez pas de les modifier.
Lorsque vous montez un partage Samba à l'aide de Nautilus, il utilise la commande gvfsd-mount (stockée dans /usr/bin
) pour monter le partage que vous spécifiez. Le partage est ensuite monté à l' /run/user/<UID>/gvfs/
emplacement de votre ID utilisateur (généralement 1000 pour les systèmes mono-utilisateur).
Quant à root étant capable d'utiliser ces URI, Ubuntu, et je suppose que d'autres distributions, configure le fusible afin que root ne puisse pas utiliser le système de fichiers virtuel pour des raisons de sécurité. Vous remarquerez dans le /run/user
dossier qu'il n'y a pas de répertoire 0 pour l'utilisateur root. Le /etc/fuse.conf
fichier par défaut n'est pas configuré pour autoriser l'accès root . Cela signifie que si votre utilisateur monte un partage, même l'utilisateur root ne peut pas afficher le partage sans configurer Fuse pour l'autoriser.
Je n'ai pas réellement testé de donner un accès root au système de fichiers Fuse ou à des URI spéciaux, mais vous aurez peut-être de la chance de le configurer comme décrit dans ce lien ou de lire la page de manuel Fuse .
Désolé pour la réponse RTFM, mais je n'ai pas trouvé de solution définitive et cela dépend de la version d'Ubuntu sur laquelle vous vous trouvez car certains répertoires / commandes ont changé dans les versions récentes.
x-nautilus-desktop
n'est-elle pas définie / configurée/usr/lib/gvfs/
et où pourrait-elle être ailleurs? J'utilise Ubuntu 13.10, il n'y a pas de fichier appelégvfsd-x-nautilus-desktop
dans/usr/lib/gvfs/
, mais encore cette URI (x-nautilus-desktop:///
) fonctionne. À partir de cela, je pourrais peut-être trouver un moyen de définir un nouvel URI. Ceci est mon objectif final ...Pas grand chose mais voici quelque chose pour tout le monde:
Au terminal ou par Alt + F2:
Sur un système racine, vous n'avez pas besoin de "gksudo" ou "dbus-launch"
Quelques exemples:
D'autre part, ce site montre comment créer un URI pour votre script ou programme qui fonctionne sur firefox et gnome. Il existe un exemple de script assez cool que vous pouvez utiliser comme référence en fonction de vos besoins.
Intégration d'un nouveau gestionnaire de schéma d'URI à Gnome et Firefox
la source