Estoy usando Win10.21H2 y me molesta un problema que existe desde hace mucho tiempo.
Demuéstralo a continuación:
- Suponiendo que tengo la unidad E: en mi máquina host Win10,
ls /mnt/e
funciona bien en mi shell WSL1. - Ahora, deje que CMD se inicie
chkdsk /f E:
y espere a que se complete. - Vuelva al shell WSL1, encuentro que
ls /mnt/e
falla con un "argumento no válido".
Esto también sucede si E: es una partición en un disco duro USB externo y desconecta y vuelve a conectar el disco duro, que es un escenario más común.
Entonces, ¿cómo recuperarse de este problema? Mi mejor esfuerzo ahora es finalizar toda la sesión WSL ( wsl -t Ubuntu-22.04
etc.) y luego volver a ejecutarla. Esto es excesivo porque forzará a todos los programas de Linux dentro de ese WSL a la terminal, lo cual es bastante inconveniente.
¿Alguna forma mejor de recuperar mi `/mnt/e'?
Respuesta1
Lo siguiente me funciona (en WSL1) después de un desmontaje forzado en una unidad extraíble mediante chkdsk /f
:
sudo umount /mnt/e
sudo mount -t drvfs E: /mnt/e
También debería funcionar si la unidad se desconecta o se vuelve a conectar.
Estoy ejecutando Windows 11, pero esta funcionalidad WSL1 no ha cambiado desde hace bastante tiempo, por lo que debería comportarse igual en Windows 10.