Keine CD in den Samba-Speicherort (in einem Windows-Freigabestandort)

7

Ich bin nicht cdin der Lage, in die Samba einzusteigen, wie ich es normalerweise tun würde:

cd smb://server/folder

Es sagt: "bash: cd: smb/..." No such file or directory.

Aber wenn ich in nautilus zum Ordner gehe und mit der rechten Maustaste darauf klicke, ist der in den Eigenschaften angezeigte Speicherort:

smb://server/folder

Warum funktioniert das nicht? Vielen Dank

Totty.js
quelle

Antworten:

8

Das Programm "cd" kann nur in Verzeichnisse navigieren, die an Ihr lokales VFS angehängt sind, und ein URI, der mit "smb: //" beginnt, beschreibt eine Remote-Ressource. Um eine SMB-Freigabe zu erstellen, müssen Sie diese bereitstellen.

In Ihrem Fall scheint die SMB-Freigabe bereits bereitgestellt worden zu sein und über Nautilus zugänglich zu sein. Das bedeutet, dass die SMB-Freigabe bereits irgendwo in Ihrem lokalen VFS bereitgestellt ist.

In Ubuntu 15.04 glaube ich, dass der Standard-Mount-Punkt für SMB-Freigaben (zumindest diejenigen, mit denen Sie über Nautilus eine Verbindung herstellen) ist:

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

Versuchen Sie stattdessen:

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

Bearbeiten: Für eine ausführlichere Erklärung hier ist eine ähnliche Frage zum Unix-Stack-Austausch mit einigen großartigen Antworten

Lowtex
quelle
1

Sie können nicht nur cd smb://server/foldervon einem Terminal aus verwenden.

Um vom Terminal aus auf mountden Ordner zuzugreifen, müssen Sie zuerst den Ordner aufrufen.

sudo mkdir /mnt/server

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

Oder geben Sie einfach smbclient //hostname/folderden Benutzernamen / das Passwort ein. Nach erfolgreicher Anmeldung können Sie auf die Ordner zugreifen.

devav2
quelle
Wie richte ich die automatische Bereitstellung mit fstab ein? Derzeit sieht es so aus: smb: // Ordner / Medien / Ordner nfts Standard 0 0; Es heißt Fehler beim Zugriff auf das Volume, keine solche Datei oder keinen solchen Ordner. Aber ich habe den Pfad "smb: // folder" von der automatisch in der Netzwerkliste gemounteten erhalten.
Totty.js
Ich würde Ihnen empfehlen, autofs anstelle von fstab zu verwenden. Bitte verweisen Sie diesen Link auf automount.
Devav2
mount.cifs verwendet keine URLs, sondern UNCs - Sie würden // remote / folder anstelle von smb: // remote /
folder verwenden
Ja, ich habe erwähnt, dass smb :: // remote /
folder
1

Die Shell (Bash) verwendet keine eindeutigen Ressourcen-Locators (URLs).

Neben anderen Antworten, die Ihnen sagen, wie Sie Samba-Freigaben manuell bereitstellen können, wurde sie bereits mit gvfs bereitgestellt, wenn Sie mit dem Dateimanager darauf zugreifen können. Sie können über das .gvfs/Verzeichnis in Ihrem Home-Verzeichnis darauf zugreifen :

cd ~/.gvfs/
ls

Wenn ich richtig bin, sollte ein Verzeichnis mit dem Namen angezeigt werden folder on server/.

Januar
quelle
0

Das jdn-Protokoll kann so nicht verwendet werden bash. Wenn Sie es verwenden möchten, müssen Sie die smb-Freigabe mit dem mountBefehl bereitstellen oder zu Ihrem hinzufügen/etc/fstab (aus meiner fstab entnommen):

// server / smb-share / my / path / where / to / mount / it cifs guest, uid = 1000, iocharset = utf8, codepage = unicode, unicode 0 0

Frantique
quelle
0

Wenn die anderen nicht funktionieren (wie in meinem Fall), werden Sie wahrscheinlich Folgendes feststellen:

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

Ersetzen yourserverund yourshareentsprechend.

Wenn Sie die Tab-Vervollständigung verwenden, achten Sie darauf, dass Ihre Shell keine Kommas, Dollarsymbole und Schrägstriche enthält. Der Doppelpunkt sollte jedoch entkommen.

Michael Scheper
quelle