web-dev-qa-db-fra.com

Impossible de se connecter à l'emplacement samba (dans un emplacement de partage Windows)

Je ne suis pas capable de cd dans la samba comme je le ferais normalement:

cd smb://server/folder

Il dit: "bash: cd: smb/..." No such file or directory.

Mais si dans Nautilus, je vais dans le dossier et cliquez dessus avec le bouton droit de la souris, l'emplacement indiqué dans les propriétés est le suivant:

smb://server/folder

Pourquoi ça ne marche pas? Merci

7
Totty.js

Le programme "cd" ne peut naviguer que dans des répertoires montés sur votre VFS local, et un URI commençant par "smb: //" décrit une ressource distante. Pour pouvoir entrer dans un partage SMB, vous devez le monter.

Dans votre cas, il semble que le partage SMB ait déjà été monté et accessible depuis Nautilus. Cela signifie que le partage SMB est déjà monté quelque part dans votre VFS local.

Dans Ubuntu 15.04, je pense que le point de montage par défaut pour les partages SMB (au moins ceux que vous vous connectez à l'aide de Nautilus) est le suivant:

/run/user/$UID/gvfs/smb:Host=$SERVER_NAME

Alors au lieu de cela, essayez:

$ cd  /run/user/$UID/gvfs/smb:Host=server/path/to/file.txt

Edit: Pour une explication plus détaillée de ceci, voici ne question similaire sur unix stackexchange avec quelques bonnes réponses

8
lowtex

Le shell (bash) n'utilise pas d'URL.

Outre d'autres réponses vous expliquant comment monter les partages samba manuellement, si vous pouvez y accéder avec le gestionnaire de fichiers, celui-ci a déjà été monté à l'aide de gvfs. Vous pourrez y accéder via le répertoire .gvfs/ de votre répertoire personnel:

cd ~/.gvfs/
ls

Si je ne me trompe pas, vous devriez voir un répertoire appelé folder on server/.

1
January

Vous ne pouvez pas utiliser uniquement cd smb://server/folder à partir d'un terminal.

Pour accéder au dossier depuis le terminal, vous devez commencer par mount le dossier.

Sudo mkdir /mnt/server

Sudo mount -t cifs //remote/folder /mnt/server -o username=user uid=name

Ou tapez simplement smbclient //hostname/folder et tapez le nom d'utilisateur/mot de passe. Une fois la connexion établie, vous pourrez accéder aux dossiers.

1
devav2

Si les autres ne fonctionnent pas (comme c'est mon cas), vous constaterez probablement que cela:

cd /$XDG_RUNTIME_DIR/gvfs/smb-share\:server=yourserver,share=yourshare/

Remplacez yourserver et yourshare correctement.

Si vous utilisez la complétion par tabulation, méfiez-vous de votre shell n’écartant pas correctement les virgules, les symboles en dollars et les barres obliques. Les deux points, cependant, devraient être échappés.

0
Michael Scheper

Le protocole smb ne peut pas être utilisé comme ceci à partir de bash. Si vous voulez l'utiliser, vous devez monter le partage smb avec la commande mount ou l'ajouter à votre /etc/fstab, par exemple (extrait de mon fstab):

 // serveur/smb-share/mon/chemin/où/vers/mount/il cifs invité, uid = 1000, iocharset = utf8, page de codes = unicode, unicode 0 0 
 
0
Frantique