Yerel Windows bilgisayarıma monte edilmiş bir samba sürücüm var.
WLS'de ("Windows 10 bash") bir "/ mnt / c" sürücüsü var, ancak "/ mnt / z" yok.
Bir şekilde erişmenin bir yolu var mı? WLS'ye yeniden bağlayabilir miyim?
Yerel Windows bilgisayarıma monte edilmiş bir samba sürücüm var.
WLS'de ("Windows 10 bash") bir "/ mnt / c" sürücüsü var, ancak "/ mnt / z" yok.
Bir şekilde erişmenin bir yolu var mı? WLS'ye yeniden bağlayabilir miyim?
Yanıtlar:
[Güncelleme - görünüşe göre bu özellik 16176 sürümünde kullanılabiliyor . Henüz denemedim.
Hayır, keşfetmediğim bir numara olsa da. Linux için Windows Subsystem ağ sürücülerini bağlamaz. Bir Microsoft çalışanı burada diyor (bir yorumda):
Şu anda sadece sabit sürücüleri “takıyoruz”. USB / çıkarılabilir / ağ sürücüleri şu anda kullanılmamaktadır. Bu yetenek bizim birikimimizde, ancak yakın zamanda kartlarda değil.
O yüzden nefesini tutma.
Bunun gibi sembolik bir bağlantı kullanarak bunun üzerinde çalışmaya çalıştım:
c:> mklink /d c:\some\directory \\some_server\some_share
Bağlantı "normal" Windows'ta (cmd.exe, PowerShell, dosya gezgini, vb.) Gayet iyi çalışır, ancak WSL'ye görünmez:
$ ls -ld /mnt/c/some/directory
/mnt/c/some/directory not found
Kendi kullanımım için, bu sınırlama bir gösteri durdurucudur. Ağ sürücülerinde taşımak istemediğim şeyler var. Alternatifler var; Cygwin kullanıyorum.
linkname target
target linkname
dan bağlantı bleater yayınlanmıştır
DrvF'lerin Montajı
DrvF'leri kullanarak bir Windows sürücüsü monte etmek için, normal Linux mount komutunu kullanabilirsiniz. Örneğin, çıkarılabilir bir sürücü D: as / mnt / d dizini takmak için aşağıdaki komutları çalıştırın:
$ sudo mkdir /mnt/d $ sudo mount -t drvfs D: /mnt/d
Şimdi, D: sürücünüzün dosyalarına / mnt / d altında erişebileceksiniz. Sürücüyü sökmek istediğinizde, örneğin güvenle sökebilmeniz için aşağıdaki komutu çalıştırın:
$ sudo umount /mnt/d
Ağ konumlarını bağlama
Bir ağ konumu bağlamak istediğinizde, elbette Windows'ta bir eşlenmiş ağ sürücüsü oluşturabilir ve yukarıda belirtildiği şekilde bağlayabilirsiniz. Bununla birlikte, onları bir UNC yolu kullanarak doğrudan monte etmek de mümkündür:
$ sudo mkdir /mnt/share $ sudo mount -t drvfs '\\server\share' /mnt/share
UNC yolu etrafındaki tek tırnak işaretlerine dikkat edin; bunlar ters eğik çizgiden kaçma ihtiyacını önlemek için gereklidir. UNC yolunu tek tırnaklarla çevrelemezseniz, ters eğik çizgileri ikiye katlayarak kaçmanız gerekir (örn.
\\\\server\\share
).WSL'nin, bir ağ paylaşımına bağlanmak için hangi kimlik bilgilerini kullanacağını belirtmenin hiçbir yolu yoktur. Sunucuya bağlanmak için farklı kimlik bilgileri kullanmanız gerekiyorsa, bunları Windows Gezgini Yöneticisi'ni veya Windows use komutunu kullanarak Dosya Gezgini'ndeki paylaşıma gidip Windows'ta belirtin. Net use komutu, WSP içinden (net.exe kullanımı kullanılarak) interop üzerinden çağrılabilir. Bu komutun kullanımı hakkında daha fazla bilgi için net.exe help use yazın.
-o
) bana "yanlış fs tipi, kötü seçenek, kötü süper blok" hatası veriyor.
bkz. https://github.com/Microsoft/WSL/issues/2999#issuecomment-455835951
GFS'yi WSL üzerinde çalışmaya başlamanın temeline dayanarak WSFS'ye monte etmenin bir yolu: Buradaki hile, https://www.nsoftware.com/sftp/netdrive/ adresini kullanarak Windows'tan GFS'ye ssh kullanmak ve dönüştürmek. WSL altında monte edilebilecek bir dosya sistemine.
Win10 Win10 Ayarları altında OpenSSH Sunucusunu Kur -> Uygulamalar -> İsteğe bağlı özellikleri yönet -> Özellik ekle -> Gerekirse OpenSSH Sunucusunu yeniden başlat Servisler -> OpenSSH -> Özellikler -> Başlangıç Türü -> Otomatik (gecikmeli)
SFTPNetDrive'ı kurun ve çalıştırın, gizli simgelerdeki simgesine sağ tıklayın -> Ana pencere (veya belki de açık) -> Profil -> yeni profil (sunucu: localhost, kullanıcı: * pwd: * Sürücü Mektubu: F (veya başka bir) Gelişmiş - > (Protokol -> sıkıştırmanın işaretini kaldırın; belirtilen klasör: G: \))
Bash (wsl) içinde: sudo mkdir / mnt / f; sudo mount -t drvfs F: / mnt / f
Ne kadar kararlı olduğundan emin değilim, ancak dosyaları WSL'de açmayı başardım.
Windows'ta Bash'i kullanmanın (en az) iki yolu vardır:
Git-Bash'in ağ klasörlerine erişimi vardır (git-bash'ı kurun> ağ klasörüne gidin> sağ tıklayın> "Git Bash Burada"> pwd
yolu görmek için çalıştırın ).
Eğer varsa zorunda Bash WLS sürümünü kullanın aşağıdaki gibi, o zaman WLS bash Git-Bash çağırabilirsiniz:
WLS_Bash_Shell:$ /mnt/c/Program\ Files/Git/bin/bash.exe ScriptThatUsesNetworkFolders.sh