Я работаю на Windows-10, где у меня установлена подсистема Linux для Windows (точнее Ubuntu).
Я подключил свой USB-накопитель к диску D:, и Windows считает его общим диском:
Windows commandline prompt>wmic logicaldisk list (relevant excerpt)
Access Availability BlockSize Caption Compressed ConfigManagerErrorCode ConfigManagerUserConfig Description DeviceID DriveType ErrorCleared ErrorDescription ErrorMethodology FileSystem FreeSpace InstallDate LastErrorCode MaximumComponentLength MediaType Name NumberOfBlocks PNPDeviceID PowerManagementCapabilities PowerManagementSupported ProviderName Purpose QuotasDisabled QuotasIncomplete QuotasRebuilding Size Status StatusInfo SupportsDiskQuotas SupportsFileBasedCompression VolumeName VolumeSerialNumber
0 C: FALSE Local Fixed Disk C: 3 NTFS 144074813440 255 12 C: 1023013810176 FALSE TRUE OSDisk B622B231
0 D: FALSE Local Fixed Disk D: 3 NTFS 996483739648 255 12 D: 1000168484864 FALSE TRUE Elements 6CD465F5
На моем ПК с Windows есть два дополнительных каталога:
C:\Users\...\AppData\...\CanonicalGroupLimited.UbuntuonWindows_...\...\rootfs\mnt\c
C:\Users\...\AppData\...\CanonicalGroupLimited.UbuntuonWindows_...\...\rootfs\mnt\d
В моей подсистеме Linux /etc/mtab
это завершается следующим образом:
Linux Prompt>tail -n 2 /etc/mtab
C:\134 /mnt/c drvfs rw,noatime,uid=1000,gid=1000,case=off 0 0
D:\134 /mnt/d drvfs rw,noatime,uid=1000,gid=1000,case=off 0 0
Однако результат df -hk
не показывает ничего /mnt/d
:
Linux Prompt>df -hk
df: /mnt/d: Invalid argument
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 999036924 858339700 140697224 86% /
...
C:\ 999036924 858339700 140697224 86% /mnt/c
В интернете я нашел эту команду, но она не дает решения:
Linux prompt>mount -t drvfs D: /mnt/d
И результат mount
получился довольно странным:
Linux prompt> sudo mount
rootfs on / type wslfs (rw,noatime)
...
C:\ on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000,case=off)
D:\ on /mnt/d type drvfs (rw,noatime,uid=1000,gid=1000,case=off)
Но /mnt/d
это не работает: каталог существует, но им невозможно пользоваться.
Кто-нибудь знает, что делать?
заранее спасибо
решение1
Во-первых, просто притворитесь, что все, что вы найдете под %AppData%
просто не существует. Это опасно, и его использование может привести к повреждению WSL (Ссылка на Майкрософт). Я знаю, что вы, вероятно, просто наткнулись на него, выполняя поиск в Windows. Просто уходите... медленно. :-)
Краткий ответ возможное решение:
Попробуйте создать новое место монтирования:
sudo mkdir /media/d
sudo mount -t drvfs D: /media/d
Или, возможно:
wsl --shutdown
- Подключите USB-накопитель повторно.
- Запустите экземпляр WSL
Более детально:
Вот что ядуматьпроисходит. WSL считывает подключенные диски Windows при запуске и автоматически монтирует этот список дисков в каждом экземпляре (через /init
) при запуске экземпляра.
Если диск отключается после запуска WSL, то подсистема об этом не знает. Отключение и повторное подключение диска (или другого диска) приведет к ситуации, похожей на ту, что вы видите — A /mnt/d
(или другая буква диска), которая не работает.
Как предлагалось выше, для меня проблему решает новое место монтирования ( /media
это хорошо, так как обычно это то место, куда монтируются съемные диски) или перезагрузка .wsl --shutdown