No se puede iniciar ningún EXE en la consola WSL

No se puede iniciar ningún EXE en la consola WSL

Si abro una consola WSL (haciendo clic en el ícono de la aplicación en el menú de inicio) y luego ejecuto cualquier archivo ejecutable de Windows, se bloquea. Puedo ver que aparece un nuevo proceso en la lista de procesos secundarios de Linux, pero no puedo encontrarlo en el administrador de tareas de Windows.

Sin embargo, si inicio WSL en cualquier otra consola, incluido PowerShell, CMD (llamando a wsl.exe bash -l any_windows_program.exe) o un terminal integrado en IDE, todo funciona bien.

¿Por qué?


Algunos antecedentes:

Estoy usando la distribución KALI de Microsoft Store. Funcionó hace varios días y no he actualizado nada recientemente.


Editar:

Noté que mi explorador tampoco funcionaba correctamente. Normalmente, cuando creo un nuevo archivo o carpeta, debería aparecer en el explorador inmediatamente. Pero hoy no apareció hasta que presioné F5.

Intenté reiniciar el explorador, se detuvo, pero no se reinició, luego todas las ventanas del proceso se congelaron (no respondieron a las acciones del mouse/teclado).

Un reinicio soluciona todos estos problemas. Parece un error del kernel o del controlador.

Respuesta1

Sólo un pensamiento de que estopodríaestar relacionado con un problema de red que ocurre en WSL cuando el host de Windows está hibernado o apagado con la opción "Inicio rápido" (que también es una forma de hibernación).

Si esa es una posibilidad, hay dos posibles recomendaciones:

  • Desactive el inicio rápido de Windows (en Control Panel\Hardware and Sound\Power Options -> Choose what the power buttons do).
  • Después de hibernar (si es necesario), salga de Kali y ejecute un comando wsl --shutdowndesde PowerShell, CMD o el menú Inicio de Windows.

Dicho esto, el hecho de que sólo ocurra cuando se inicia a través del ícono de la aplicación es un poco sospechoso. Eso podría indicar algo en tu ~/.bashrc. La ejecución wsl.exe bash -l any_windows_program.exeomite el inicio interactivo ( ~/.bashrc), pero ejecuta el ~/.bash_profileya que lo especificó como shell de inicio de sesión ( -l).

Si el problema vuelve a aparecer, inténtelo wsl bash -li any_windows_program.exepara ver si es causado por el inicio interactivo.

información relacionada