Korben, roi d’internet, logo bébé avec des lunettes en mode thug life Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Korben Upgrade your mind

Linux avec une interface graphique sous Windows (WSL) Shadow

Bon, je sais, ce titre c’est un peu le bordel, mais je vais tout vous expliquer. J’utilise régulièrement mon PC Shadow qui est un ordinateur Windows dans le cloud qui fonctionne très bien. C’est vraiment un avis objectif, car à chaque fois que je le lance, je suis bluffé par l’absence de latence et les possibilités de leur client.

Breeeef. Dans mes errances nocturnes, je me suis dit que ce serait rigolo d’avoir un Linux sur mon Shadow. Malheureusement, comme c’est une machine virtualisée, ce n’est pas vraiment possible de faire fonctionner à l’intérieur une Virtualbox ou quelque chose comme ça (ou alors je n’ai pas trouvé).

Edit: Techniquement c’est possible de faire tourner une VM dans une VM mais il faut que l’hyperviseur ait une option pour activer l’encapsulation de la virtualisation comme par exemple vhc.enable sur VMWare. Shadow dans mon cas ne permet pas cela.

Mais heureusement, sous Windows, il y a WSL, qui est le Windows Subsystem for Linux. C’est un truc dont je vous ai déjà parlé et qui permet d’avoir une distrib Linux comme Ubuntu, en ligne de commande, nativement sous Windows, sans virtualisation. C’est très cool. Mais ce que je vous propose aujourd’hui, c’est d’aller encore plus loin dans le cool en faisant tourner sur WSL des applications graphiques. Voire même un bureau complet comme Xfce ou Unity.

Notez que ce tuto fonctionnera avec n’importe quelle machine Windows 10, qu’elle soit physique ou virtualisée Shadow, Virtualbox, VMWare ou que sais-je encore.

Ah et j’ai aussi fait un tuto vidéo pour apprendre à installer WSL, si vous préférez.

Étape 1 – Installer WSL

Première mission pour vos petits doigts potelés, installer le WSL. Pour cela, lancez PowerShell en Administrateur comme ceci, en tapant PowerShell dans la barre de menu :

Dans PowerShell, entrez la ligne de commande suivante :

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Étape 2 – Installer une distrib

Ça va s’installer tranquille. Pendant ce temps là, posez-vous la question de la distrib Linux que vous aimeriez installer. Actuellement voici les distrib dispo sur le Windows Store :

Vous pouvez aussi lancer le Windows Store et taper WSL dans la barre de recherche.

Une fois que WSL est installé sur votre machine, il vous faudra rebooter. Dès que la machine a redémarré, vous pouvez installer le Linux de votre choix. Pour mon article, j’ai pris Ubuntu.

Lorsque l’installation se termine, un terminal Linux se lance vous demandant de créer un compte utilisateur et un mot de passe associé.

Trop cool.

Étape 3 – Mettre à jour Linux

Ensuite, mettez à jour tout ça avec un petit :

sudo apt-get update
sudo apt-get upgrade

Bon, voilà, là vous avez un beau Linux sous Windows, c’est parfait. L’autre excellente nouvelle, c’est que par défaut WSL sait exporter nativement ses écrans dans un serveur X (plus besoin de modifier votre .bashrc).

Cela signifie que vous allez pouvoir installer et utiliser des applications graphiques Linux sous Windows. C’est chouette ça non ?

Notez que si à un moment, vous fermez la fenêtre WSL, vous pouvez relancer votre Linux via le menu Démarrer ou le champ de Recherche de Windows en tapant Ubuntu.

Étape 4 – Installer un serveur X

Tout ce que vous avez à faire c’est installer l’outil VcXsrv ou un équivalent sur votre Windows.

Au lancement de VcXsrv, vous pouvez choisir un mode d’affichage. « Multiple Windows » signifie que les applications vont se lancer dans des fenêtres indépendantes. Et « One large windows » va afficher le bureau et tout le bordel dessus ainsi que toutes vos applications.

Pour le moment, comme on n’a pas installé d’environnement de bureau, si vous choisissez « One large windows », vous aurez un joli fond noir.

Pour le reste des paramètres de VcXsrv (display number and co), laissez tout par défaut. VcXsrv est lancé et on va installer une application avec interface graphique pour vérifier que tout fonctionne.

Dans votre terminal WSL, tapez :

sudo apt-get install vim-gtk

Cela va installer gvim qui est un éditeur de texte (vim) avec une GUI. Toujours dans WSL, tapez :

gvim

Et vous devriez voir quelque chose comme ça :

Si ça ne fonctionne pas, c’est que vous n’avez pas la dernière version de WSL (donc des mises à jour Windows). Vous devrez alors rajouter la lignbe suivante tout en bas de votre fichier .bashrc qui se trouve dans votre répertoire home sur votre Linux WSL.

export DISPLAY=:0

Sauvegardez .bashrc, fermez et relancez le shell et retentez le coup avec gvim.

C’est beau je suis ému. A partir de là, vous pouvez installer à peu près tout ce que vous voulez.

Étape 5 – Installer un environnement de bureau (Xfce, Unity…etc.)

Mais si vous voulez un bureau, je vous invite à en installer un. Bon, Unity, je suis pas trop fan comme beaucoup de monde, alors pour changer un peu, je vous propose d’essayer Xfce.

Pour installer Xfce il suffit d’entrer la commande suivante :

sudo apt-get install xfce4

Dès que c’est installé, il vous suffira de taper :

xfce4-session

Et vous devriez obtenir ceci :

Elle est pas belle la vie ?

Si ce tuto vous a plu, n’hésitez pas à le partager sur vos réseaux et à me faire des retours !

Amusez-vous bien !


Sécurité et vitesse pour votre connexion internet

Restez à l’abris des regards indiscrets

En règle générale, utiliser un VPN pour se connecter à internet a tendance à ralentir vos débits de connexions, c’est le cas pour afficher une simple page HTML ou accéder à d’autres catalogues de VOD comme ceux de NETFLIX. Le téléchargement de fichiers ou du flux vidéo en devient parfois saccadé.

Notre VPN vous propose Une bande passante illimitée et une sécurité renforcée avec un cryptage AES 256 et un système anti-empreintes digitales

Restez éfficace et anonyme



Réponses notables

  1. bmx22c says:

    Merci Chef pour ce tuto !
    Malheureusement ça bloque pour moi à gvim qui me renvoi l’erreur « cannot open display » alors que j’ai VcXsrv d’installé et ouvert avec le fameux écran noir…
    De même pour la commande xfce4-session qui me renvoi la même chose: Cannot open display.

    J’ai zieuté le fichier /etc/ssh/sshd_config pour voir si le paramètre « X11Forwarding » est à « yes » et c’est le cas… Je comprends pas.

    EDIT: J’ai du faire la commande suivante: « export DISPLAY=:0 » et ça a tout réglé

  2. EggEek says:

    Salut Korben et les Korbenautes,

    Pour Windows ils y a plus simple : il suffit d’installer le serveur X RDP (le paquet xrdp est dispo sur toutes les distros) et se connecter via mstsc. Généralement il n’y a pas grand chose à changer niveau configuration, juste le port RDP à changer si il est en cours d’utilisation par Windows. Et du coup on peut faire du montage des dossiers et du partage de périphériques USB …

    Je trouve ça plus simple et on a rien à ajouter au Windows.

    Des bisous à tous.

  3. mll says:

    Merci pour l’astuce, mais je veux bien que tu développes (attention, linuxnoob inside).
    Ce que j’ai fait pour l’instant (très fier) :

    • j’ai pigé qu’il fallait taper sudo apt-get install xrdp
    • j’ai pigé que comme xrdp m’envoyait des insultes (« running in daemon mode with no access to pid files, quitting »), il fallait en fait taper sudo xrdp

    …mais pour la partie Windows, je sèche : quand je lance le client rdp (mstsc), et que je tente une connexion à localhost, il me dit qu’une session est en cours… Peut-être est-ce ce qu’on évite si on suit ton conseil de changer le port RDP, mais comment le faire côté serveur WSL ? Et côté mstsc ?

    Edit : trouvé comment faire sur https://dev.to/darksmile92/linux-on-windows-wsl-with-desktop-environment-via-rdp-522g

  4. Korben says:

    J’ai fait une petite MAJ de l’article avec ça. Avec la dernière version de Windows et donc de WSL ce n’est pas nécessaire mais pour ceux qui n’ont pas fait les mises à jour, il faut effectivement écrire un petit

    export DISPLAY=:0
    

    tout en bas du fichier .bashrc de votre répertoire home et relancer le shell au complet.

  5. bmx22c says:

    De mon point de vue, question de simplicité et de fiabilité, une VM sera beaucoup plus simple. Au pire dans ta VM tu fout un dossier partagé jusqu’à la racine de ton disque C: et c’est fini.
    Seul inconvénient de la VM: Pas de support GPU, ce sera que sur ton processeur, à moins que tu fasses du GPU Passthrough mais c’est compliqué, faut un GPU compatible, etc

  6. Bonjour,

    Est-ce qu’il y a moyen d’accéder au système de fichier de Windows depuis WSL ?
    Super tuto en tout cas :slight_smile:

  7. bmx22c says:

    Oui, tu le trouve dans
    ~/.bashrc

  8. bmx22c says:

    Oui, tu le trouve dans le répertoire
    /mnt/<lettre de ton disque>/

    Pour ton disque C:, ce sera donc
    /mnt/c/

Continuer la discussion sur Korben Communauté

14 commentaires supplémentaires dans les réponses

Participants