Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Introduktion

Den hÀr artikeln Àr avsedd för systemadministratörer som förbereder standardarbetsplatser pÄ datorer som kör Windows 10, inklusive för mjukvaruutvecklare.

Det bör noteras att det finns ett visst problem relaterat till omöjligheten att integrera mjukvara som erhÄllits frÄn Microsoft Store för anvÀndning i en anvÀndarbild av Windows 10. Utan att gÄ in pÄ detaljer förtydligar jag att detta problem beror pÄ att program installerade frÄn Microsoft Store kopplas till administrationskontot, och vid avslutandet av skapandet av anvÀndarbilden med verktyget sysprep uppstÄr fel relaterade till denna omstÀndighet.

Den metod som diskuteras i denna artikel gör det möjligt att undvika sÄdana problem vid förberedelsen av Windows 10-bilden med en förinstÀlld WSL2-understruktur, samt med en förberedd och konfigurerad bild av Ubuntu 20.04 med KDE Plasma GUI, som i sin tur kan ha sin egen uppsÀttning anvÀndarprogramvara.

Det finns ett stort antal exempel och guider pÄ internet för att konfigurera WSL-understrukturen (dvs. WSL1 och den relativt nya WSL2), med instÀllning av GUI-grÀnssnitt för Linux-system baserat pÄ versioner av Ubuntu frÄn 16.04 till 20.04, men detta har frÀmst handlat om skrivbord baserade pÄ sÄ kallade "lÀttviktiga" xfce4, som har ganska tydliga begrÀnsningar i anvÀndarinstÀllningar. NÀr det kommer till KDE Plasma GUI för Ubuntu 20.04 fanns det dock ingen betydande information pÄ nÀtet. Men just detta alternativ ger anvÀndaren praktiskt taget obegrÀnsade möjligheter i bÄde systemets utseende och hÄrdvaruinstÀllningar, givetvis med hÀnsyn till de aktuella integrationsmöjligheterna för Linux-system som realiseras i WSL2-understrukturen.

Installation av nödvÀndig mjukvarusvit och konfiguration av WSL2

Kontrollera den aktuella versionen av Windows, för detta skriver vi in kommandot i Windows sökruta winver och fÄr ungefÀr följande resultat:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Det Àr viktigt att operativsystemet har version 1903 eller 1909 (de angivna versionerna av operativsystemet ska ha den kumulativa uppdateringen KB4566116 installerad), eller 2004 (byggnummer minst 19041), övrig information spelar ingen roll. Om versionsnumret Àr lÀgre rekommenderas det att uppdatera till den senaste versionen av Windows för att korrekt upprepa resultaten som beskrivs i denna artikel.

För att underlÀtta framtida ÄtgÀrder installerar vi den kostnadsfria Windows Terminal frÄn Microsoft Store (det finns ocksÄ möjlighet att ladda ner frÄn andra kÀllor):

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Vi installerar X Server X410 via samma Microsoft Store, denna programvara Àr betalning, men det finns en gratisperiod pÄ 15 dagar, vilket Àr helt tillrÀckligt för att genomföra olika tester.

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Som ett gratisalternativ till X410 laddar vi ner och installerar X-server VcXsrv.

PÄ valfri plats pÄ disken skapar vi en katalog dÀr vi ska förvara vÄra filer. Som exempel skapar vi en katalog C:wsl.

Ladda ner och installerar den fristÄende installationen av Ubuntu 20.04, vi packar upp den nedladdade filen med ett arkiveringsprogram (till exempel 7-zip). Vi döper om den utpackade katalogen med det lÄnga namnet Ubuntu_2004.2020.424.0_x64 till nÄgot mer acceptabelt, till exempel Ubuntu-20.04 och kopierar den till katalogen C:wsl (hÀdanefter bara wsl).

Ladda ner och packar upp i katalogen wsl den plattformsoberoende ljudserver PulseAudio v.1.1, samt gör korrigeringar i dess konfigurationsfiler.

I filen wslpulseaudio-1.1etcpulsedefault.pa i avsnittet Ladda ljuddrivrutiner statiskt vi redigerar raden:

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


och i avsnittet NÀtverksÄtkomst vi redigerar raden:

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


I filen wslpulseaudio-1.1etcpulsedaemon.conf vi avkommentarar och Àndrar raden

exit-idle-time = -1


Vi konfigurerar WSL2-systemet i enlighet med dokumentationen Microsoft. En enda kommentar - distributionen av Ubuntu har vi redan laddat ner, och vi kommer att installera den i nÀsta steg. I grunden handlar konfigurationen om att aktivera ytterligare komponenter 'Windows Subsystem for Linux' och 'Virtual Machine Platform', samt efterföljande omstart för att tillÀmpa Àndringarna i datorns instÀllningar:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Vid behov laddar vi ner och installerar Linux-kerneluppdateringspaketet för WSL2.
Vi öppnar Windows Terminal och vÀljer lÀget Kommandotolk genom att trycka pÄ tangenterna Ctrl+Shift+2.

Först installerar vi WSL2-lÀget, för detta skriver vi kommandot:

wsl --set-default-version 2


Vi gÄr till katalogen med den fristÄende startprogrammet av Ubuntu 20.04, i mitt fall Àr detta wslUbuntu-20.04 och startar filen ubuntu2004.exe. NÀr anvÀndarnamnfrÄgan dyker upp anger jag namnet engineer (du kan ange vilket annat namn som helst), ange ditt lösenord och bekrÀfta det angivna lösenordet för det angivna kontot:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Inledande terminalprompten har visat sig, kÀrnan Ubuntu 20.04 Àr installerad. LÄt oss kontrollera om WSL2-lÀget Àr korrekt konfigurerat, för detta vÀljer vi fliken Windows PowerShell i Windows Terminal och skriver in kommandot:

wsl -l -v


resultatet av körningen ska vara följande:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Vi konfigurerar Microsoft Defender-brannvÀggen, det vill sÀga vi inaktiverar den för offentliga nÀtverk:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Konfiguration av Ubuntu 20.04

I Windows Terminal vÀljer vi Äterigen fliken Kommandotolk och installerar uppdateringarna för Ubuntu 20.04. För detta skriver vi in i kommandotolken:

sudo apt update && sudo apt upgrade -y


Vi installerar KDE Plasma-skrivbordet:

sudo apt install kubuntu-desktop -y


installation tar upp till 30 minuter beroende pÄ datorprestanda och internetanslutningens hastighet, vid installerarens prompt bekrÀftar vi OK.
Vi installerar rysk lokalisering och ordböcker för Ubuntu 20.04. För detta skriver vi in i kommandotolken:

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 # anteckning: vÀlj ru_RU.UTF-8 UTF-8, se skÀrmdumparna nedan.
sudo apt-get install --reinstall locales


Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
LĂ€gg till den senaste versionen av KDE Plasma-skrivbordet:

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


LÀgg till din egen uppsÀttning av konsolapplikationer, till exempel mc och neofetch:

sudo apt install mc neofetch -y


Vi kontrollerar vad som blev av resultatet, skriv in i kommandotolken neofetch, se skÀrmdump:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Vi redigerar konfigurationsfilen WSL /etc/wsl.conf:

sudo nano /etc/wsl.conf


i det öppna tomma fönstret i texteditorn kopierar vi följande text:

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


spara Àndringarna (Ctrl+O), bekrÀfta operationen och gÄ ut ur texteditorn (Ctrl+X).

Vi exporterar den konfigurerade bilden av Ubuntu-20.04 till den katalog vi skapade wsl. För detta vÀljer vi Äterigen fliken Windows PowerShell i Windows Terminal och skriver in kommandot:

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


den skapade bilden hjÀlper oss att automatisera felsöknings-/Äterinstallationsoperationer av den konfigurerade Ubuntu 20.04, och vid behov möjliggör enkel överflyttning till en annan dator.

Förberedelse av bat-filer och genvÀgar pÄ Windows-skrivbordet

Med hjÀlp av Notepad++-redigeraren skapar vi bat-filer (nödvÀndigtvis i kodningen OEM-866 för korrekt visning av kyrilliska tecken):
Fil Install-Ubuntu-20.04-plasma-desktop.bat — anvĂ€nds för att automatisera den initiala installationen av den skapade bilden av Ubuntu 20.04 pĂ„ en dator med en redan konfigurerad WSL2-subsystem och X-server. Om anvĂ€ndarnamn och lösenord skiljer sig frĂ„n angivna exempel, mĂ„ste motsvarande Ă€ndringar göras i denna bat-fil:

@echo off
wsl --set-default-version 2
cls
echo VÀnta pÄ att installationen av Ubuntu-20.04-distributionen ska avslutas...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Ubuntu-20.04-distributionen har installerats!
echo Glöm inte att byta det standardkontot „root” till ett befintligt anvĂ€ndarkonto,
echo eller anvĂ€nd det förinstallerade kontot „engineer”, lösenord: „password”.
pause


Fil Reinstall-Ubuntu-20.04-plasma-desktop.bat — anvĂ€nds för att Ă„terinstallera den förberedda bilden av Ubuntu 20.04 pĂ„ en dator.

@echo off
wsl --unregister Ubuntu-20.04
wsl --set-default-version 2
cls
echo VÀnta pÄ att Äterinstallationen av Ubuntu-20.04-distributionen ska avslutas...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Ubuntu-20.04-distributionen har Äterinstallerats!
pause


Fil Set-default-user.bat — för att stĂ€lla in anvĂ€ndaren „standard”.

@echo off
set /p answer=Ange ett befintligt konto i Ubuntu (engineer):
c:wslUbuntu-20.04ubuntu2004.exe config --default-user %answer%
cls
echo AnvÀndarkontot %answer% i Ubuntu-20.04 har stÀllts in som standard!
pause


Fil Start-Ubuntu-20.04-plasma-desktop.bat — faktiskt starta KDE Plasma-skrivbordet.

@echo off
echo ===================================== Viktigt! ============================================
echo  För korrekt funktion av GUI Ubuntu 20.04 i WSL2 mÄste en X Server anvÀndas.
echo  Obs: vid anvÀndning av VcXsrv Windows X Server mÄste du avkommentera
echo  raderna i filen Start-Ubuntu-20.04-plasma-desktop.bat som innehÄller "config.xlaunch" och
echo  "vcxsrv.exe", och kommentera alla rader som innehÄller "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


Fil Start-Ubuntu-20.04-terminal.bat — starta den grafiska terminalen utan KDE Plasma-skrivbordet.

@echo off
echo ===================================== Obs! ============================================
echo  För korrekt funktion av GUI Ubuntu 20.04 i WSL2 Àr det nödvÀndigt att anvÀnda X Server.
echo  Notera: vid anvÀndning av VcXsrv Windows X Server mÄste du avkommentera
echo  raderna i filen Start-Ubuntu-20.04-plasma-desktop.bat som innehÄller "config.xlaunch" och
echo  "vcxsrv.exe", och kommentera alla rader som innehÄller "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


För att underlÀtta anvÀndningen i katalogen wsl förbereder vi genvÀgar som pekar pÄ de motsvarande bat-filerna. DÀrefter innehÄllet i katalogen wsl ser ut som följer:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Starta skrivbordet KDE Plasma

Kontrollera att alla förberedande Ă„tgĂ€rder har utförts, försök att starta genvĂ€gen Plasma-desktop. Ett lösenordsmeddelande visas, ange lösenordet för ditt konto och
 fönstret stĂ€ngs. Första gĂ„ngen Ă€r detta normalt. Försök igen — och se den bekanta KDE Plasma-panelen. Vi anpassar den nödvĂ€ndiga utseendet för panelen, som exempel för att underlĂ€tta anvĂ€ndning, flyttas panelen till den högra delen av skĂ€rmen och centreras. Kontrollera sprĂ„kinstĂ€llningarna, om nödvĂ€ndigt, lĂ€gg till ryska sprĂ„ket:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Vid behov kan vi flytta genvÀgar för installerade linux-applikationer till KDE Plasma-panelen.

Om Ubuntu 20.04 krÀver att du loggar ut frÄn anvÀndarkontot för att tillÀmpa Àndringar i instÀllningarna, eller om du mÄste starta om OS, skriv följande kommando i Windows Terminal:

wsl -d Ubuntu20.04 --shutdown


Med hjÀlp av genvÀgen Plasma-desktop eller Konsole kan du starta GUI KDE Plasma Ubuntu 20.04. Till exempel kan vi installera med hjÀlp av Konsole grafiska redigeraren GIMP:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Efter installationen, starta frÄn Konsole grafiska redigeraren GIMP:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
GIMP fungerar, vilket var det vi behövde kontrollera.
Och sÄ hÀr fungerar olika linux-applikationer i KDE Plasma i WSL2:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
den konfigurerade KDE Plasma-panelen finns i den högra delen av skÀrmen, och videon i Firefox spelas upp med ljud.

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

Vid behov kan du konfigurera Ätkomst till Ubuntu20.04 via SSH och RDP, för att göra detta mÄste du installera motsvarande tjÀnster med kommandot:

sudo apt install ssh xrdp -y


observera: för att aktivera lösenordsÄtkomst mÄste SSH du redigera filen /etc/ssh/sshd_config, nÀmligen parametern PasswordAuthentication no mÄste sÀttas till vÀrdet PasswordAuthentication yes, spara Àndringarna och starta om Ubuntu 20.04.

Vid varje start av Ubuntu 20.04 Àndras den interna ip-adressen, innan du stÀller in fjÀrrÄtkomst mÄste du kontrollera den aktuella ip-adressen med kommandot ip a:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
DÀrför mÄste denna ip-adress lÀggas till i sessionernas instÀllningar SSH och RDP innan du startar.
SÄ hÀr ser fjÀrrÄtkomst ut via SSH med MobaXterm:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
SÄ hÀr ser fjÀrrÄtkomst ut via RDP:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide

AnvÀndning av X-servern vcxsrv istÀllet för x410

Starta och konfigurera vcxsrv, se noga till att stÀlla in motsvarande alternativ:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Spara den konfigurerade instÀllningen i katalogen wslvcxsrv med det standardnamnet config.xlaunch.

Redigera bat-filer Start-Ubuntu-20.04-plasma-desktop.bat och Start-Ubuntu-20.04-terminal.bat enligt de instruktioner som finns i dem.

Starta genvÀgen Plasma-desktop, och sÄ hÀr ser det ut:

Windows 10 + Linux. Configuring KDE Plasma GUI for Ubuntu 20.04 in WSL2. Step-by-step guide
Skrivbordet KDE Plasma tÀcker helt Windows-skrivbordet, för att vÀxla mellan fönster med Linux- och Windows-applikationer anvÀnder vi den kÀnda kommandotangenten Alt+Tab, vilket inte Àr helt praktiskt.
Dessutom upptĂ€cktes en obehaglig funktion hos X-servern vcxsrv – den "kraschar" vid starten av vissa applikationer, sĂ€rskilt GIMP eller LibreOffice Writer. Det kan hĂ€nda att man ska vĂ€nta tills utvecklarna Ă„tgĂ€rdar de observerade "buggarna", men det Ă€r inte sĂ€kert... SĂ„ för att fĂ„ acceptabla resultat Ă€r det bĂ€ttre att anvĂ€nda X Server Microsoft x410.

Slutsats

Skulle Ă€ndĂ„ ge erkĂ€nnande till Microsoft, produkten WSL2 har visat sig vara ganska funktionell och, enligt min naiva Ă„sikt, riktigt lyckad. Och sĂ„ vitt jag vet, fortsĂ€tter utvecklarna att intensivt förbĂ€ttra den, och kanske – om ett Ă„r eller tvĂ„, kommer detta system att framstĂ„ i sin fulla funktionalitet.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster