Je souhaite monter un partage SMB protégé par mot de passe (servi par une machine Windows). Le partage est protégé par un nom d'utilisateur et un mot de passe, et je ne peux pas écrire le mot de passe dans un fichier, je veux être invité à entrer le mot de passe au moment du montage.
J'ai besoin d'une solution qui fonctionne même lorsque l'utilisateur sur la machine cliente ne dispose d'aucun privilège administratif. Ainsi, quelle que soit la méthode utilisée pour monter le partage, il ne doit pas lui permettre d'obtenir les autorisations root. L'installation initiale peut être effectuée en tant que root. Les utilisateurs doivent pouvoir spécifier des noms de serveur arbitraires. Mon besoin immédiat concerne Ubuntu 12.04, mais plus la solution est applicable, mieux c'est.
Le client est sans tête, donc je recherche un outil de ligne de commande.
Ce que j'ai essayé :
mount.cifs
:bien qu'il puisse être rendu setuid root, ses auteurs ne le considèrent pas comme sûr. L'exécuter soussudo
a le même problème.smbnetfs
,fusesmb
:Je n'ai pas réussi à convaincre l'un ou l'autre de me demander un mot de passe.- Nautilus et gvfs :
gvfs-mount smb://servername/sharename
échoue avecError mounting location: volume doesn't implement mount
.
Comment puis-je monter un partage Samba à partir de la ligne de commande, en tant qu'utilisateur non root, avec une invite de mot de passe ?
Réponse acceptée :
"Erreur d'emplacement de montage :le volume n'implémente pas le montage" se traduit apparemment par "J'ai besoin de D-Bus mais il n'est pas disponible". (Merci au collègue gourou de venturax pour cette information.) Dans une session SSH, je peux utiliser gvfs-mount
à condition que dbus-daemon
est lancée en premier et la variable d'environnement DBUS_SESSION_BUS_ADDRESS
est défini.
export $(dbus-launch)
gvfs-mount smb://workgroupname;[email protected]/sharename
# Type password
ls ~/.gvfs/'sharename on hostname'
gvfs-mount
et les autres utilitaires GVFS doivent tous communiquer avec la même session D-Bus. Par conséquent, si vous utilisez plusieurs sessions SSH ou utilisez des montages sur plusieurs sessions de connexion, vous devez :
- démarrez D-Bus la première fois que vous en avez besoin, au plus tard ;
- veillez à ne pas laisser D-Bus se terminer avec la session, tant qu'il y a des systèmes de fichiers GVFS montés ;
- réutiliser la session D-Bus existante au moment de la connexion s'il y en a une.
Voir Réutiliser les sessions D-Bus dans les sessions de connexion pour cela.