Il est clair qu’il est assez difficile de faire démarrer WSL au moment du démarrage du système, et qu’il existe diverses méthodes qui ont été utilisées pour atteindre cet objectif.
Une réponse (du 24 décembre 2022) à un post récent ici note que Microsoft l’a cassé quand WSL a migré vers leur store. WSL ne peut plus s’exécuter en tant que service ou tâche planifiée car il ne s’exécutera plus dans la session 0. Question superuser sur l’exécution de WSL au démarrage de Windows. Ensuite, une seconde réponse de @andrus indique qu’une méthode qui fonctionne encore (en date du 25 décembre 2022) est d’utiliser set object = createobject("wscript.shell") object.run "wsl.exe", 0 qui fonctionne encore avec la dernière version de WSL et Windows 11.
Vraisemblablement, ce code est destiné à être utilisé comme script VBS, et il doit être lancé depuis le planificateur de tâches selon les indications de cet article.
Je n’ai pas réussi à le faire fonctionner. Je peux démarrer WSL en utilisant le script VBS depuis la ligne de commande (PowerShell), mais cela ne fonctionne pas quand il est lancé depuis le planificateur de tâches. Au cas où cela importerait, j’exécute Windows 11 Pro, j’ai téléchargé WSL depuis le Microsoft Store, installé WSL en utilisant wsl --install Ubuntu (pour installer 22.04), ensuite configuré WSL pour utiliser systemd, puis ajouté les modifications pertinentes de « pont réseau » tant dans Windows que dans WSL afin que sshd démarre et que la machine obtienne sa propre adresse IP. Tout cela semble fonctionner très bien quand c’est lancé depuis la ligne de commande (en utilisant wscript ou cscript). Mais je ne parviens tout simplement pas à voir de preuve que WSL démarre réellement quand le script VBS est invoqué depuis le planificateur de tâches. L’examen des codes de retour du planificateur de tâches ne montre que des codes de retour « 0 ».
Alors, quelqu’un peut-il confirmer que la déclaration d’Andrus selon laquelle la solution fonctionne encore pour lui quand il utilise une version moderne de WSL 2, installée via le Microsoft Store ? Et peut-être m’orienter vers la meilleure description de comment exactement la configurer ?
wsl --version retourne :
WSL version: 1.0.3.0
Kernel version: 5.15.79.1
WSLg version: 1.0.47
MSRDC version: 1.2.3575
Direct3D version: 1.606.4
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22621.1105
Source : Super User.)