Il fut un temps, pas si lointain, où développer pour des environnements Linux sur une machine Windows relevait du parcours du combattant. Entre les machines virtuelles lourdes et gourmandes, et les configurations en double démarrage (dual-boot) peu pratiques, la productivité était souvent la première victime. Mais ce temps est révolu. Aujourd’hui, une technologie a non seulement comblé le fossé entre ces deux mondes, mais elle les a fusionnés de manière si élégante qu’elle est devenue un pilier du développement moderne : le Sous-système Windows pour Linux (WSL).
Alors, qu’est-ce que WSL exactement ? Imaginez pouvoir lancer un terminal Ubuntu ou Debian directement depuis votre menu Démarrer, exécuter des scripts Bash, utiliser des outils comme grep, awk, ou même déployer des conteneurs Docker, le tout avec des performances natives, sans jamais quitter le confort de votre bureau Windows. C’est précisément la promesse de WSL. Il ne s’agit pas d’une simple émulation, mais d’une intégration profonde qui vous offre la puissance de l’écosystème Linux avec la stabilité et le support matériel de Windows.
Dans ce guide complet, nous allons décortiquer ensemble la philosophie de WSL, vous guider pas à pas dans son installation, et vous révéler les astuces et les intégrations avancées qui transformeront votre machine Windows en une véritable station de développement polyvalente. Que vous soyez un débutant curieux ou un développeur chevronné, préparez-vous à redécouvrir votre environnement de travail.
Comprendre WSL pour bien démarrer
Qu’est-ce que le sous-système Windows pour Linux (WSL) ?
Au cœur de cette révolution se trouve une idée simple mais puissante : permettre aux développeurs d’exécuter un environnement GNU/Linux complet directement sur Windows. L’objectif n’est pas de remplacer Windows, mais de l’augmenter.
WSL vous donne accès à un véritable shell Linux et à des milliers d’outils en ligne de commande qui sont souvent la norme dans le développement web, la science des données ou l’administration système, sans la complexité d’une machine virtuelle traditionnelle.
WSL 1 vs WSL 2 : lequel choisir en 2025 ?
C’est la première question, et la plus cruciale. Comprendre la différence entre WSL 1 et WSL 2 n’est pas un simple détail technique, c’est la clé pour bâtir un environnement performant et sans frustration.
Laissez-moi être direct : en 2025, le choix est déjà fait pour vous.
Deux architectures, une seule recommandation
WSL 1 était une prouesse d’ingénierie. Il fonctionnait grâce à une couche de traduction qui convertissait les appels système Linux en appels que le noyau Windows pouvait comprendre. Ingénieux, mais incomplet. Il n’y avait pas de véritable noyau Linux, ce qui limitait la compatibilité avec certains outils complexes.
WSL 2, lui, change radicalement la donne. Il embarque un véritable noyau Linux open-source, qui s’exécute au sein d’une machine virtuelle (VM) Hyper-V extrêmement légère et optimisée. Ne laissez pas le mot “VM” vous effrayer : elle démarre en moins d’une seconde et son empreinte mémoire est minimale. Cette approche garantit une compatibilité quasi parfaite et des performances spectaculaires.
Le comparatif décisif : performances, compatibilité et Docker
Pour visualiser l’impact de ce changement d’architecture, rien ne vaut un tableau comparatif. Il met en lumière pourquoi WSL 2 n’est pas une simple mise à jour, mais une refonte totale.
| Caractéristique | WSL 1 | WSL 2 |
|---|---|---|
| Architecture | Couche de traduction d’appels système | Noyau Linux complet dans une VM légère |
| Performances fichiers (dans Linux) | Lentes | Extrêmement rapides (jusqu’à 20x plus) |
| Performances fichiers (accès à Windows) | Rapides | Plus lentes (via un montage réseau) |
| Compatibilité des appels qystème | Limitée | Complète (100 %) |
| Support de Docker | Non | Oui, nativement |
| Réseau | Ponté (IP partagée) | NAT (IP distincte) |
Conclusion : La messe est dite. Avec ses performances de fichiers fulgurantes au sein de l’environnement Linux et sa compatibilité totale qui débloque des outils essentiels comme Docker, WSL 2 est la norme incontournable aujourd’hui. WSL 1 ne conserve un intérêt que pour des cas de niche très spécifiques que vous ne rencontrerez probablement jamais.
Le guide d’installation pas à pas de WSL
Étape 1 : vérifier les prérequis système
Avant de vous lancer, une petite vérification s’impose pour garantir une installation sans accroc.
- Version de Windows : Vous devez exécuter Windows 10 version 2004 (build 19041) ou une version ultérieure, ou bien sûr, Windows 11. Pour vérifier, appuyez sur Windows + R, tapez winver et validez.
- Virtualisation matérielle : WSL 2 a besoin que la virtualisation soit activée dans le BIOS/UEFI de votre ordinateur. Sur la plupart des machines modernes, c’est activé par défaut. Si ce n’est pas le cas, redémarrez, accédez au BIOS (souvent avec les touches F2, F10 ou Suppr) et activez l’option “Intel Virtualization Technology (VT-x)” ou “AMD-V”.
Étape 2 : l’installation simplifiée avec une seule commande
Oubliez les procédures complexes d’antan. Microsoft a rendu l’installation d’une simplicité déconcertante.
La commande magique :
- Ouvrez le menu Démarrer, tapez “PowerShell”.
- Faites un clic droit sur “Windows PowerShell” et choisissez “Exécuter en tant qu’administrateur”.
- Tapez la commande suivante et appuyez sur Entrée :
wsl --install
C’est tout. Vraiment. Cette commande unique s’occupe de tout en arrière-plan : elle active les fonctionnalités Windows nécessaires, télécharge le noyau Linux, configure WSL 2 comme version par défaut et installe la distribution la plus populaire, Ubuntu.
Une fois l’opération terminée, un redémarrage vous sera demandé.
Étape 3 : gérer et installer d’autres distributions Linux
Ubuntu est un excellent choix, mais la beauté de WSL réside dans sa flexibilité. Vous voulez essayer Debian ou Kali Linux ? Rien de plus simple.
- Lister les distributions disponibles : Dans PowerShell, tapez
wsl --list --online(ou son aliaswsl -l -o) pour voir ce qui est proposé. - Installer une distribution spécifique : Utilisez l’indicateur
-d. Par exemple, pour installer Debian :wsl --install -d Debian.
Étape 4 : premier lancement et configuration initiale
Après l’installation, votre distribution se lancera. Une console s’ouvrira pour finaliser la configuration.
- Création de votre compte Linux : Vous serez invité à créer un nom d’utilisateur et un mot de passe. Attention : ce compte est totalement indépendant de votre compte Windows. Lorsque vous tapez votre mot de passe, rien ne s’affiche à l’écran. C’est un comportement de sécurité normal sous Linux, appelé “blind typing”.
- La première commande essentielle : Une fois à l’invite de commande, la première chose à faire est de mettre à jour votre système. C’est une étape non négociable pour la sécurité et la stabilité. Pour Ubuntu/Debian, tapez :
sudo apt update && sudo apt upgrade
Votre environnement WSL est maintenant prêt à l’emploi !
WSL : utilisation quotidienne et bonnes pratiques
Les commandes `wsl.exe` à connaître pour piloter votre environnement
Depuis PowerShell, quelques commandes vous donneront le contrôle total sur vos distributions.
wsl -l -v: La plus utile. Elle liste vos distributions, leur état (en cours ou arrêtée) et leur version de WSL. C’est votre tableau de bord.wsl --shutdown: L’outil de dépannage ultime. Il arrête immédiatement toutes les distributions et la VM de WSL 2. Parfait pour libérer de la mémoire ou appliquer une nouvelle configuration.wsl --exportetwsl --import: Ces commandes vous permettent de créer une sauvegarde complète (un “snapshot”) de votre distribution sous forme d’archive.tar, et de la restaurer ou de la cloner. Une pratique puissante pour des environnements reproductibles.
Naviguer entre les fichiers Windows et Linux
C’est ici que l’intégration brille. Les deux mondes communiquent de manière transparente.
- Accéder à Windows depuis Linux : Vos lecteurs Windows sont automatiquement “montés” dans le répertoire
/mnt/. Votre disqueC:\est donc accessible via le chemin/mnt/c/. Vous pouvez naviguer dans vos dossiers Windows comme si de rien n’était. - Accéder à Linux depuis Windows : C’est encore plus simple. Ouvrez l’Explorateur de Fichiers de Windows, et dans la barre d’adresse, tapez :
\\wsl$. Vous verrez apparaître des dossiers pour chacune de vos distributions, vous permettant de glisser-déposer des fichiers comme s’il s’agissait d’un disque réseau.
La règle d’or des performances : où stocker vos fichiers de projet ?
C’est l’astuce la plus importante pour tout utilisateur de WSL 2. Si vous ne devez retenir qu’une chose, c’est celle-ci.
En raison de son architecture, WSL 2 est ultra-rapide pour manipuler les fichiers qui se trouvent à l’intérieur de son propre système de fichiers. À l’inverse, il est plus lent lorsqu’il doit accéder à des fichiers sur votre disque Windows (via /mnt/c).
La règle d’or est donc : les fichiers de votre projet doivent vivre dans le même système de fichiers que les outils que vous utilisez.
Concrètement, si vous développez une application Node.js, clonez votre dépôt Git dans le répertoire personnel de votre distribution Ubuntu (par exemple, /home/votre_nom/projets), et non sur votre bureau Windows.
La différence de vitesse pour des opérations comme npm install sera spectaculaire.
Créer un environnement de développement professionnel
L’intégration parfaite avec Visual Studio Code
Si vous utilisez Visual Studio Code, préparez-vous à une expérience de développement quasi magique. L’intégration avec WSL est si fluide qu’elle est devenue une référence.
- Installez l’extension “WSL” : Dans VS Code (installé sur Windows), allez sur le marketplace des extensions et installez “WSL” de Microsoft.
- Ouvrez votre projet : Dans votre terminal WSL, naviguez jusqu’au dossier de votre projet, puis tapez simplement la commande :
code.
VS Code se lancera sur Windows, mais se connectera à votre environnement WSL. L’interface est sur Windows, mais tout le reste (le terminal, le débogueur, l’autocomplétion, les extensions de langage) s’exécute dans Linux.
C’est le meilleur des deux mondes : une interface réactive et familière, et un environnement de développement parfaitement cohérent avec vos serveurs de production.
Déployer des conteneurs avec Docker Desktop
L’une des raisons d’être de WSL 2 est sa capacité à faire tourner Docker nativement et efficacement.
- Installez Docker Desktop pour Windows : Lors de l’installation, assurez-vous que l’option “Use the WSL 2 based engine” est cochée. C’est le moteur par défaut et le plus performant.
- Activez l’intégration : Dans les paramètres de Docker Desktop, allez dans “Resources” > “WSL Integration” et activez l’intégration pour les distributions que vous utilisez.
Et voilà ! Vous pouvez maintenant ouvrir votre terminal Ubuntu et taper des commandes docker comme si vous étiez sur une machine Linux native. La gestion des conteneurs sur Windows n’a jamais été aussi simple et rapide.
Cas pratique : monter un projet de développement web (Node.js)
WSL est un paradis pour les développeurs Node.js. Pour une gestion saine de vos versions, utilisez nvm (Node Version Manager).
# Installer curl (un outil de transfert)
sudo apt-get install curl
# Installer nvm (vérifiez la dernière version sur leur page GitHub)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
# Fermez et rouvrez votre terminal, puis installez la dernière version LTS de Node.js
nvm install --lts
Cas pratique : configurer un espace pour la Data Science (Python & Jupyter)
Pour les data scientists, WSL 2 est une plateforme robuste, surtout couplée à l’accélération GPU.
- Installez Miniconda : C’est la méthode recommandée pour gérer les environnements Python et leurs dépendances complexes.
- Lancez Jupyter Notebook : Pour éviter des conflits, lancez-le avec l’option
--no-browser:
jupyter lab --no-browser
Le terminal affichera une URL. Copiez-collez cette adresse dans votre navigateur Windows habituel pour accéder à l’interface de Jupyter, qui s’exécute dans WSL.
Aller plus loin avec les fonctionnalités avancées de WSL
WSLg : lancer des applications graphiques Linux sur Windows
Oui, vous avez bien lu. WSL peut maintenant exécuter des applications Linux avec une interface graphique (GUI). Cette technologie, nommée WSLg, est intégrée par défaut dans les versions récentes de WSL sur Windows 11 (et les dernières builds de Windows 10).
Après avoir mis à jour WSL (wsl --update), installez simplement une application graphique comme vous le feriez normalement (par exemple, sudo apt install gimp).
L’application apparaîtra automatiquement dans votre menu Démarrer Windows, prête à être lancée, épinglée à la barre des tâches, et utilisée côte à côte avec vos applications Windows. La frontière entre les deux systèmes s’estompe encore un peu plus.
Accélération GPU pour le Machine Learning
Pour les tâches d’intelligence artificielle, WSL 2 offre un accès direct à la puissance de votre GPU.
La configuration est d’une simplicité désarmante : installez les derniers pilotes graphiques NVIDIA uniquement sur Windows. Ne touchez à rien dans votre distribution Linux. Le pilote Windows se charge de tout, permettant à des frameworks comme TensorFlow ou PyTorch d’exploiter votre carte graphique pour accélérer l’entraînement de modèles.
Dépannage : résoudre les problèmes courants
Le processus `Vmmem` : comment maîtriser la consommation de mémoire de WSL 2 ?
C’est le “problème” le plus fréquent. Vous remarquerez peut-être un processus nommé Vmmem ou VmmemWSL qui consomme beaucoup de RAM. Ce processus représente la mémoire allouée à la VM de WSL 2. Par défaut, elle a tendance à conserver la mémoire pour le cache et ne la rend pas immédiatement à Windows.
- La solution rapide : La commande
wsl --shutdowndans PowerShell libérera instantanément toute la mémoire. - La solution durable : Créez un fichier nommé
.wslconfigà la racine de votre profil utilisateur Windows (C:\Users\VotreNom). Vous pouvez y définir des limites strictes. Par exemple :
[wsl2]
memory=4GB
processors=2
Cela limitera la VM à 4 Go de RAM et 2 cœurs de processeur, vous donnant un contrôle total sur les ressources.
Problèmes de réseau, DNS et conflits avec les VPN
L’architecture réseau de WSL 2 peut parfois entrer en conflit avec certains VPN d’entreprise, qui modifient les règles de routage de Windows et coupent l’accès à Internet de votre distribution.
La solution la plus courante est de configurer manuellement le serveur DNS à l’intérieur de WSL. Cela implique de créer un fichier /etc/wsl.conf pour empêcher la génération automatique du fichier de résolution DNS, puis de modifier le fichier /etc/resolv.conf pour y inscrire l’adresse du serveur DNS de votre VPN.
Conclusion
Le Sous-système Windows pour Linux a parcouru un chemin phénoménal. WSL 2 n’est plus un simple outil de confort, mais une plateforme de développement mature, performante et stratégique. Il a réussi le pari audacieux de marier la robustesse de l’écosystème Linux avec la familiarité de Windows, créant un environnement de travail unifié et d’une efficacité redoutable.
L’engagement continu de Microsoft, avec un développement désormais open-source et des mises à jour rapides via le Microsoft Store, est la garantie que cette technologie est là pour durer et s’améliorer. Maîtriser WSL aujourd’hui, ce n’est plus une option pour un développeur sur Windows ; c’est une compétence essentielle qui ouvre des portes et décuple la productivité.
FAQ sur WSL (foire aux questions)
- WSL est-il une machine virtuelle comme VirtualBox ?
- Oui et non. WSL 2 utilise bien une technologie de virtualisation, mais il s’agit d’une VM extrêmement légère, optimisée et gérée en arrière-plan. L’expérience utilisateur est beaucoup plus intégrée et transparente qu’avec une VM traditionnelle.
- Puis-je exécuter plusieurs distributions Linux en même temps ?
- Absolument. Vous pouvez avoir Ubuntu, Debian et Arch Linux installés et même les exécuter simultanément, chacun dans son propre terminal.
- Comment réinitialiser mon mot de passe utilisateur Linux ?
- Si vous avez oublié votre mot de passe, ouvrez PowerShell et tapez
wsl -u root. Cela vous connectera en tant qu’administrateur “root”. De là, vous pouvez utiliser la commandepasswd <votre_nom_utilisateur>pour définir un nouveau mot de passe. - Est-ce que WSL ralentit mon ordinateur ?
- En utilisation normale, l’impact est minime. Le principal point de vigilance est la consommation de mémoire du processus
Vmmem, qui peut être facilement maîtrisée avec les astuces de configuration mentionnées dans la section de dépannage.













