Einbinden von DrvFs

Einbinden von DrvFs

Ich habe ein Samba-Laufwerk, das auf meinem lokalen Windows-Computer gemountet ist.

Ich habe ein /mnt/cLaufwerk in WLS (Windows 10 Bash), aber nein /mnt/z.

Gibt es eine Möglichkeit, irgendwie darauf zuzugreifen? Kann ich es in WSL erneut mounten?

Antwort1

[Aktualisieren --scheinbarDiese Funktion ist verfügbar inBaujahr 16176. Ich habe es noch nicht ausprobiert.]

Nein, aber es gibt vielleicht einen Trick, den ich noch nicht entdeckt habe. Das Windows-Subsystem für Linux mountet keine Netzlaufwerke. Ein Microsoft-Mitarbeiter sagtHier(in einem Kommentar):

Wir „mounten“ derzeit nur Festplattenlaufwerke. USB-/Wechsel-/Netzwerklaufwerke werden derzeit nicht behandelt. Diese Funktion steht auf der Warteliste, ist aber nicht in naher Zukunft geplant.

Halten Sie also nicht den Atem an.

Ich habe versucht, das Problem zu umgehen, indem ich einen symbolischen Link wie diesen verwendet habe:

c:> mklink /d c:\some\directory \\some_server\some_share

Der Link funktioniert im „normalen“ Windows (cmd.exe, PowerShell, Datei-Explorer usw.) einwandfrei, ist für WSL jedoch unsichtbar:

$ ls -ld /mnt/c/some/directory
/mnt/c/some/directory not found

Für meinen eigenen Gebrauch ist diese Einschränkung ein echter Knackpunkt. Ich habe Dinge auf Netzlaufwerken, die ich nicht verschieben möchte. Es gibt Alternativen; ich verwende Cygwin.

Antwort2

ausder Link-Blätter hat gepostet

Einbinden von DrvFs

Um ein Windows-Laufwerk mit DrvFs zu mounten, können Sie den regulären Linux-Mount-Befehl verwenden. Um beispielsweise ein Wechsellaufwerk D: als /mnt/d-Verzeichnis zu mounten, führen Sie die folgenden Befehle aus:

$ sudo mkdir /mnt/d
$ sudo mount -t drvfs D: /mnt/d

Jetzt können Sie auf die Dateien Ihres Laufwerks D: unter /mnt/d zugreifen. Wenn Sie das Laufwerk aushängen möchten, um es beispielsweise sicher zu entfernen, führen Sie den folgenden Befehl aus:

$ sudo umount /mnt/d

Einbinden von Netzwerkstandorten

Wenn Sie einen Netzwerkspeicherort mounten möchten, können Sie natürlich ein zugeordnetes Netzwerklaufwerk in Windows erstellen und dieses wie oben beschrieben mounten. Es ist jedoch auch möglich, sie direkt über einen UNC-Pfad zu mounten:

$ sudo mkdir /mnt/share
$ sudo mount -t drvfs '\\server\share' /mnt/share

Beachten Sie die einfachen Anführungszeichen um den UNC-Pfad. Diese sind erforderlich, damit die Backslashs nicht maskiert werden müssen. Wenn Sie den UNC-Pfad nicht in einfache Anführungszeichen setzen, müssen Sie die Backslashs maskieren, indem Sie sie verdoppeln (z. B. \\\\server\\share).

WSL bietet keine Möglichkeit, anzugeben, welche Anmeldeinformationen für die Verbindung mit einer Netzwerkfreigabe verwendet werden sollen. Wenn Sie andere Anmeldeinformationen für die Verbindung mit dem Server benötigen, geben Sie diese in Windows an, indem Sie im Datei-Explorer zur Freigabe navigieren, den Windows-Anmeldeinformations-Manager oder den Befehl „net use“ verwenden. Der Befehl „net use“ kann über Interop aus WSL heraus (mit „net.exe use“) aufgerufen werden. Geben Sie „net.exe help use“ ein, um weitere Informationen zur Verwendung dieses Befehls zu erhalten.

Antwort3

WSL2 unterstütztCIFS (SMB)Protokoll. Möglicherweise müssen Sie beim Mounten die Version Ihres Netzwerkservers angeben. Beispiel unter Ubuntu:

$ sudo apt install cifs-utils
$ sudo mount -t cifs -o user=joe,pass=shmo,vers=1.0 //server/share /mnt/share

Antwort4

sehenhttps://github.com/Microsoft/WSL/issues/2999#issuecomment-455835951

Hier ist eine Möglichkeit zum Mounten von GFS in WSL basierend auf`sshfs` unter WSL zum Laufen bringen oder eine Alternative findenDer Trick besteht darin,https://www.nsoftware.com/sftp/netdrive/um von Windows aus per SSH auf GFS zuzugreifen und es in ein Dateisystem zu konvertieren, das unter WSL gemountet werden kann.

  1. OpenSSH Server unter Win10 installieren Win10 Einstellungen -> Apps -> Optionale Features verwalten -> Feature hinzufügen -> OpenSSH Server ggf. neu starten Dienste öffnen -> OpenSSH -> Eigenschaften -> Starttyp -> Automatisch (verzögert)

  2. Installieren und führen Sie SFTPNetDrive aus, klicken Sie mit der rechten Maustaste auf das Symbol in den ausgeblendeten Symbolen -> Hauptfenster (oder möglicherweise bereits geöffnet) -> Profil -> neues Profil (Server: localhost, Benutzer:* Passwort:*Laufwerksbuchstabe: F (oder ein anderer) Erweitert -> ( Protokoll -> Komprimierung deaktivieren; Angegebener Ordner: G:\ ) )

  3. in Bash (wsl): sudo mkdir /mnt/f; sudo mount -t drvfs F: /mnt/f

Ich bin nicht sicher, wie stabil es ist, aber ich konnte Dateien in WSL öffnen.

verwandte Informationen