Saya memiliki drive samba yang terpasang di komputer windows lokal saya.
Saya memiliki drive "/ mnt / c" di WLS ("Windows 10 bash"), tetapi tidak ada "/ mnt / z".
Apakah ada cara untuk mengaksesnya? Bisakah saya remount di WLS?
Saya memiliki drive samba yang terpasang di komputer windows lokal saya.
Saya memiliki drive "/ mnt / c" di WLS ("Windows 10 bash"), tetapi tidak ada "/ mnt / z".
Apakah ada cara untuk mengaksesnya? Bisakah saya remount di WLS?
Jawaban:
[Perbarui - tampaknya fitur ini tersedia di build 16176 . Saya belum mencobanya.]
Tidak, meskipun mungkin ada beberapa trik yang belum saya temukan. Subsistem Windows untuk Linux tidak memasang drive jaringan. Seorang karyawan Microsoft berkata sini (dalam komentar):
Kami hanya "memasang" drive tetap saat ini. Drive USB / dapat dilepas / jaringan tidak ditangani saat ini. Kemampuan ini ada di backlog kami, tetapi tidak ada di kartu dalam waktu dekat.
Jadi jangan menahan nafas.
Saya berusaha mengatasinya dengan menggunakan tautan simbolis, seperti ini:
c:> mklink /d c:\some\directory \\some_server\some_share
Tautan berfungsi dengan baik di Windows "normal" (cmd.exe, PowerShell, file explorer, dll.), Tetapi tidak terlihat oleh WSL:
$ ls -ld /mnt/c/some/directory
/mnt/c/some/directory not found
Untuk penggunaan saya sendiri, batasan ini adalah show-stopper. Saya memiliki banyak hal di drive jaringan yang tidak ingin saya pindahkan. Ada beberapa alternatif; Saya menggunakan Cygwin.
linkname target
tidak target linkname
Mounting DrvFs
Untuk memasang drive Windows menggunakan DrvFs, Anda dapat menggunakan perintah mount Linux biasa. Misalnya, untuk memasang drive yang dapat dilepas D: sebagai direktori / mnt / d, jalankan perintah berikut:
$ sudo mkdir /mnt/d $ sudo mount -t drvfs D: /mnt/d
Sekarang, Anda dapat mengakses file D: drive di bawah / mnt / d. Ketika Anda ingin melepas drive, misalnya agar Anda dapat menghapusnya dengan aman, jalankan perintah berikut:
$ sudo umount /mnt/d
Pemasangan lokasi jaringan
Saat Anda ingin memasang lokasi jaringan, tentu saja Anda dapat membuat drive jaringan yang dipetakan di Windows dan memasang yang seperti ditunjukkan di atas. Namun, Anda juga dapat memasang mereka secara langsung menggunakan jalur UNC:
$ sudo mkdir /mnt/share $ sudo mount -t drvfs '\\server\share' /mnt/share
Perhatikan kutipan tunggal di sekitar jalur UNC; ini diperlukan untuk mencegah perlunya melarikan diri dari garis miring terbalik. Jika Anda tidak mengelilingi jalur UNC dengan tanda kutip tunggal, Anda harus lolos dari garis miring terbalik dengan menggandakannya (mis.
\\\\server\\share
).WSL tidak memiliki cara untuk menentukan kredensial mana yang digunakan untuk menghubungkan ke jaringan berbagi. Jika Anda perlu menggunakan kredensial yang berbeda untuk terhubung ke server, tentukan kredensial di Windows dengan menavigasi ke share di File Explorer, menggunakan Windows Credential Manager, atau perintah net use. Perintah net use dapat dipanggil dari dalam WSL (menggunakan net.exe use) via interop. Ketik bantuan net.exe gunakan untuk informasi lebih lanjut tentang cara menggunakan perintah ini.
Ada (setidaknya) dua cara untuk menggunakan Bash di Windows:
Git-Bash memiliki akses ke folder jaringan (instal git-bash & gt; buka folder jaringan & gt; klik kanan & gt; "Git Bash Here" & gt; run pwd
untuk melihat jalan).
Jika kamu harus gunakan versi bash WLS, maka Anda dapat memanggil Git-Bash dari bash WLS sebagai berikut:
WLS_Bash_Shell:$ /mnt/c/Program\ Files/Git/bin/bash.exe ScriptThatUsesNetworkFolders.sh
Lihat https://github.com/Microsoft/WSL/issues/2999#issuecomment-455835951
Berikut adalah cara untuk memasang GFS di WSL berdasarkan Mengerjakan `sshfs` di WSL atau menemukan alternatif Triknya adalah menggunakan https://www.nsoftware.com/sftp/netdrive/ untuk ssh ke GFS dari Windows dan mengonversinya ke sistem file yang dapat dipasang di bawah WSL.
Instal OpenSSH Server di bawah Win10 Pengaturan Win10 - & gt; Aplikasi - & gt; Kelola fitur opsional - & gt; Tambahkan fitur - & gt; Server OpenSSH restart jika perlu buka Layanan - & gt; OpenSSH - & gt; Properti - & gt; Jenis Startup - & gt; Otomatis (tertunda)
Instal dan jalankan SFTPNetDrive, klik kanan pada ikon di ikon tersembunyi - & gt; Jendela utama (atau mungkin sudah terbuka) - & gt; Profil - & gt; profil baru (server: localhost, pengguna: * pwd: * Drive Letter: F (atau lainnya) Lanjut - & gt; (Protokol - & gt; hapus centang kompresi; Folder yang ditentukan: G: \))
dalam Bash (wsl): sudo mkdir / mnt / f; sudo mount -t drvfs F: / mnt / f
Saya tidak yakin seberapa stabil itu, tetapi saya bisa membuka file di WSL.