Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Úvod

Tento článok je určený pre systémových administrátorov, ktorí pripravujú typické pracovné miesta na počítačoch s OS Windows 10, vrátane vývojárov softvéru.

Je dôležité poznamenať, že existuje určité obmedzenie týkajúce sa nemožnosti integrácie softvéru zakúpeného v obchode Microsoft Store na použitie v používateľskej image Windows 10. Bez zbytočných podrobností uvádzam, že tento problém súvisí s tým, že programy nainštalované z Microsoft Store sa viažu na administrátorsky účet, a pri dokončení vytvárania používateľskej image pomocou nástroja sysprep nastať problémy vyplývajúce z tejto situácie.

Spôsob uvedený v tomto článku umožní vyhnúť sa tomuto problému pri príprave image OS Windows 10 s prednastavenou podsystemou WSL2 a s už pripravenou a nastavenou image OS Ubuntu 20.04 s GUI KDE Plasma, ktorá môže mať svoj vlastný súbor používateľského softvéru.

Na internete existuje množstvo príkladov a návodov na nastavenie subsystému WSL (t.j. WSL1 a relatívne nový WSL2), s nastavením GUI rozhrania pre linuxové systémy založené na OS od verzie Ubuntu 16.04 po Ubuntu 20.04, ale väčšinou sa to týkalo desktopov založených na tzv. „ľahkom“ xfce4, ktorý má určité obmedzenia v používateľských nastaveniach. Čo sa týka GUI KDE Plasma pre Ubuntu 20.04, na internete sa nenašli žiadne podstatné informácie. Tento variant však používateľovi poskytuje prakticky neobmedzené možnosti nastavení vzhľadu systému a nastavení hardvéru, samozrejme s ohľadom na aktuálne možnosti integrácie linuxových systémov realizovaných v subsystéme WSL2.

Inštalácia potrebného súboru softvéru a nastavenie WSL2

Skontrolujeme aktuálnu verziu Windows, na tento účel do vyhľadávacieho políčka Windows zadáme príkaz winver a dostaneme približne toto:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Je dôležité, aby mal OS verziu 1903 alebo 1909 (uvedené verzie OS by mali byť so nainštalovaným kumulatívnym aktualizáciou KB4566116), alebo 2004 (číslo zostavy minimálne 19041), zvyšok informácií nie je podstatný. Ak je číslo verzie nižšie, odporúča sa aktualizovať na najnovšiu verziu Windows pre správne zopakovanie výsledkov uvedených v tomto článku.

Pre pohodlie ďalších krokov si nainštalujeme bezplatný Windows Terminal pomocou Microsoft Store (existuje tiež možnosť stiahnuť ho z iných zdrojov):

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Nainštalujeme X Server X410 prostredníctvom toho istého Microsoft Store, tento softvér je platený, ale má bezplatné obdobie 15 dní, čo je úplne dostatočné na rôzne testy.

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Ako bezplatnú alternatívu k X410 stiahneme si a nainštalujeme X-server VcXsrv.

Na disku vytvoríme adresár, kde budeme uchovávať naše súbory. Ako príklad vytvoríme adresár C:wsl.

Stiahneme a nainštalujeme samostatného inštalátora Ubuntu 20.04, rozbalíme získaný súbor pomocou rozbalovača (napríklad 7-zip). Premenúvame rozbalený adresár s dlhým názvom Ubuntu_2004.2020.424.0_x64 na niečo prijateľnejšie, napríklad Ubuntu-20.04 a kopírujeme ho do adresára C:wsl (ďalej v texte jednoducho wsl).

Stiahneme a rozbalíme do adresára wsl krosplatformný zvukový server PulseAudio v.1.1., tiež opravujeme jeho konfiguračné súbory.

V súbore wslpulseaudio-1.1etcpulsedefault.pa v sekcii Načítaj zvukové ovládače staticky upravené riadky:

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


a v sekcii Prístup k sieti upravené riadky:

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


V súbore wslpulseaudio-1.1etcpulsedaemon.conf odkomentujeme a zmeníme riadok

exit-idle-time = -1


Nastavujeme subsystém WSL2 podľa dokumentáciou Microsoft. Jediná poznámka — distribúciu Ubuntu sme už stiahli a budeme ju inštalovať v nasledujúcom kroku. V zásade sa nastavenie týka zapnutia dodatočných komponentov „Subsystem for Windows for Linux“ a „Platforma virtuálnych strojov“, a následného reštartu na aplikovanie zmien v nastaveniach počítača:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Ak je to potrebné stiahneme si a nainštalujeme balík aktualizácií pre jadro Linuxu v WSL2.
Spustíme Windows Terminal a vyberieme režim Command Prompt stlačením klávesov Ctrl+Shift+2.

Najprv nastavíme režim WSL2, na to zadáme príkaz:

wsl --set-default-version 2


Prejdeme do adresára s offline inštalačným programom Ubuntu 20.04, v mojom prípade je to wslUbuntu-20.04 a spustíme súbor ubuntu2004.exe. Pri zadaní mena používateľa uvádzam meno engineer (môžete zadať akékoľvek iné meno), zadajte svoje heslo a potvrďte zadané heslo pre zvolený účet:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Zobrazila sa výzva terminálu, jadro Ubuntu 20.04 je nainštalované. Skontrolujeme správnosť nastavenia režimu WSL2, na to v okne Windows Terminal vyberieme kartu Windows PowerShell a zadáme príkaz:

wsl -l -v


výsledok vykonania by mal byť takýto:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Nastavujeme bránu firewall Microsoft Defender, t.j. vypíname ho pre verejnú sieť:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Nastavenie Ubuntu 20.04

V okne Windows Terminal znova vyberáme kartu Command Prompt a inštalujeme aktualizácie pre Ubuntu 20.04. Na to v príkazovom riadku zadáme:

sudo apt update && sudo apt upgrade -y


Inštalujeme pracovnú plochu KDE Plasma:

sudo apt install kubuntu-desktop -y


inštalácia trvá až 30 minút v závislosti od výkonu počítača a rýchlosti pripojenia na Internet, pri zobrazení výzvy inštalátora potvrdíme OK.
Inštalujeme ruskú lokalizáciu a slovníky pre Ubuntu 20.04. Na to v príkazovom riadku zadáme:

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 # poznámka: vyberáme ru_RU.UTF-8 UTF-8, pozri obrazovky nižšie.
sudo apt-get install --reinstall locales


Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Pridávame poslednú verziu pracovnej plochy KDE Plasma:

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


Pridávame svoj súbor konzolových aplikácií, napríklad mc a neofetch:

sudo apt install mc neofetch -y


Skontrolujeme, čo sa podarilo, zadáme do príkazového riadku neofetch, pozri obrazovku:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Upravujeme konfiguračný súbor WSL /etc/wsl.conf:

sudo nano /etc/wsl.conf


do otvoreného prázdneho okna textového editora skopírujeme text:

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


uložíme zmeny (Ctrl+O), potvrdíme operáciu a vyjdeme z textového editora (Ctrl+X).

Exportujeme nastavený obraz Ubuntu-20.04 do vytvoreného adresára wsl. Na to v okne Windows Terminal znova vyberieme kartu Windows PowerShell a zadáme príkaz:

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


vytvorený obraz nám pomôže automatizovať operácie spustenia/preenštalácie nastaveného Ubuntu 20.04, v prípade potreby umožní jednoduchý prenos na iný počítač.

Príprava bat-súborov a skratkov na pracovnej ploche Windows

S pomocou editora Notepad++ vytvárame bat-súbory (povinne v kódovaní OEM-866 pre správne zobrazenie znakov cyrilice):
Súbor Install-Ubuntu-20.04-plasma-desktop.bat — je určený na automatizáciu počiatočnej inštalácie vytvoreného obrazu Ubuntu 20.04 na počítači s už nastaveným WSL2 a X serverom. Ak sa používateľské meno a heslo líši od uvedených v príklade, je potrebné vykonať zodpovedajúce úpravy v tomto bat súbore:

@echo off
wsl --set-default-version 2
cls
echo Prosím, počkajte, kým sa dokončí inštalácia distribúcie Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Distribúcia Ubuntu-20.04 bola úspešne nainštalovaná!
echo Nezabudnite zmeniť predvolený účet „root“ na existujúci používateľský účet,
echo alebo používajte predinštalovaný účet „engineer“, heslo: „password“.
pause


Súbor Reinstall-Ubuntu-20.04-plasma-desktop.bat — je určený na opätovnú inštaláciu pripravenej distribúcie Ubuntu 20.04 na počítači.

@echo off
wsl --unregister Ubuntu-20.04
wsl --set-default-version 2
cls
echo Prosím, počkajte, kým sa dokončí opätovná inštalácia distribúcie Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Distribúcia Ubuntu-20.04 bola úspešne opätovne nainštalovaná!
pause


Súbor Set-default-user.bat — na nastavenie používateľa „predvolené“.

@echo off
set /p answer=Zadajte existujúci účet v Ubuntu (engineer):
c:wslUbuntu-20.04ubuntu2004.exe config --default-user %answer%
cls
echo Používateľský účet %answer% v Ubuntu-20.04 bol nastavený ako predvolený!
pause


Súbor Start-Ubuntu-20.04-plasma-desktop.bat — vlastne spustenie pracovnej plochy KDE Plasma.

@echo off
echo ===================================== Pozor! ============================================
echo Pre správnu funkciu GUI Ubuntu 20.04 vo WSL2 je potrebné použiť X Server.
echo Poznámka: V prípade používania VcXsrv Windows X Server je potrebné odkomentovať
echo riadky v súbore Start-Ubuntu-20.04-plasma-desktop.bat, ktoré obsahujú "config.xlaunch" a
echo "vcxsrv.exe", a zakomentovať všetky riadky, ktoré obsahujú "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


Súbor Start-Ubuntu-20.04-terminal.bat — spustenie grafického terminálu bez pracovnej plochy KDE Plasma.

@echo off
echo ===================================== Pozor! ============================================
echo  Pre správnu funkciu GUI Ubuntu 20.04 vo WSL2 je potrebné použiť X Server.
echo  Poznámka: pri použití VcXsrv Windows X Server je potrebné odkomentovať
echo  riadky v súbore Start-Ubuntu-20.04-plasma-desktop.bat, ktoré obsahujú "config.xlaunch" a
echo  "vcxsrv.exe", a zakomentovať všetky riadky, ktoré obsahujú "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


Rovnako pre pohodlné používanie v adresári wsl pripravíme skratky, ktoré odkazujú na príslušné bat súbory. Po tom sa obsah adresára wsl vyzerá nasledovne:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Spustenie pracovnej plochy KDE Plasma

Skontrolujeme, či sú všetky prípravné kroky dokončené, skúsime spustiť skratku Plasma-desktop. Objaví sa výzva na heslo, zadáme heslo pre účet a… okno sa zatvorí. Po prvýkrát je to normálne. Skúsime znova — a vidíme známu panel úloh KDE Plasma. Nastavíme požadovaný vzhľad panela úloh, na príklade pre pohodlné používanie sa panel presunie na pravú stranu obrazovky a centrovaný. Skontrolujeme nastavenia lokalizácie, v prípade potreby pridáme ruský jazyk:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

V prípade potreby umiestnime skratky pre nainštalované linuxové aplikácie na panel úloh KDE Plasma.

Ak Ubuntu 20.04 vyžaduje odhlásenie užívateľa na vykonanie zmien v nastaveniach, alebo ak potrebujete reštartovať OS, pre to v Windows Termináli zadajte príkaz:

wsl -d Ubuntu20.04 --shutdown


Pomocou skratky Plasma-desktop alebo Konsole môžete spustiť GUI KDE Plasma Ubuntu 20.04. Napríklad, nainštalujeme pomocou Konsole grafický editor GIMP:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Po dokončení inštalácie spustíme z Konsole grafický editor GIMP:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
GIMP funguje, čo sa malo overiť.
A to, ako fungujú rôzne linuxové aplikácie v KDE Plasma vo WSL2:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
nastavený panel úloh KDE Plasma je na pravej strane obrazovky a video vo Firefoxi sa prehráva so zvukom.

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

V prípade potreby je možné nastaviť prístup k Ubuntu20.04 podľa SSH a RDP, na tento účel je potrebné nainštalovať príslušné služby príkazom:

sudo apt install ssh xrdp -y


poznámka: na povolenie prístup s heslom je SSH potrebné upraviť súbor /etc/ssh/sshd_config, a to konkrétne parameter PasswordAuthentication no je potrebné nastaviť na hodnotu PasswordAuthentication yes, uložiť zmeny a reštartovať Ubuntu20.04.

Pri každom spustení Ubuntu20.04 sa mení vnútorná ip-adresa, pred nastavením vzdialeného prístupu je potrebné overiť aktuálnu ip-adresu príkazom ip a:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Túto ip-adresu je potrebné zadať do nastavení relácií SSH a RDP pred spustením.
Takto vyzerá vzdialený prístup cez SSH s pomocou MobaXterm:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
A takto vyzerá vzdialený prístup cez RDP:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod

Použitie X-servera vcxsrv namiesto x410

Spúšťame a nastavujeme vcxsrv, starostlivo nastavte príslušné zaškrtávacie políčka:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Uložíme nastavenú konfiguráciu do adresára wslvcxsrv so štandardným názvom config.xlaunch.

Upravíme bat-súbory Start-Ubuntu-20.04-plasma-desktop.bat a Start-Ubuntu-20.04-terminal.bat v súlade s pokynmi v nich.

Spúšťame skratku Plasma-desktop, a toto je výsledok:

Windows 10 + Linux. Nastavenie GUI KDE Plasma pre Ubuntu 20.04 v WSL2. Krok za krokom návod
Pracovná plocha KDE Plasma úplne zakrýva pracovnú plochu Windows, na prepínanie medzi oknami aplikácií linux a windows používame známe kombinácie klávesov Alt+Tab, čo nie je veľmi pohodlné.
Okrem toho sa objavila nepríjemná vlastnosť X-servera vcxsrv – padá pri spustení niektorých aplikácií, konkrétne toho istého GIMP alebo LibreOffice Writer. Možno treba počkať, kým vývojári odstránia zistené „bugy“, ale nie je to isté... Takže pre dosiahnutie prijateľných výsledkov je lepšie používať X Server Microsoft x410.

Záver

Napriek tomu je potrebné uznať spoločnosť Microsoft, produkt WSL2 je celkom funkčný a podľa môjho laického názoru – veľmi úspešný. A ako viem, vývojári na ňom naďalej usilovne pracujú, a možno – o rok alebo dva, sa táto subsystéma predstaví v celej svojej funkčnej plnosti.

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster