[Explained] Comment utiliser les commandes Linux sous Windows



En tant que développeur, vous êtes souvent confronté à un dilemme : choisir Windows, avec son large éventail d’outils, de jeux et de logiciels, ou opter pour Linux, un environnement particulièrement prisé pour le développement. Si vous ne possédez qu’un seul ordinateur, le choix du système d’exploitation devient crucial.

L’utilisation de deux systèmes d’exploitation implique soit un double démarrage, une opération complexe et potentiellement risquée, soit le recours à une machine virtuelle, qui peut entraîner une surcharge de performances. Heureusement, une solution existe pour ne pas avoir à choisir entre l’un ou l’autre : pourquoi choisir quand on peut avoir les deux sans complication ?

Le système d’exploitation Windows vous offre la possibilité de combiner la puissance de Linux et de Windows sur une même machine. Vous pouvez lancer des applications Linux et exécuter des commandes Linux directement depuis Windows. Cette capacité d’exécuter des commandes Linux sous Windows change fondamentalement la donne.

Premièrement, cela vous permet de bénéficier gratuitement du meilleur des deux mondes sur une seule machine. Vous conservez l’accès à tous les logiciels Windows, son design attrayant et son ergonomie, tout en profitant de la robustesse de la ligne de commande Linux. Vous pouvez ainsi automatiser des tâches, utiliser divers outils open source et accéder aux fichiers et exécutables Windows directement depuis un shell bash.

De plus, l’exécution de commandes Linux sous Windows facilite l’installation et la gestion de vos logiciels grâce aux gestionnaires de paquets Linux. Vous pouvez travailler facilement sur des projets multiplateformes et accéder à des utilitaires Linux tels que SSH, grep, sed et awk.

Enfin, l’utilisation de commandes Linux depuis Windows offre une transition en douceur vers Linux pour les utilisateurs Windows, facilitant ainsi une potentielle migration vers un environnement Linux complet si cela devient nécessaire. L’outil qui permet cette prouesse est le sous-système Windows pour Linux.

Sous-système Windows pour Linux (WSL)

Le Sous-système Windows pour Linux (WSL) est une fonctionnalité Windows lancée en 2016. WSL permet d’installer une véritable distribution Linux directement sur Windows et d’exécuter son système de fichiers, ses outils de ligne de commande, ses applications graphiques et ses utilitaires, sans nécessiter de machine virtuelle ou de double démarrage.

Pour utiliser WSL, vous devez disposer de Windows 11 ou Windows 10 version 2004 ou supérieure, avec la build 19041 ou ultérieure. WSL est compatible avec les processeurs x64 et Arm.

WSL prend en charge l’installation de distributions Linux telles que Ubuntu, OpenSUSE, Kali, Debian, Fedora, Fedora remix et Arch Linux. Toutes ces distributions sont disponibles en téléchargement depuis le Microsoft Store.

Grâce à WSL, vous bénéficiez d’une expérience Linux intégrée à Windows. Vous pouvez invoquer des exécutables Linux depuis Windows et visualiser des fichiers Linux depuis Windows. Inversement, vous pouvez appeler des exécutables Windows et accéder aux fichiers Windows depuis le shell bash Linux.

Fonctionnement du Sous-système Windows pour Linux

En réalité, WSL n’est ni un émulateur, ni un virtualiseur. Il agit plutôt comme une couche de compatibilité entre Windows et Linux. Techniquement, WSL vous permet d’exécuter des binaires Linux ELF64 non modifiés, offrant ainsi une expérience d’intégration transparente.

Pour ce faire, WSL fournit une interface de noyau Linux développée par Microsoft, qui repose sur le noyau Windows. Ce noyau Linux s’exécute au sein de Windows et utilise la technologie Hyper-V.

Hyper-V est un hyperviseur natif, un logiciel capable de créer et d’exécuter des machines virtuelles. Hyper-V assure la virtualisation matérielle, permettant aux machines virtuelles de fonctionner sur du matériel virtuel. En s’appuyant sur cette technologie, WSL offre des performances améliorées au niveau du système de fichiers et une meilleure compatibilité avec les applications Linux.

Pour exécuter des binaires Linux ELF64 sans modification, WSL traduit les appels système Linux en appels système Windows, permettant ainsi une exécution à la vitesse native.

Au-dessus de l’interface du noyau Linux fournie par WSL, différentes distributions Linux peuvent être installées. Ces distributions fournissent un environnement de type conteneur, avec toutes les dépendances et la gestion de paquets nécessaires à l’exécution des applications Linux. Les applications Linux s’exécutent au sein de ces distributions.

Pourquoi opter pour le Sous-système Windows pour Linux ?

Si vous avez déjà utilisé une machine virtuelle pour faire fonctionner Linux sur Windows, vous vous demandez peut-être en quoi WSL se distingue. En premier lieu, WSL consomme bien moins de ressources que l’exécution d’une machine virtuelle.

WSL utilise beaucoup moins d’espace de stockage et de mémoire et ne sollicite pas le processeur de manière aussi intensive qu’une machine virtuelle. De plus, WSL vous permet d’accéder à vos fichiers Windows depuis Linux, ce qui vous offre la possibilité d’utiliser les outils de ligne de commande Linux sur les mêmes fichiers que ceux que vous utilisez avec vos applications Windows.

Un autre avantage majeur de WSL est sa simplicité d’utilisation. La virtualisation peut s’avérer complexe, ce que WSL évite. De plus, il facilite l’installation de différentes distributions Linux et le passage de l’une à l’autre.

Pour les développeurs, WSL offre le meilleur des deux mondes : vous pouvez utiliser Linux et profiter de ses outils de programmation et de ses ressources open source, tout en conservant l’ensemble des fonctionnalités fournies par Windows.

Avec WSL, les problèmes de compatibilité sont réduits, car vous utilisez des outils conçus pour fonctionner sous Linux. De plus, la bascule entre les deux systèmes d’exploitation est plus rapide, plus simple et ne nécessite ni configuration complexe, ni ordinateur supplémentaire.

Pour commencer à utiliser les commandes Linux, l’installation du Sous-système Windows pour Linux est un point de départ idéal.

Comment installer le Sous-système Windows pour Linux

1. Assurez-vous que votre ordinateur répond aux exigences suivantes : il doit s’agir d’un ordinateur 64 bits exécutant Windows 11 ou Windows 10 version 2004 ou ultérieure, avec la build 19041 ou supérieure. Vérifiez également que vous êtes connecté à Internet.

2. Ouvrez le menu Démarrer, recherchez Powershell et sélectionnez « Exécuter en tant qu’administrateur » pour l’ouvrir avec les privilèges d’administrateur.

3. Dans la fenêtre PowerShell, saisissez la commande suivante :

wsl --install

Cette commande activera toutes les fonctionnalités nécessaires à l’exécution de WSL et effectuera toutes les mises à jour nécessaires pour que votre système d’exploitation puisse l’exécuter de manière transparente. Une plateforme de machine virtuelle sera d’abord installée, puis WSL lui-même. Soyez patient, car ce processus peut prendre un certain temps.

4. Une fois le processus terminé, vous pouvez vérifier que WSL a été installé en exécutant de nouveau la commande wsl –install. Si vous voyez une page d’aide pour WSL, comme ci-dessous, l’installation a réussi.

5. L’étape suivante consiste à installer une distribution Linux à utiliser avec WSL. Pour voir toutes les distributions disponibles, saisissez la commande suivante dans PowerShell :

wsl --list --online

Vous obtiendrez une liste des distributions disponibles, comme indiqué ci-dessous :

6. Vous pouvez installer n’importe quelle distribution Linux de votre choix en saisissant la commande :

wsl --install -d <Nom_distribution>

Par exemple, pour installer Ubuntu 22.04 Long Term Support, exécutez la commande suivante :

wsl --install -d Ubuntu-22.04

Attendez que le processus se termine. Un message de réussite vous sera présenté. Une fenêtre de terminal Ubuntu s’ouvrira comme ci-dessous :

Saisissez votre nom d’utilisateur et votre mot de passe pour configurer votre environnement. Notez qu’avec Linux, aucun caractère ne sera visible lorsque vous saisissez votre mot de passe dans le terminal, bien que la saisie soit bien prise en compte.

Une alternative à l’installation d’une distribution via PowerShell consiste à ouvrir le Microsoft Store et à rechercher WSL. Toutes les distributions disponibles vous seront présentées. Cliquez sur « Obtenir » pour installer celle de votre choix.

7. Une fois que vous avez saisi votre nom d’utilisateur et votre mot de passe, vous pourrez accéder à Ubuntu sous Windows comme indiqué ci-dessous :

N’hésitez pas à commencer à utiliser vos commandes Linux préférées.

Votre distribution Linux installée est facilement accessible depuis le menu Démarrer à chaque fois que vous souhaitez l’ouvrir.

Dans votre explorateur de fichiers, vous remarquerez également un nouvel emplacement de stockage appelé « Linux », où sont stockés toutes vos distributions et fichiers Linux.

Le sous-système Windows pour Linux est un excellent moyen d’exécuter des commandes Linux sous Windows. Si vous ne parvenez pas à installer WSL sur votre ordinateur, notamment parce qu’il ne répond pas aux exigences nécessaires, il existe d’excellentes alternatives que vous pouvez utiliser. Examinons deux émulateurs qui peuvent vous aider à exécuter des commandes Linux sous Windows.

Utiliser les commandes Linux sous Windows avec Cygwin

Cygwin est une vaste collection d’outils GNU et Open Source qui, ensemble, fournissent des fonctionnalités similaires à celles d’une distribution Linux sous Windows.

Cygwin est un émulateur UNIX qui fournit un environnement shell UNIX sur Windows, vous donnant accès à une variété d’outils de l’écosystème Linux.

Comme l’indique leur slogan, Cygwin vise à fournir une expérience Linux sur Windows. Cependant, Cygwin ne permet pas d’exécuter des applications Linux sous Windows. Cygwin fonctionne avec toutes les versions x86_64 de Windows, à partir de Windows 7.

Pour installer Cygwin :

1. Rendez-vous sur leur page d’installation, téléchargez le fichier setup-x86_64.exe et exécutez-le.

2. Parcourez les premiers écrans de l’assistant d’installation, en cliquant sur « Suivant » pour conserver les sélections par défaut. Cela conservera la source de téléchargement à installer depuis Internet, utilisera la racine et le répertoire de package suggérés par défaut et utilisera les paramètres du proxy système.

3. Lorsqu’il s’agit de choisir un site depuis lequel télécharger les paquets Cygwin, cliquez sur l’un des liens fournis, puis cliquez sur « Suivant ».

4. Lors de la sélection des paquets à installer, conservez la section par défaut. C’est sous « vue » ; assurez-vous que la catégorie « catégorie » est sélectionnée, puis cliquez sur « Suivant ». Vous accéderez à l’écran de révision et de confirmation des modifications. Cliquez sur « Suivant » pour lancer l’installation de Cygwin.

5. Patientez jusqu’à la fin du processus d’installation.

6. Cliquez sur « Terminer » pour achever le processus d’installation. Vous pouvez décocher les cases si vous ne souhaitez pas créer d’icône Cygwin sur le bureau et dans le menu Démarrer.

7. Vous trouverez l’icône Cygwin dans le menu Démarrer ou sur le bureau. Double-cliquez dessus pour lancer Cygwin.

8. Cygwin s’ouvrira avec une fenêtre shell bash, dans laquelle vous pourrez commencer à utiliser les commandes Linux, comme si vous étiez sur une machine Linux.

Utiliser les commandes Linux sous Windows avec QEMU

QEMU est un émulateur et un virtualiseur de machine générique et open source. QEMU est couramment utilisé comme émulateur de système, où il fournit un modèle virtuel d’une autre machine, sur lequel vous pouvez exécuter un système d’exploitation différent de celui sur lequel vous vous trouvez.

Pour installer QEMU :

1. Rendez-vous sur la page de téléchargements et téléchargez le fichier .exe de configuration QEMU pour les ordinateurs 64 bits. Exécutez-le une fois le téléchargement terminé.

2. L’assistant d’installation de QEMU apparaîtra. Cliquez sur « Suivant » pour continuer. Dans les écrans suivants, acceptez le contrat de licence, cliquez sur « Suivant » pour installer les composants sélectionnés par défaut et sélectionnez l’emplacement d’installation, ou laissez le disque local C par défaut. Pour plus de simplicité, ne modifiez pas l’emplacement d’installation.

3. Attendez la fin de l’installation et cliquez sur « Terminer ».

4. L’étape suivante consiste à ajouter le chemin d’accès au dossier d’installation de QEMU à votre variable d’environnement. Pour ce faire, accédez à « Ce PC » -> Disque local C -> « Program Files » -> « qemu », comme indiqué :

5. Mettez en surbrillance et copiez le chemin d’accès au dossier d’installation de QEMU.

6. Ouvrez les paramètres Windows, cliquez sur « Système », faites défiler le menu de gauche et sélectionnez « À propos ». Dans la page « À propos », cliquez sur « Paramètres système avancés » pour ouvrir la fenêtre « Propriétés système ».

7. Dans la fenêtre « Propriétés système », onglet « Avancé », cliquez sur « Variables d’environnement ».

8. Sur la page « Variables d’environnement », double-cliquez sur « Path » pour ajouter le chemin d’accès où QEMU a été installé.

9. Cliquez sur « Nouveau », puis collez le chemin que vous avez copié, et cliquez sur « OK » pour l’ajouter. Cliquez sur « OK » dans les fenêtres « Variables d’environnement » et « Propriétés système » pour enregistrer les modifications et fermer les fenêtres.

10. Pour vérifier que QEMU a bien été installé et que son chemin d’accès a été ajouté aux variables d’environnement, ouvrez PowerShell et exécutez la commande suivante :

qemu-img --help

Si les deux opérations ont réussi, vous verrez une fenêtre affichant la version de qemu-img installée et sa page d’aide.

11. Pour commencer à émuler un système d’exploitation Linux, vous devrez télécharger l’image .iso de la distribution Linux que vous souhaitez émuler avec QEMU. Ensuite, depuis PowerShell, accédez au dossier contenant le fichier .iso et exécutez :

qemu-system-x86_64.exe -boot d -cdrom <nom_distro_linux> -m <RAM_a_allouer>

Pour émuler Ubuntu 22.04.3 à partir d’un fichier iso que j’ai téléchargé, je me rendrais à l’emplacement du fichier .iso et j’exécuterais :

qemu-system-x86_64.exe -boot d -cdrom ubuntu-22.04.3-desktop-amd64.iso -m 2048

Cela ouvrira une fenêtre shell bash, dans laquelle vous pourrez commencer à utiliser les commandes Linux.

Conclusion

Lorsque vous utilisez Linux sous Windows, il est important de garder à l’esprit que même si l’accès aux fichiers Windows depuis Linux et vice versa est possible, les chemins d’accès peuvent nécessiter des ajustements.

Certaines commandes spécifiques au système d’exploitation peuvent ne pas fonctionner comme prévu. Les autorisations de fichiers sont gérées différemment entre les deux systèmes, et vous devrez gérer l’allocation des ressources pour chacun afin de vous assurer qu’ils disposent de suffisamment de puissance pour fonctionner de manière fluide. De plus, n’oubliez pas de toujours sauvegarder vos fichiers importants en cas de problème.

Vous pouvez également approfondir vos connaissances sur les fonctionnalités de WSL2, le processus d’installation et la manière de l’utiliser efficacement.