Как восстановить/перемонтировать утерянную букву диска в Win10 WSL1?

Как восстановить/перемонтировать утерянную букву диска в Win10 WSL1?

Я использую Win10.21H2 и меня беспокоит давно существующая проблема.

Продемонстрируйте это ниже:

  • Предположим, что на моем хост-компьютере Win10 есть диск E:, поэтому ls /mnt/eв моей оболочке WSL1 все работает нормально.
  • Теперь запустите CMD chkdsk /f E:и дождитесь его завершения.
  • Возвращаюсь к оболочке WSL1 и обнаруживаю, что ls /mnt/eона завершается ошибкой «Недопустимый аргумент».

WSL1 не может перемонтировать букву диска

Это также происходит, если E: является разделом на внешнем жестком диске USB, и вы отключаете и снова подключаете жесткий диск, что является более распространенным сценарием.

Тогда как исправить эту проблему? Сейчас я лучше всего закрою весь сеанс WSL ( wsl -t Ubuntu-22.04и т. д.) и снова его запущу. Это перебор, потому что заставит все программы Linux внутри этого WSL перейти на терминал, что довольно неудобно.

Есть ли лучший способ восстановить мой `/mnt/e'?

решение1

У меня (в WSL1) после принудительного размонтирования съемного диска с помощью chkdsk /f:

sudo umount /mnt/e
sudo mount -t drvfs E: /mnt/e

Это также должно работать, если диск отключен/подключен повторно.

Я использую Windows 11, но эта функциональность WSL1 не менялась уже довольно давно, поэтому она должна вести себя так же и в Windows 10.

Связанный контент