Génération Numérique
Uncategorized

Lancer des logiciels Linux avec Windows10 WSL version 2

24 min de lecture

 Article WSL2 logo

Avec la version 20.04 de Windows 10 dont Microsoft a repris le déploiement en juin 2020 après la correction d’une série de bugs, le sous-système Windows pour <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/linux" data-toggle="popover" title="Linux" data-placement="top" data-trigger="hover" data-html="true" data-content="

Linux est, au sens restreint, le noyau de système d’exploitation Linux, et au sens large, tout système d’exploitation fondé sur le noyau Linux.

À l’origine, le noyau Linux a été développé pour les ordinateurs personnels compatibles PC, et devait être accompagné des logiciels GNU pour constituer un système d’exploitation. Les partisans du projet GNU promeuvent depuis le nom combiné GNU/Linux. Depuis les années 2000, le noyau Linux est utilisé sur du matériel informatique allant des téléphones portables aux super-ordinateurs, et n’est pas toujours accompagné de logiciels GNU. C’est notamment le cas d’Android, qui équipe plus de 80 % des smartphones.

Le noyau Linux a été créé en 1991 par Linus Torvalds. C’est un logiciel libre. Les distributions Linux ont été, et restent, un important vecteur de popularisation du mouvement open source.

« >Linux (Windows subsystem for Linux) est passé en version 2 (WSL 2).

WSL est particulièrement intéressant pour les développeurs, ceux qui utilisent des Raspberry Pi, ou tout un chacun qui souhaite faciliter les communications et utilisations de Windows avec Linux sous SSH par exemple. WSL 2 est une révision majeure de l’architecture du <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/sous-systeme-linux" data-toggle="popover" title="Sous-système Linux" data-placement="top" data-trigger="hover" data-html="true" data-content="

Le Windows Subsystem for Linux (WSL), en français ‘Sous-système Windows pour Linux’, parfois grossièrement appelé ‘Bash sur Windows’ est une couche de compatibilité permettant d’exécuter des fichiers ELF (binaires exécutables) pour Linux à partir d’un système Windows.

« >sous-système Linux, il utilise une technique de virtualisation légère et un noyau Linux complet qui permet de nouvelles fonctionnalités. Cet article vient compléter l’article sur WSL 1 intitulé  » Lancer des logiciels Linux natifs avec Windows10 et son WSL » et publié sur ce site.

1 – Différences en WSL 1 et WSL 2

WSL 2 est disponible uniquement dans Windows 10 à partir de la version 2004. Pour connaitre votre version actuelle de Windows tapez la commande winver dans une invite de commande.

WSL 2 modifie sensiblement la façon dont les distributions Linux interagissent avec Windows. Il s’appuie sur une machine virtuelle légère, basée sur Hyper-V l’hyperviseur de Microsoft, qui travaille en arrière-plan et de façon totalement transparente pour l’utilisateur.

Voici selon Microsoft les principales différences de caractéristiques entre WSL1 et WSL 2.

WSL2 000 001

Contrairement à WSL 1, le noyau Linux de WSL 2 est complet et toujours en <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/open-source" data-toggle="popover" title="Open source" data-placement="top" data-trigger="hover" data-html="true" data-content="

La désignation open source, ou « code source ouvert », s’applique aux logiciels (et s’étend maintenant aux œuvres de l’esprit) dont la licence respecte des critères précisément établis par l’Open Source Initiative, c’est-à-dire les possibilités de libre redistribution, d’accès au code source et de création de travaux dérivés. Mis à la disposition du grand public, ce code source est généralement le résultat d’une collaboration entre programmeurs.

Le mouvement open source s’est développé en opposition au mouvement du logiciel libre qui prône des valeurs philosophiques et politiques de justice, tandis que l’open source se focalise sur des considérations techniques de développement logiciel et ne voit pas de problème à l’utilisation de systèmes intégrés combinant logiciels propriétaires et logiciels open source. Dans la pratique toutefois, la très grande majorité des logiciels open source sont également libres.

Ne pas confondre avec Freeware ou Logiciel libre.

« >Open source. Adapté par Microsoft pour l’optimiser dans Windows, il sera mis à jour régulièrement et automatiquement par l’intermédiaire de Windows Update

WSL 2 augmente les performances du système de fichiers et offre une compatibilité complète des appels système. Les distributions Linux peuvent s’exécuter sous WSL 1 ou WSL 2, et pour une même distribution, il est possible de basculer passer de WSL 1 à WSL 2 et inversement à tout moment.

2 – Installer WSL 2

Note : L’article Lancer des logiciels Linux natifs avec Windows10 et son WSL montre comment installer utiliser et utiliser WSL 1. Reportez-vous souvent à cet article, les procédures d’installation et d’utilisation de WSL 2 sont très semblables à celles de WSL 1 et sont parfois plus détaillées. Dans cet article nous ne montrerons que les principales différences et nouveautés de WSL 2.

Pour utiliser le WSL 2 , vous devez donc avoir au minimum la version 20.04 de Windows 10 en 64 <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/bit" data-toggle="popover" title="bit" data-placement="top" data-trigger="hover" data-html="true" data-content="

Le bit est l’unité la plus simple d’un système de numération. Il ne prend que deux valeurs (chiffres 0 et 1 ou faux et vrai en logique). Bit vient de ‘binary digit’ en anglais.

Le bit est une unité de mesure de base de l’information en informatique à ne pas confondre avec le byte qui correpond à 8 bit soit un octet en français.

« >bit.

Pour installer ce sous-système Linux il faut encore passer par le « vieux » panneau de configuration » en allant dans un premier temps dans le menu « Programmes et fonctionnalités » accessible depuis le panneau de configuration ou les «Paramètres Windows».

  • Depuis le panneau de configuration : Ouvrez Programmes et fonctionnalités puis sur le panneau de gauche cliquez sur « Activer ou désactiver des fonctionnalités Windows ».
  • Depuis « Paramètres » allez dans Applications puis « Applications et fonctionnalités ». En haut à droite sous « Paramètres associés » cliquez sur « Programmes et fonctionnalités » puis comme précédemment sur le panneau de gauche de la fenêtre qui s’ouvre, cliquez sur « Activer ou désactiver des fonctionnalités Windows ».

Dans la fenêtre intitulée « Fonctionnalités de Windows » qui s’ouvre cochez les cases :

  • Sous-système Windows pour Linux.
  • Plateforme d’ordinateur virtuel.
  • Cliquez sur OK

Il est inutile de cocher Hyper-V si vous ne l’utilisez pas, il est incompatible avec l’utilisation d’autres hyperviseurs comme VirtualBox.

Le système télécharge les fichiers requis puis applique les modifications. À la fin du processus une boite de dialogue vous demande de redémarrer Windows pour terminer l’installation.

 WSL2 001 001

WSL 2 fonctionnant avec une machine virtuelle qui nécessite des instructions particulières du processeur, vous devez également activer la virtualisation dans le <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/bios" data-toggle="popover" title="BIOS" data-placement="top" data-trigger="hover" data-html="true" data-content="

Le BIOS (Basic Input Output System) est un petit programme situé dans plusieurs types de mémoires :

  • Une première partie non modifiable située dans la mémoire ROM (Read Only Memory) concerne le  ‘boot block’.
  • Une deuxième partie du BIOS se situe dans une mémoire dont le contenu est modifiable (EEPROM). Cette partie est modifiée lors d’un  ‘flashage’ (mise à jour de la version du BIOS).
  • Une troisième partie du BIOS est placées dans la mémoire CMOS qui contient tous les paramètres du BIOS.

Le rôle du BIOS est de charger tous les périphériques de base pour effectuer un test du système. Cette phase de démarrage est appelée POST (Power On Self Test). Ceci permet par la suite au système d’exploitation de communiquer avec les périphériques matériels et d’utiliser les pilotes qu’il charge à chaque démarrage

Voici ce que le POST fait au démarrage :

  • test du processeur en premier, puis vérification du BIOS.
  • Récupération des paramètres du BIOS.
  • Initialisisation de l’horloge interne et du contrôleur DMA
  • Contrôle du fonctionnement des mémoires vives et des caches.
  • Vérification des périphériques : carte graphique, disques durs, lecteurs de disquettes, CD-ROM…  Si un problème survient, le BIOS donne la source du problème en fonction du nombre de bips qu’il émet.
  • Répartition des différentes IRQ et canaux DMA disponibles entre tous les périphériques
LIRE AUSSI  L’historique du Presse-papiers de Windows 10

« >BIOS de votre machine. Celle-ci dépend de la marque de votre  microprocesseur. Il s’agit de VTX pour Intel et de SVM pour AMD.

Pour savoir si la virtualisation au niveau du processeur est activée ou non, vous pouvez passer par le gestionnaire de tâches.

  • Activez les touches CTRL + Alt + Suppr ou cherchez Gestionnaire de tâches et lancez-le dans la barre de recherches.
  • Le gestionnaire de tâches s’ouvre. Cliquez le cas échéant sur « plus de détails » en bas à gauche de la fenêtre du gestionnaire de tâche si la fenêtre ne montre que la liste des tâches en cours.
  • Ouvrez alors l’onglet « Performances » et sélectionnez « Processeur » dans la zone de gauche.
  • En bas du graphique de l’activité du processeur, vous pouvez voir si la virtualisation est activée ou non.
WSL2 001 002

Si la virtualisation n’est pas activée, vous devez alors passer par le BIOS ou l'<a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/uefi" data-toggle="popover" title="UEFI" data-placement="top" data-trigger="hover" data-html="true" data-content="

Le standard UEFI (Unified Extensible Firmware Interface ou Interface micrologicielle extensible unifiée) définit une interface entre le micrologiciel (firmware) et le système d’exploitation (OS) d’un ordinateur. Cette interface succède sur certaines cartes-mères au BIOS.
L’UEFI offre de nombreux avantages sur le BIOS : fonctionnalités réseau en standard, interface graphique de bonne résolution, gestion intégrée d’installations multiples de systèmes d’exploitation et affranchissement de la limite des disques à 2,2 To.

« >UEFI de votre machine pour l’autoriser (si votre processeur est trop ancien il est possible qu’il ne supporte pas la virtualisation, mais c’est rare aujourd’hui).

Si vous ne savez pas comment activer cette virtualisation, vous pouvez consulter cette page : « Comment activer la technologie de virtualisation Intel ou AMD » du site Tech2Tech.

Après ces opérations votre WSL 2 est opérationnel.

3 – Manipulations sous WSL 2

Dans notre exemple nous allons installer une distribution Linux Debian, sur une machine sur laquelle les distribution Ubuntu 20.04 et Kali-linux avaient été déjà installées sous WSL 1 avant la mise à jour de Windows en version 20.04 et décrit dans l’article déjà cité « Lancer des logiciels Linux natifs avec Windows10 et son WSL ».

Si on ouvre une invite de commande avec la commande wsl  -l -v dont l’option  :

-l :  affiche la liste des distributions installées.

-v :  affiche les versions de WSL sous lesquelles les distributions fonctionnent.

On voit la liste des distributions installées avec leur version. Le « * » devant Ubuntu-20.04 indique que Ubuntu est la version lancée par défaut si vous tapez simplement wsl sans option dans la fenêtre de commande.

Notez que sous WSL 1, l’option wsl -v ne fonctionne pas.

En tapant wsl –help (– = 2 tirets) vous obtiendrez toutes les options de la commande wsl.

WSL2 001 003

On voit par exemple que wsl -l -v est équivalent à wsl  –list –verbose.

En tapant :

wsl : on lance la distribution par défaut Ubuntu-20.04

wsl -d Ubuntu-20.04 : on lance la distribution Ubuntu-20.04.

wsl -d kali-linux : on lance la distribution kali-linux.

Le nom des distribution dit être exactement celui qui apparait dans la liste avec wsl -l ou wsl -l -v.

Par exemple on obtient la fenêtre ci-après en ayant tapé wsl -d kali-linux dans une fenêtre de commande puis la commande linux « ls » pour afficher le contenu du répertoire.

Pour sortir de kali-linux il suffira de taper exit.

Dans la suite de l’article il faudra bien faire la différence entre une fenêtre d’invite commande Windows et une fenêtre bash de Linux.

La fenêtre ci-dessus est une invite de commande Windows. Vous entrez ici des commandes Windows.  Par exemple wsl -l -v est une commande Windows comme la commande dir qui affiche le répertoire courant. Si on tape par exemple la commande Windows wsl -d kali-linux, Windows ouvre une fenêtre qui est sous linux (bash). Dans cette fenêtre on lance des commandes Linux (comme ls qui affiche le répertoire courant). On sort d’un « bash » en tapant la commande exit. C’est la même commande exit qui permet aussi de fermer une fenêtre d’invite de commande Windows.

Pour toutes ces fenêtre de commande on peut utiliser l’invite classique de Windows CMD, une <a href="https://web.archive.org/index.php/fr/astuces/windows/16-ouvrir-la-console-windows.html" data-toggle="popover" title="Console Windows" data-placement="top" data-trigger="hover" data-html="true" data-content="

Dans le champ Rechercher, saisissez cette commande : cmd. Cliquez avec le bouton droit de la souris sur le programme cmd.exe. Dans le menu qui apparaît, cliquez sur Exécuter en tant quadministrateur. La fenêtre d’invite de commandes s’ouvre alors avec les droits d’administration.

Cliquez sur ce lien pour voir l’article sur la fenêtre d’invite de commande.

 

« >console Windows PowerShell ou le tout nouveau Windows Terminal (installable depuis e Microsoft store) qui est très pratique à utiliser et qui a vocation à remplacer l’ancienne invite de commande CMD.

Si dans une autre fenêtre de commande on tape wsl -l -v, on voit dans statut que la distribution kali-linux est en cours de fonctionnement (running).

WSL2 001 005

La fenêtre ci-dessous est une fenêtre bash obtenue après avoir lancé kali-linux et lancé la commande ls.

WSL2 001 004

Une fois dans une distribution on tape exit pour sortir du bash et arrêter la distribution.

4 – Installation d’une distribution Linux sous WSL 2

L’installation est identique sous WSL 1 et WSL2

Lançons le Microsoft store à partir du menu de Windows ou en tapant https://aka.ms/wslstore

Dans un <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/navigateur" data-toggle="popover" title="Navigateur" data-placement="top" data-trigger="hover" data-html="true" data-content="

Un navigateur web (fureteur), est un logiciel conçu pour consulter et afficher le World Wide Web. Techniquement, c’est au minimum un client HTTP.

Il existe de nombreux navigateurs web, pour toutes sortes de matériels (ordinateur personnel, tablette tactile, téléphones mobiles, etc.) et pour différents systèmes d’exploitation (GNU/Linux, Windows, Mac OS, iOS et Android). Les plus connus sont Google Chrome, Mozilla Firefox, Internet Explorer/Edge, Safari, Opera.

« >navigateur. Profitez éventuellement de l’ouverture du Microsoft Store pour mettre à jour les applications déjà installées en cliquant en haut à droite sur l’icone en forma de trois points (…)  pour ouvrir le sous-menu et choisir « Téléchargements et mises à jour ».

Taper Linux par exemple dans la zone de recherche du Microsoft store. Parmi les distributions qui apparaissent nous allons choisir Debian.

WSL2 001 006

Cliquer sur Debian puis sur installer.

WSL2 001 007

Une fois l’installation terminée au bout de quelques secondes, le bouton « Installation » se transforme en « Lancer ».

Comme avec WSL 1, l’icône Debian va apparaitre dans le menu démarrer (rubrique « Récemment ajoutées « ) et vous pouvez l’épingler ou la placer dans la <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/barre-de-taches" data-toggle="popover" title="barre de tâches" data-placement="top" data-trigger="hover" data-html="true" data-content="

La barre des tâches est un des éléments les plus importants de Windows, c’est la grande barre horizontale en bas de l’écran, toujours visible, où l’on retrouve le menu démarrer à gauche, l’heure à droite, et les logiciels en cours d’exécution au milieu.

LIRE AUSSI  Tester et installer Linux Mint Cinnamon sur un PC

La barre des tâches permet de lancer un logiciel et le menu démarrer,de faire une recherche,de voir rapidement tous les logiciels en cours d’utilisation, afficher ou consulter la date et l’heure, régler le volume du son.

« >barre de tâches.

En cliquant sur lancer une console, « bash  » s’ouvre et l’installation proprement dite commence.

Quelques instants après on vous demande de saisir un nom d’utilisateur et un mot de passe. Après confirmation du mot de passe l’installation est terminée et la console bash vous donne la main. Retenez bien ce nom d’utilisateur et ce mot de passe.

Nous allons mettre à jour la distribution :

  • Taper les commandes linux sudo apt-get update puis sudo apt-get upgrade.
  • Répondez par y s’il y a des mises à jour à faire.
  • Une fois la mise à jour terminée, tapez exit pour éteindre la machine et refermer la console bash.
  • Vous pouvez quitter le Microsoft Store s’il était resté ouvert.

Ouvrez une invite de commande Windows et tapez wsl -l -w

On voit maintenant que la distribution Debian a été installée. Elle est en version WSL 1 même si nous sommes sous WSL 2.

WSL2 001 008

5 – Changer la version d’une distribution

Nous allons passer cette version en WSL 2. En regardant l’aide de WSL (wsl –help) on voit qu’il faut taper la commande : wsl –set-version [nom de la distribution]  [n° de version]

Dans notre cas cela donne : wsl –set-version Debian 2

  • La première fois qu’un changement de version est demandé, Windows va demander une mise à jour du noyau.
  • Ouvrez votre navigateur préféré et dans la barre d’adresse entrez l'<a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/url" data-toggle="popover" title="URL" data-placement="top" data-trigger="hover" data-html="true" data-content="

    Une URL (sigle de l’anglais : Uniform Resource Locator, littéralement « localisateur uniforme de ressource »), couramment appelée adresse web, est une chaîne de caractères uniforme qui permet d’identifier une ressource du World Wide Web par son emplacement et de préciser le protocole internet pour la récupérer (par exemple http ou https). Elle peut localiser divers formats de données : document HTML, image, son….

     
    Exemple d’URL dans un navigateur web.

    Une URL, outre les adresses web, concerne d’autres ressources, selon d’autres schémas, par exemple :

    • forum Usenet : news:fr.comp.infosystemes.www.auteurs ;
    • boîte aux lettres électronique : mailto:[email protected] ;
    • FTP : ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/ ;

    « >url : https://aka.ms/wsl2kernel.

  • Sur le site, cliquez sur le lien « Téléchargez le dernier package de mise à jour du noyau Linux WSL2 ».
  • Enregistrez le fichier wsl_update_x64.msi comme pour un téléchargement classique.
  • Le téléchargement terminé, fermez le navigateur et à l’aide du gestionnaire de fichier, double-cliquez sur ce fichier pour le lancer.
  • Le programme s’installe comme n’importe quel autre logiciel.
  • Cette installation ne se fait qu’une fois, Windows mettra le noyau à jour automatiquement par la suite.
WSL2 001 009

Reprenons notre invite de commande et retapons wsl –set-version Debian 2

Cette fois ci la conversion commence et prend un certain temps.

Le noyau Linux de la distribution va évoluer en passant de WSL 1 à WSL 2. Il sera plus complet et offrira plus de fonctionnalités.

WSL2 001 009 1

Au bout de plusieurs minutes, quand l’invite de commande vous à rendu la main, en tapant la commande wsl -l -v, on voit bien que notre Debian est passée en version 2.

WSL2 001 009 2

En tapant wsl –set-version Debian 1 on pourra remettre la distribution en version 1.

En tapant wsl –set-version kali-linux 1 on pourrait passer la distribution kali-linux en version 2. Il faut entrer le nom de la distribution exactement comme il apparait dans liste.

En tapant wsl -d Debian dans une invite de commande on accède donc au bash de Debian.

WSL2 001 009 3

Les commandes sudo apt-get update et sudo apt-get upgrade nous indiquent  que la distribution est à jour.

WSL2 001 009 4

On tape exit pour quitter le bash et revenir à l’invite de commande Windows.

6 – Exporter et importer des distributions

Une des nouvelles fonctionnalités de WSL 2 et de permettre l’export et l’import de machines. Cela permet de faire des sauvegardes de distributions, de les installer sur d’autres ordinateurs ou de gardes des configurations différentes d’une distribution.

Les distributions sont exportées sous forme de fichiers .tar qui est un format de compression.

Pour exporter la distribution de nom Debian sous la forme du fichier de nom deb2.tar il faut entrer la commande : wsl – -export Debian deb2.tar

Ce fichier sera enregistré par défaut dans votre répertoire utilisateur (en général c:usersnom de votre compte).

Nous allons maintenant repasser la distribution Debian en version 1 en tapant la commande wsl –set-version Debian 1

Nous allons exporter de nouveau cette distribution en version 1 vers le fichier que nous appellerons deb1.tar en entrant la commande : wsl –export Debian deb1.tar

Nous allons importer maintenant ces distributions respectivement sous les noms Debian1 et Debian2 en tapant ces commandes :

wsl –import Debian1 c:usersreseauhp deb1.tar

wsl –import Debian2 c:usersreseauhp deb2.tar

Il faut indiquer le nom que vous donnez à la distribution importée, le chemin ou se situe le fichier tar et le nom du fichier (vous pouvez donc placer ou déplacer vos fichiers exportés où vous voulez).

Notez que cette commande semble instable. A plusieurs reprise le résultat de la commande a été fichier introuvable alors que la syntaxe était bonne. N’hésitez pas à la refaire plusieurs fois si cela vous arrive et vérifiez bien avant que les chemins soient corrects.

On voit que les machines sont importées en version 1 (deb2.tar avait été exporté à partir d’une distribution en version 2).

WSL2 001 009 5

Pour importer une machine en WSL 2, il faut préciser la version comme ci-après :

wsl –import Deb3 c:usersreseauhp deb1.tar –version 2

On voit bien ici qu’on obtient bien une distribution Deb3 en version 2 (la fenêtre de commande utilisée ici est une fenêtre PowerShell de Windows Terminal, vous pouvez toujours utiliser l’invite de commande classique CMD).

WSL2 001 009 6

Nous n’allons garder que les 3 distributions Ubuntu, Kali-linux et Deb3.

Pour désinscrire une distribution il faut faire la commande wsl –unregister [nom de la distribution] (voir l’aide wsl –help).

Par exemple pour désinscrire nos 3 distributions on tape successivement les commandes :

wsl –unregister Debian1

wsl –unregister Debian1

wsl –unregister Debian

Il ne nous reste maintenant que 3 distributions dont Deb3 en version 2. On peut éventuellement supprimer les fichier tar pour gagner de la place.

7 – Lancer des applications Linux en mode graphique

Comme avec WSL 1 on peut lancer des applications graphiques Linux à condition de les installer avant car par défaut elles ne le sont pas dans les distributions proposées par Windows.

Reportez-vous à l’article  » Lancer des logiciels Linux natifs avec Windows10 et son WSL » cité plus haut pour voir comment installer des applications graphiques.

Pour notre distribution Debian vous pouvez installer le bureau gnome en utilisant la commande linux : sudo apt-get install task-gnome-desktop L’installation est longue car il y a beaucoup de fichiers. Nous allons installer l’éditeur de texte graphique gedit en tapant sudo apt-get install gedit Pour lancer une application graphique il faut utiliser un xserveur. Nous allons utiliser le logiciel VcXsr (voir l’article  » Lancer des logiciels Linux natifs avec Windows10 et son WSL » pour plus de précisions). Si comme avec wsl 1 vous lancez le xserveur et entrez la commande export DISPLAY = :0.0Puis gedit, vous verrez que la connexion échoue et que l’application ne se lance pas. Cela provient du fait que WSL 1 et WSL 2 ne fonctionnent pas de la même façon. Sous WSL 1, la distribution Linux émulée (la machine Linux) à la même adresse IP que la machine hôte (votre machine Windows).Sous WSL 2, la distribution Linux tourne dans une machine virtuelle qui a une adresse IP particulière. Si vous allez dans le panneau de configuration (modifier les options d’adaptateurs), vous voyez que WSL 2 a ajouté un connecteur virtuel sur lequel est branchée la machine virtuelle.

WSL2 002 001

Dans une invite de commande Windows en tapant ipconfig on obtient la liste des adresses IP.

Notre machine a pour adresse IP locale 172.20.0.122 (en générale votre machine devrait avoir une adresse ressemblant à 192.168.1.xx).

La machine Linux a pour IP 172.17.32.1

WSL2 002 001 1

Donc quand on tape export DISPLAY= :0.0, la machine Linux ne peut pas trouver le xserveur pour afficher l’application graphique. Il faut lui donner en plus l’adresse IP du xserveur qui tourne sur Windows.

Donc pour lancer gedit sous WSL 2 il faut entrer dans notre cas dans la fenêtre bash l’adresse IP de la machine Windows sous la forme :

export DISPLAY=172.20.0.122:0.0

puis taper gedit pour obtenir le fenêtre ci-dessous.

WSL2 002 002

Si vous les avez installées auparavant vous pourrez lancer et utiliser des applications comme le bureau Gnome, Firefox ou <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/libreoffice" data-toggle="popover" title="LibreOffice" data-placement="top" data-trigger="hover" data-html="true" data-content="

LibreOffice (parfois abrégé en LibO ou LO) est une suite bureautique libre et gratuite, dérivée du projet OpenOffice.org. Cette suite intègre toutes les applications usuelles, telles qu’un traitement de texte, un tableur, un outil de présentation, un gestionnaire de formules mathématiques, un système de gestion de bases de données, etc.

 

« >LibreOffice ou des applications spécifiques à Linux que l’on ne trouve pas sous Windows.

Attention toutefois, votre adresse IP locale sous Windows est susceptible de changer à chaque redémarrage de Windows. Si vous voulez inscrire en dur la commande export DISPLAY=xxx.yyy.zzz.aaa :0.0 dans les fichiers de configuration comme indiqué dans l’article WSL 1, pour vous éviter de la retaper avant de lancer une application graphique, il vous faudra attribuer une adresse IP fixe à votre ordinateur.

8 – Autres caractéristiques de WSL 2

Dans WSL 2, vous pouvez aussi

  • Exécuter des outils Windows (p. ex. notepad.exe) à partir d’une ligne de commande Linux.
  • Exécuter les outils Linux  à partir d’une ligne de commande Windows.
  • Partager des variables d’environnement entre Linux et Windows.
  • Utiliser le système de fichiers Linux pour des performances plus rapides en stockant vos fichiers projet dans le système de fichiers Linux  et non pas dans le système de fichiers racine Windows.
  • On peut accéder à son système de fichiers racine Linux à l’aide du <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/explorateur-de-fichiers" data-toggle="popover" title="gestionnaire de fichiers" data-placement="top" data-trigger="hover" data-html="true" data-content="

    L’Explorateur de Windows est l’application utilisée pour parcourir le système Windows et rechercher des fichiers ou des dossiers.

    « >gestionnaire de fichiers Windows en tapant explorer.exe . (avec un point à la fin).

  • WSL 2 offre de meilleures performances et une compatibilité à 100 % des appels système, cependant WSL 1 sera plus rapide si vous préférez stocker vos fichiers projet dans le système de fichiers Windows ou si vous utilisez des applications Windows pour accéder à des fichiers Linux.
  • Les opérations gourmandes en fichiers, telles que git clone,  apt update, apt upgrade, etc., sont toutes nettement plus rapides avec WSL 2.
  • WSL 2 utilise une plus petite quantité de mémoire au démarrage.
  • Si dans Linux vous créez une application réseau comme un serveur ou une base de données,  vous pourrez y accéder à partir de Windows en vous connectant à l’adresse localhost.
  • Vous  pouvez définir WSL 2 comme version par défaut en tapant dans une invite PowerShell : wsl –set-default-version 2. Les distributions Linux seront alors installées en version WSL 2 par défaut.

9 – Architectures de WSL 1 et WSL 2

Sur ce schéma sont représentées les architectures simplifiées de WSL1 et WSL2.

Architectures techniques WSL 1 et WSL 2

  • WSL 2 fonctionne en machine virtuelle légère avec un <a href="https://web.archive.org/index.php/fr/component/seoglossary/1-glossaire-des-articles/disque-virtuel" data-toggle="popover" title="Disque virtuel" data-placement="top" data-trigger="hover" data-html="true" data-content="

    Un disque virtuel ou RAM disque est un logiciel qui utilise une partie de la mémoire vive de l’ordinateur pour simuler une mémoire de masse, fonction assurée avant par les disquettes et aujourd’hui par les disques durs. Les temps d’accès sont grandement améliorés, la taille du disque virtuel est cependant limitée par celle de la mémoire centrale.

    Par extension certain logiciels émulent des disques virtuels à partir du contenu d’un fichier spécifique intégrant des données. Le fichier est ‘monté’ et son contenu est visible et géré comme s’il s’agissait d’un disque normal.

    Un disque virtuel ne doit pas être confondu avec la mémoire virtuelle qui est est le principe inverse, à savoir utiliser la mémoire de masse (principalement disque dur ou SSD) pour simuler la mémoire vive centrale.

    « >disque virtuel.

  • WSL 1 est une sorte de couche émulation où les appels systèmes Linux sont convertis en appels Windows via des ponts. WSL 1 est une couche intermédiaire entre le Noyau Linus et le noyau Windows.

Quand on reste dans Linux (commandes Linux internes)  WSL 2 sera plus rapide que WSL 1  qui devra interpréter et convertir les appels système Linux vers Windows. Par exemple une installation de paquet Linux sera environ 10 fois plus rapide  sous WSL 2 que sous WSL 1.

Par contre quand on sort du disque virtuel Linux, les écritures sur le système de fichiers Windows seront moins rapide sous WSL 2 que sous WSL 1. Dans WSL 2 le Noyau Linux communique directement avec l’hyperviseur qui lui a l’accès direct à la couche matérielle, ce qui explique une plus grande rapidité par rapport à WSL1 où la couche WSL doit passer par le noyau Linux avant d’accèder à la couche matérielle.

Quand sous WSL 2 on doit écrire dans le système de fichiers Windows, on voit que le circuit est plus long, il faut passer par l’hyperviseur puis dans le noyau Windows et ensuite dans la couche matérielle.

Selon le type de traitement utilisé on choisira WSL 1 ou WSL 2 en fonction du critère de rapidité désiré. On retiendra cependant que sous WSL 2 on peut manipuler sans danger les fichiers Windows, en tapant explorer.exe . (avec le point) dans un bash Linux. Pour des problèmes de compatibilité, Microsoft ne le conseille pas sous WSL 1.

Retour en haut