Czy istnieje sposób na uzyskanie dostępu do nośników wymiennych (np. Pamięci USB lub kart SD) z poziomu Bash w systemie Windows?
Bash w systemie Windows używa DriveFs do montowania stałych dysków w /mnt
folderze, ale nie instaluje automatycznie nośników wymiennych. I nie wygląda na to, aby umieszczał je w /dev
:
Aaron@MYPC:/$ ls /dev
block fd kmsg lxss null ptmx pts random shm stderr stdin stdout tty tty0 tty1 urandom zero
Czy istnieje sposób na zamontowanie dysków wymiennych? Czy istnieje sposób na dostęp do bazowego urządzenia blokowego?
windows-10
bash
windows-subsystem-for-linux
windows-10-v1607
Aaron Campbell
źródło
źródło
mount
i sprawdź, czy to daje wskazówki. Jeśli używaszcygwin
bash, ścieżka to / cygdrive /.Aaron@MYPC:~$ mount rootfs on / type rootfs (rw,relatime) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=204320k,mode=755)
[itd.]Odpowiedzi:
Dobra wiadomość, teraz można montować nośniki USB (w tym sformatowane jako FAT) i udziały sieciowe za pomocą drvfs w systemie Windows 10:
Zamontuj nośniki wymienne: (np. D :)
Aby bezpiecznie odmontować
Możesz także montować udziały sieciowe bez smbfs:
Potrzebujesz co najmniej kompilacji 16176, więc może być konieczne włączenie programu Windows Insider, a następnie aktualizacja systemu Windows. Źródło: https://blogs.msdn.microsoft.com/wsl/2017/04/18/file-system-improvements-to-the-windows-subsystem-for-linux/
źródło
wrong fs type, bad option, bad superblock on G:, missing codepage or helper program, or other error
- również przeczytaj ten komentarz ; nie odpowiadaj na duplikaty.Czy istnieje sposób dostępu do nośników wymiennych z poziomu Bash w systemie Windows?
Aktualizacja:
Najwyraźniej jest to teraz możliwe, począwszy od wersji 1017 systemu Windows 10.
Zobacz https://superuser.com/a/1209701/337631 .
Nie.
W tej chwili istnieją ograniczenia dotyczące montowanych napędów:
Zostało to podniesione jako problem: Dyski inne niż C: nie są zamontowane w / mnt # 1079 . Nadal jest oznaczony jako „Otwarty”.
Źródłowa obsługa systemu plików WSL
Dalsza lektura
źródło
Jeśli urządzenia nie
/dev
ma, prawdopodobnie konfiguracja nawet nie wykrywa dysku.Polecenie
lsblk
powinno zawierać listę wszystkich podłączonych urządzeń blokowych (napędów). Jeśli nie ma go na tej liście, najlepiej założyć podłączenie urządzenia przed rozpoczęciem bash.Nie widzę w twoim pytaniu żadnej wzmianki o tym, jaką metodę korzystania z bash na Windowsach znalazłeś, ale dla większości nie powinno być zbyt trudno zrestartować bash.
Jeśli
lsblk
pokazuje twój dysk, znajdź ścieżkę, którą wypisuje i wpiszmount <path shown by lsblk> <path you want the drive to be mounted to>
źródło
mount
Dyski wymienne nie są jeszcze obsługiwane. „WSL automatycznie montuje wszystkie stałe dyski z obsługiwanymi systemami plików w / mnt, takimi jak / mnt / c, / mnt / d itd. Obecnie obsługiwane są tylko woluminy NTFS i ReFS.” Zobacz blogs.msdn.microsoft.com/wsl/2016/06/15/wsl-file-system-support