Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Introduction

Cet article s'adresse aux administrateurs système qui préparent des postes de travail standard sur des ordinateurs fonctionnant sous Windows 10, y compris pour les développeurs de logiciels.

Il convient de noter qu'il existe un problème lié à l'impossibilité d'intégrer les logiciels obtenus dans le Microsoft Store pour une utilisation dans une image personnalisée de Windows 10. Sans entrer dans les détails, je préciserai que ce problème est dû au fait que les programmes installés à partir du Microsoft Store sont liés à un compte d'administrateur, et lors de l'achèvement de la création de l'image personnalisée à l'aide de l'outil sysprep , des erreurs liées à cette circonstance surviennent.

La méthode décrite dans cet article permet d'éviter ce problème lors de la préparation d'une image de Windows 10 avec le sous-système WSL2 préconfiguré, ainsi qu'une image Ubuntu 20.04 configurée à l'avance avec une interface graphique KDE Plasma, qui peut également avoir son propre ensemble de logiciels personnalisés.

Il existe de nombreux exemples et guides sur Internet concernant la configuration du sous-système WSL (c'est-à-dire WSL1 et le relativement nouveau WSL2), avec configuration de l'interface graphique pour les systèmes Linux à partir de la version Ubuntu 16.04 jusqu'à Ubuntu 20.04, mais cela concernait principalement des environnements de bureau basés sur ce que l'on appelle le « léger » xfce4, qui a des limitations explicables dans les personnalisations utilisateurs. En revanche, concernant l’interface graphique KDE Plasma pour Ubuntu 20.04, il n'y avait pas d'informations substantielles. Cependant, cette option offre à l'utilisateur final un ensemble presque illimité de personnalisations tant pour l'apparence du système que pour les réglages matériels, tout en tenant compte des capacités d'intégration des systèmes linux mises en œuvre dans le sous-système WSL2.

Installation du logiciel nécessaire et configuration de WSL2

Vérifiez la version actuelle de Windows, pour cela dans la barre de recherche Windows, entrez la commande winver et vous obtiendrez un résultat similaire à ce qui suit :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Il est important que le système d'exploitation soit en version 1903 ou 1909 (les versions indiquées doivent avoir le correctif cumulative KB4566116 installé), ou 2004 (numéro de build d'au moins 19041), les autres informations n'ont pas d'importance. Si le numéro de version est inférieur, il est recommandé de mettre à jour vers la dernière version de Windows pour reproduire correctement les résultats exposés dans cet article.

Pour faciliter les actions suivantes, téléchargeons le terminal Windows gratuit via le Microsoft Store (il est également possible de le télécharger depuis d'autres sources) :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Nous installons X Server X410 via le même Microsoft Store, ce logiciel est payant, mais dispose d'une période d'essai gratuite de 15 jours, ce qui est amplement suffisant pour divers tests.

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Comme alternative gratuite à X410 téléchargeons et installons le serveur X VcXsrv.

Créons un dossier à un endroit pratique sur le disque, dans lequel nous stockerons nos fichiers. À titre d'exemple, créons le dossier C:wsl.

Télécharger et installons l'installateur autonome Ubuntu 20.04, décompressons le fichier obtenu à l'aide d'un extracteur (par exemple 7-zip). Renommons le dossier décompressé avec un nom long Ubuntu_2004.2020.424.0_x64 en quelque chose de plus acceptable, comme Ubuntu-20.04 et copions-le dans le dossier C:wsl (désormais simplement wsl).

Télécharger et décompressons dans le dossier wsl le serveur audio multiplateforme PulseAudio v.1.1., nous apporterons également des modifications à ses fichiers de configuration.

Dans le fichier wslpulseaudio-1.1etcpulsedefault.pa dans la section Charger les pilotes audio statiquement modifions la ligne :

load-module module-waveout sink_name=output source_name=input record=0


et dans la section Accès réseau modifions la ligne :

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1


Dans le fichier wslpulseaudio-1.1etcpulsedaemon.conf décommentons et modifions la ligne

exit-idle-time = -1


Configurons le sous-système WSL2 conformément à de la documentation Microsoft. La seule remarque est que nous avons déjà téléchargé la distribution Ubuntu, et que nous l'installerons à l'étape suivante. Principalement, la configuration consiste à activer des composants supplémentaires comme « Sous-système Windows pour Linux » et « Plateforme de machine virtuelle », et à redémarrer ensuite pour appliquer les modifications des paramètres de l'ordinateur :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Si nécessaire téléchargeons nous installons le paquet de mises à jour pour le noyau Linux dans WSL2.
Lançons le terminal Windows et choisissons le mode d'exécution de l'invite de commande en appuyant sur les touches Ctrl+Shift+2.

Tout d'abord, nous établissons le mode WSL2, pour cela, saisissons la commande :

wsl  --set-default-version 2


Nous accédons au dossier contenant le chargeur autonome Ubuntu 20.04, dans mon cas, c'est wslUbuntu-20.04 et lançons le fichier ubuntu2004.exe. Lorsque le système demande un nom d'utilisateur, j'indique le nom engineer (vous pouvez saisir un autre nom), saisissez votre mot de passe et confirmez le mot de passe saisi pour le compte spécifié :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
La ligne de commande du terminal est apparue, le noyau Ubuntu 20.04 est installé. Vérifions la configuration du mode WSL2, pour cela dans Windows Terminal, sélectionnons l'onglet Windows PowerShell et entrons la commande :

wsl -l -v


le résultat doit être le suivant :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Configurons le pare-feu Microsoft Defender, c'est-à-dire que nous l’ignorons pour le réseau public :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Configuration d'Ubuntu 20.04

Dans Windows Terminal, sélectionnons à nouveau l'onglet Command Prompt et mettons à jour Ubuntu 20.04. Pour cela, dans l'invite de commande, saisissons :

sudo apt update && sudo apt upgrade -y


Installons le bureau KDE Plasma :

sudo apt install kubuntu-desktop -y


l'installation prend jusqu'à 30 minutes selon les performances de l'ordinateur et la bande passante de la connexion Internet, en cas de demande de l'installateur, confirmons. OK.
Installons la localisation russe et les dictionnaires pour Ubuntu 20.04. Pour cela, dans l'invite de commande, saisissons :

sudo apt install language-pack-ru language-pack-kde-ru -y
sudo apt install libreoffice-l10n-ru libreoffice-help-ru -y
sudo apt install hunspell-ru mueller7-dict -y
sudo update-locale LANG=ru_RU.UTF-8
sudo dpkg-reconfigure locales # note : choisissez ru_RU.UTF-8 UTF-8, voyez les captures d'écran ci-dessous.
sudo apt-get install --reinstall locales


Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Ajoutons la dernière version du bureau KDE Plasma :

sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt update && sudo apt full-upgrade -y


Ajoutons notre ensemble d'applications de console, par exemple mc et neofetch:

sudo apt install mc neofetch -y


Vérifions ce que nous avons obtenu, saisissons dans l'invite de commande neofetch, voir capture d'écran :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Éditons le fichier de configuration WSL /etc/wsl.conf:

sudo nano /etc/wsl.conf


dans la fenêtre vide de l'éditeur de texte ouverte, copions le texte :

[automount]
enabled = true
root = /mnt
options = "metadata,umask=22,fmask=11"
mountFsTab = true
[network]
generateHosts = true
generateResolvConf = true
[interop]
enabled = true
appendWindowsPath = true


sauvegardons les modifications (Ctrl+O), confirmons l'opération et quittons l'éditeur de texte (Ctrl+X).

Exporst le système Ubuntu-20.04 configuré dans le répertoire que nous avons créé. wslPour cela, dans Windows Terminal, sélectionnons à nouveau l'onglet Windows PowerShell et saisissons la commande :

wsl --export Ubuntu-20.04 c:wslUbuntu-plasma-desktop


le système créé nous aidera à automatiser les opérations de démarrage/réinstallation de l'Ubuntu 20.04 configuré, et si nécessaire, nous permettra de le transférer facilement sur un autre ordinateur.

Préparation de fichiers bat et de raccourcis sur le bureau Windows

Avec l'éditeur Notepad++, créons des fichiers bat (en utilisant obligatoirement le codage OEM-866 pour un affichage correct des caractères cyrilliques) :
Le fichier Install-Ubuntu-20.04-plasma-desktop.bat — est destiné à automatiser l'installation initiale de l'image créée d'Ubuntu 20.04 sur un ordinateur avec un sous-système WSL2 et un serveur X déjà configuré. Si le nom d'utilisateur et le mot de passe diffèrent de ceux indiqués dans l'exemple, il est nécessaire d'apporter les modifications correspondantes à ce fichier bat :

@echo off
wsl --set-default-version 2
cls
echo Veuillez patienter pendant l'installation de la distribution Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo La distribution Ubuntu-20.04 a été installée avec succès!
echo N'oubliez pas de changer le compte par défaut «root» avec un compte utilisateur existant,
echo ou utilisez le compte préconfiguré «engineer», mot de passe : «password».
pause


Le fichier Reinstall-Ubuntu-20.04-plasma-desktop.bat — est destiné à réinstaller l'image préparée d'Ubuntu 20.04 sur un ordinateur.

@echo off
wsl --unregister Ubuntu-20.04
wsl --set-default-version 2
cls
echo Veuillez patienter pendant la réinstallation de la distribution Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo La distribution Ubuntu-20.04 a été réinstallée avec succès!
pause


Le fichier Set-default-user.bat — pour définir l'utilisateur «par défaut».

@echo off
set /p answer=Entrez un compte existant dans Ubuntu (engineer) :
c:wslUbuntu-20.04ubuntu2004.exe config --default-user %answer%
cls
echo Le compte utilisateur %answer% dans Ubuntu-20.04 a été défini par défaut !
pause


Le fichier Start-Ubuntu-20.04-plasma-desktop.bat — en fait, lancer le bureau KDE Plasma.

@echo off
echo ===================================== Attention ! ============================================
echo  Pour un fonctionnement correct de l'interface graphique d'Ubuntu 20.04 dans WSL2, il est nécessaire d'utiliser un serveur X.
echo  Remarque : en cas d'utilisation de VcXsrv Windows X Server, il est nécessaire de décommenter
echo  les lignes du fichier Start-Ubuntu-20.04-plasma-desktop.bat contenant "config.xlaunch" et
echo  "vcxsrv.exe", et de commenter toutes les lignes contenant "x410".
echo ============================================================================================
rem start "" /B "c:wslvcxsrvconfig.xlaunch" > nul
start "" /B x410.exe /wm /public > nul
start "" /B "c:wslpulseaudio-1.1binpulseaudio.exe" --use-pid-file=false -D > nul
c:wslUbuntu-20.04Ubuntu2004.exe run "if [ -z "$(pidof plasmashell)" ]; then cd ~ ; export DISPLAY=$(awk '/nameserver/ {print $2; exit}' /etc/resolv.conf 2>/dev/null):0 ; setxkbmap us,ru -option grp:ctrl_shift_toggle ; export LIBGL_ALWAYS_INDIRECT=1 ; export PULSE_SERVER=tcp:$(grep nameserver /etc/resolv.conf | awk '{print $2}') ; sudo /etc/init.d/dbus start &> /dev/null ; sudo service ssh start ; sudo service xrdp start ; plasmashell ; pkill '(gpg|ssh)-agent' ; fi;"
rem taskkill.exe /F /T /IM vcxsrv.exe > nul
taskkill.exe /F /T /IM x410.exe > nul
taskkill.exe /F /IM pulseaudio.exe > nul


Le fichier Start-Ubuntu-20.04-terminal.bat — lancement d'un terminal graphique sans bureau KDE Plasma.

@echo off
echo ===================================== Attention! ============================================
echo  Pour un fonctionnement correct de l'interface graphique Ubuntu 20.04 dans WSL2, il est nécessaire d'utiliser un serveur X.
echo  Remarque : en utilisant VcXsrv Windows X Server, il est nécessaire de décommenter
echo  les lignes dans le fichier Start-Ubuntu-20.04-plasma-desktop.bat contenant "config.xlaunch" et
echo  "vcxsrv.exe", et de commenter toutes les lignes contenant "x410".
echo ============================================================================================
rem start "" \/B "c:wslvcxsrvconfig.xlaunch" > nul
start "" \/B x410.exe \/wm \/public > nul
start "" \/B "c:wslpulseaudio-1.1binpulseaudio.exe" --use-pid-file=false -D > nul
c:wslUbuntu-20.04Ubuntu2004.exe run "cd ~ ; export DISPLAY=$(awk '\/nameserver \/ {print $2; exit}' \/etc\/resolv.conf 2>\/dev\/null):0 ; export LIBGL_ALWAYS_INDIRECT=1 ; setxkbmap us,ru -option grp:ctrl_shift_toggle ; export PULSE_SERVER=tcp:$(grep nameserver \/etc\/resolv.conf | awk '{print $2}') ; sudo \/etc\/init.d\/dbus start &> \/dev\/null ; sudo service ssh start ; sudo service xrdp start ; konsole ; pkill '(gpg|ssh)-agent' ;"
taskkill.exe \/F \/T \/IM x410.exe > nul
rem taskkill.exe \/F \/T \/IM vcxsrv.exe > nul
taskkill.exe \/F \/IM pulseaudio.exe > nul


Pour une utilisation pratique dans le répertoire wsl nous préparons des raccourcis pointant vers les fichiers bat correspondants. Ensuite, le contenu du répertoire wsl se présente comme suit :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Lancement du bureau KDE Plasma

Vérifions que toutes les étapes préparatoires ont été effectuées, essayons de lancer le raccourci Plasma-desktop. Un mot de passe est demandé, saisissons le mot de passe du compte et… la fenêtre se ferme. La première fois, c'est normal. Essayons encore une fois — et nous voyons la barre des tâches KDE Plasma familière. Nous configurons l'apparence de la barre des tâches, par exemple pour plus de commodité, la barre est déplacée sur la droite de l'écran et centrée. Vérifions les paramètres de localisation, si nécessaire, ajoutons la langue russe :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Si nécessaire, nous plaçons des raccourcis pour les applications linux installées sur la barre des tâches KDE Plasma.

Si Ubuntu 20.04 demande de se déconnecter de l'utilisateur pour appliquer les modifications des paramètres, ou si vous devez redémarrer l'OS, tapez la commande suivante dans le terminal Windows :

wsl -d Ubuntu20.04 --shutdown


Avec le raccourci Plasma-desktop ou Konsole vous pouvez lancer l'interface graphique KDE Plasma Ubuntu 20.04. Par exemple, installons via un Konsole éditeur graphique GIMP :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Après l'installation, nous lançons depuis Konsole éditeur graphique GIMP :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
GIMP fonctionne, ce qui était à vérifier.
Voici comment différentes applications linux fonctionnent dans KDE Plasma dans WSL2 :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
la barre des tâches KDE Plasma configurée se trouve sur la droite de l'écran, et la vidéo dans la fenêtre Firefox est lue avec du son.

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Si nécessaire, vous pouvez configurer l'accès à Ubuntu20.04 par SSH et RDP, il est nécessaire d'installer les services appropriés avec la commande :

sudo apt install ssh xrdp -y


remarque : pour activer l'accès par mot de passe SSH il faut éditer le fichier /etc/ssh/sshd_config, à savoir le paramètre PasswordAuthentication no doit être défini sur la valeur PasswordAuthentication yes, sauvegarder les modifications et redémarrer Ubuntu 20.04.

À chaque démarrage d'Ubuntu 20.04, l'adresse IP interne change, avant de configurer l'accès à distance, il est nécessaire de vérifier l'adresse IP actuelle avec la commande ip a:

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Ainsi, cette adresse IP doit être ajoutée aux paramètres des sessions SSH et RDP avant de lancer.
Voici à quoi ressemble l'accès à distance via SSH avec MobaXterm :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Voici à quoi ressemble l'accès à distance via RDP:

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape

Utilisation du serveur X vcxsrv au lieu de x410

Nous lançons et configurons vcxsrv, en veillant à cocher les cases appropriées :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Nous sauvegardons la configuration définie dans le répertoire wslvcxsrv sous le nom standard config.xlaunch.

Nous éditons les fichiers bat Start-Ubuntu-20.04-plasma-desktop.bat et Start-Ubuntu-20.04-terminal.bat selon les instructions qui s'y trouvent.

Nous lançons le raccourci Plasma-desktop, et voilà ce que nous obtenons :

Windows 10 + Linux. Configurer l'interface graphique KDE Plasma pour Ubuntu 20.04 dans WSL2. Guide étape par étape
Le bureau KDE Plasma couvre complètement le bureau Windows, pour basculer entre les fenêtres d'applications Linux et Windows, nous utilisons la combinaison de touches connue Alt+Tab, ce qui n'est pas très pratique.
De plus, il est apparu une caractéristique désagréable du serveur X vcxsrv – il « plante » lors du lancement de certaines applications, en particulier de GIMP ou de LibreOffice Writer. Il serait peut-être préférable d'attendre que les développeurs corrigent les « bugs » observés, mais ce n'est pas sûr… Donc, pour obtenir des résultats acceptables, il vaut mieux utiliser le X Server Microsoft x410.

Conclusion

Cependant, il faut reconnaître que la société Microsoft a produit le produit WSL2 qui fonctionne tout à fait bien, et à mon avis peu éclairé – c'est plutôt réussi. Et autant que je sache, les développeurs continuent de le perfectionner, et il est possible que dans un an ou deux, ce sous-système se présente dans toute sa pleine fonctionnalité.

Source : habr.com

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster