Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

kirish

Ushbu maqola Windows 10-da ishlaydigan kompyuterlarda odatiy ish joylarini tayyorlaydigan tizim ma'murlari, shu jumladan dasturiy ta'minot ishlab chiqaruvchilari e'tiboriga mo'ljallangan.

Shuni ta'kidlash kerakki, Windows 10-ning maxsus tasvirida foydalanish uchun Microsoft Store onlayn-do'konidan olingan dasturiy ta'minotni integratsiyalashning mumkin emasligi bilan bog'liq ma'lum bir muammo mavjud.Tafsilotlarga kirmasdan, bu muammoning aniqligi bilan bog'liqligini aniqlayman. Microsoft do'konidan o'rnatilgan dasturlar Administrator xizmati hisobi bilan bog'lanadi va yordamchi dastur tomonidan maxsus tasvir yaratish tugallanganda sysprep bu holatlar tufayli xatolar yuzaga keladi.

Ushbu maqolada ko'rib chiqilgan usul Windows 10 OS tasvirini oldindan tuzilgan WSL2 quyi tizimi bilan, shuningdek, KDE Plazma GUI bilan oldindan tayyorlangan va sozlangan Ubuntu 20.04 OS tasvirini tayyorlashda ushbu muammoni oldini oladi, bu esa o'z navbatida o'ziga xos xususiyatlarga ega bo'lishi mumkin. maxsus dasturiy ta'minot to'plami.

Internetda WSL quyi tizimlarini (masalan, WSL1 va nisbatan yangi WSL2) o'rnatish uchun Ubuntu 16.04 dan Ubuntu 20.04 gacha bo'lgan Linux asosidagi operatsion tizimlar uchun GUI interfeysini o'rnatish bo'yicha ko'plab misollar va o'quv qo'llanmalar mavjud, ammo bu asosan ish stoli kompyuterlariga tegishli. deb atalmish bo'yicha. "engil" xfce4, bu foydalanuvchi sozlamalarida tushunarli cheklovlarga ega. Ammo Ubuntu 20.04 uchun KDE Plazma GUI-ga kelsak, tarmoqda unchalik ko'p ma'lumot yo'q. Ammo aynan shu variant oxirgi foydalanuvchiga tizimning tashqi ko'rinishi va apparat sozlamalari uchun deyarli cheksiz sozlamalar to'plamini taqdim etadi, albatta, WSL2 quyi tizimida amalga oshirilgan Linux tizimlarining joriy integratsiya imkoniyatlarini hisobga olgan holda.

Kerakli dasturlar to'plamini o'rnatish va WSL2 ni sozlash

Biz Windows-ning joriy versiyasini tekshiramiz, buning uchun Windows qidiruv panelida buyruqni kiriting winver va biz shunga o'xshash narsani olamiz:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
OS versiyasi 1903 yoki 1909 (ko'rsatilgan OT versiyalari KB4566116 kümülatif yangilanishi o'rnatilgan bo'lishi kerak) yoki 2004 (qurilish raqami 19041 dan kam bo'lmagan) bo'lishi muhim, qolgan ma'lumotlar muhim emas. Agar versiya raqami undan kamroq bo'lsa, ushbu maqoladagi natijalarni to'g'ri takrorlash uchun Windows-ning so'nggi versiyasiga yangilash tavsiya etiladi.

Keyingi harakatlar qulayligi uchun Microsoft do'konidan foydalanib bepul Windows terminalini o'rnating (boshqa manbalardan yuklab olish imkoniyati ham mavjud):

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Biz X Server X410-ni xuddi shu Microsoft do'koni orqali o'rnatamiz, bu dastur pullik, ammo 15 kunlik bepul muddat mavjud, bu turli testlar uchun etarli.

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
X410 ga bepul muqobil sifatida yuklab oling va VcXsrv X serverini o'rnating.

Diskning istalgan qulay joyida biz fayllarimizni saqlaydigan katalog yaratamiz. Misol tariqasida katalog yaratamiz C:wsl.

Yuklab olinmoqda va Ubuntu 20.04 mustaqil o'rnatuvchisini o'rnating, natijada olingan faylni arxivator yordamida oching (masalan, 7-zip). Ochilmagan katalog nomini uzun nom bilan o'zgartiring Ubuntu_2004.2020.424.0_x64 kabi qabul qilinadigan narsaga Ubuntu-20.04 va uni katalogga nusxalash C:wsl (bundan keyin oddiy wsl).

Yuklab olinmoqda va katalogga oching wsl o'zaro platformali ovoz serveri PulseAudio v.1.1., biz uning konfiguratsiya fayllariga ham tuzatishlar kiritamiz.

Fayl ichida wslpulseaudio-1.1etcpulsedefault.pa bo'lim Load audio drivers statically qatorni tahrirlang:

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


va bo'limda Network access qatorni tahrirlang:

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


Fayl ichida wslpulseaudio-1.1etcpulsedaemon.conf izohni olib tashlang va qatorni o'zgartiring

exit-idle-time = -1


Biz WSL2 quyi tizimini mos ravishda sozlaymiz hujjatlar Microsoft. Yagona eslatma shundaki, biz allaqachon Ubuntu distributivini yuklab oldik va keyingi bosqichda uni o'rnatamiz. Asosan, konfiguratsiya "Linux uchun Windows quyi tizimi" va "Virtual mashina platformasi" qo'shimcha komponentlarini yoqish va keyin kompyuter sozlamalariga o'zgartirishlar kiritish uchun qayta ishga tushirishdan iborat:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Zarur bo'lsa yuklab oling va WSL2 da Linux yadrosi xizmat paketini o'rnating.
Biz Windows terminalini ishga tushiramiz va tugmachalarni bosib buyruq satri rejimini tanlaymiz Ctrl+Shift+2.

Avvalo, biz WSL2 ish rejimini o'rnatamiz, buning uchun biz buyruqni kiritamiz:

wsl  --set-default-version 2


Ubuntu 20.04 mustaqil bootloader katalogiga o'zgartiring, mening holimda bu wslUbuntu-20.04 va faylni ishga tushiring ubuntu2004.exe. Foydalanuvchi nomi so'ralganda, foydalanuvchi nomini kiriting engineer (siz boshqa har qanday nomni kiritishingiz mumkin), parolingizni kiriting va belgilangan hisob uchun kiritilgan parolni tasdiqlang:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Terminal so'rovi paydo bo'ladi, Ubuntu 20.04 yadrosi o'rnatilgan. Keling, WSL2 rejimi sozlamalarining to'g'riligini tekshiramiz, buning uchun Windows terminalida Windows PowerShell yorlig'ini tanlang va buyruqni kiriting:

wsl -l -v


bajarish natijasi quyidagicha bo'lishi kerak:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Biz Microsoft Defender xavfsizlik devorini sozlaymiz, ya'ni. umumiy tarmoq uchun uni o'chirib qo'ying:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Ubuntu 20.04 o'rnatilmoqda

Windows terminalida yana buyruq satri yorlig'ini tanlang va Ubuntu 20.04 uchun yangilanishlarni o'rnating. Buning uchun buyruq satriga kiriting:

sudo apt update && sudo apt upgrade –y


KDE Plazma ish stolini o'rnating:

sudo apt install kubuntu-desktop -y


o'rnatish 30 daqiqagacha davom etadi, bu kompyuterning ishlashiga va Internetga kirish kanalining o'tkazish qobiliyatiga qarab, o'rnatuvchi tomonidan so'ralganda, biz tasdiqlaymiz OK.
Ruscha lokalizatsiya va Ubuntu 20.04 lug'atlarini o'rnating. Buning uchun buyruq satriga kiriting:

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 # примечание: выбираем ru_RU.UTF-8 UTF-8, см. скриншоты ниже.
sudo apt-get install --reinstall locales


Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
KDE Plazma ish stolining so‘nggi versiyasini qo‘shing:

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


Biz, masalan, o'z konsol ilovalarimiz to'plamini qo'shamiz mc и neofetch:

sudo apt install mc neofetch -y


Biz nima bo'lganini tekshiramiz, buyruq qatoriga kiramiz neofetch, skrinshotga qarang:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
WSL konfiguratsiya faylini tahrirlash /etc/wsl.conf:

sudo nano /etc/wsl.conf


matnni ochilgan bo'sh matn muharriri oynasiga nusxalash:

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


o'zgarishlarni saqlash (Ctrl+O), operatsiyani tasdiqlang va matn muharriridan chiqing (Ctrl+X).

Moslashtirilgan Ubuntu-20.04 tasvirini biz yaratgan katalogga eksport qilish wsl. Buning uchun Windows terminalida yana Windows PowerShell yorlig'ini tanlang va buyruqni kiriting:

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


yaratilgan tasvir sozlangan Ubuntu 20.04 ni ishga tushirish / qayta o'rnatish operatsiyalarini avtomatlashtirishga yordam beradi, agar kerak bo'lsa, uni boshqa kompyuterga osongina o'tkazishga imkon beradi.

Windows ish stoliga bat fayllar va yorliqlarni tayyorlash

Notepad ++ muharriridan foydalanib, bat fayllarini yarating (kirill harflarini to'g'ri chiqarish uchun OEM-866 kodlashda talab qilinadi):
Fayl Install-Ubuntu-20.04-plasma-desktop.bat - allaqachon sozlangan WSL20.04 quyi tizimi va X serveri bo'lgan kompyuterda Ubuntu 2 ning yaratilgan tasvirini dastlabki o'rnatishni avtomatlashtirish uchun mo'ljallangan. Agar foydalanuvchi nomi va parol misolda ko'rsatilganlardan farq qilsa, siz ushbu bat fayliga tegishli o'zgartirishlarni kiritishingiz kerak:

@echo off
wsl --set-default-version 2
cls
echo Ожидайте окончания установки дистрибутива Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Дистрибутив Ubuntu-20.04 успешно установлен!
echo Не забудьте сменить учетную запись по умолчанию «root» на существующую учетную запись пользователя,
echo либо используйте предустановленную учетную запись «engineer», пароль: «password».
pause


Fayl Reinstall-Ubuntu-20.04-plasma-desktop.bat - Ubuntu 20.04 ning tayyorlangan tasvirini kompyuterga qayta o'rnatish uchun mo'ljallangan.

@echo off
wsl --unregister Ubuntu-20.04
wsl --set-default-version 2
cls
echo Ожидайте окончания переустановки дистрибутива Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:wsl c:wslUbuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo Дистрибутив Ubuntu-20.04 успешно переустановлен!
pause


Fayl Set-default-user.bat - standart foydalanuvchini o'rnatish uchun.

@echo off
set /p answer=Введите существующую учетную запись в Ubuntu (engineer):
c:wslUbuntu-20.04ubuntu2004.exe config --default-user %answer%
cls
echo Учетная запись пользователя %answer% в Ubuntu-20.04 установлена по умолчанию!
pause


Fayl Start-Ubuntu-20.04-plasma-desktop.bat - KDE Plazma ish stolining haqiqiy ishga tushirilishi.

@echo off
echo ===================================== Внимание! ============================================
echo  Для корректной работы GUI Ubuntu 20.04 в WSL2 необходимо использовать X Server.
echo  Примечание: в случае использования VcXsrv Windows X Server необходимо раскомментировать
echo  строки в файле Start-Ubuntu-20.04-plasma-desktop.bat, содержащие "config.xlaunch" и
echo  "vcxsrv.exe", и закомментировать все строки, содержащие "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


Fayl Start-Ubuntu-20.04-terminal.bat - KDE Plazma ish stolisiz grafik terminalni ishga tushirish.

@echo off
echo ===================================== Внимание! ============================================
echo  Для корректной работы GUI Ubuntu 20.04 в WSL2 необходимо использовать X Server.
echo  Примечание: в случае использования VcXsrv Windows X Server необходимо раскомментировать
echo  строки в файле Start-Ubuntu-20.04-plasma-desktop.bat, содержащие "config.xlaunch" и
echo  "vcxsrv.exe", и закомментировать все строки, содержащие "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


Shuningdek, katalogda foydalanish qulayligi uchun wsl mos keladigan bat-fayllarga ishora qiluvchi yorliqlarni tayyorlaymiz. Keyin katalogning mazmuni wsl quyidagilar:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

KDE Plazma ish stoli ishga tushirilmoqda

Biz barcha tayyorgarlik bosqichlari bajarilganligini tekshiramiz, yorliqni ishga tushirishga harakat qilamiz Plasma-desktop. Parol so'rovi paydo bo'ladi, hisob uchun parolni kiriting va ... oyna yopiladi. Birinchi marta hammasi yaxshi. Biz yana urinib ko'ramiz - va biz tanish KDE Plazma vazifalar panelini ko'ramiz. Biz vazifalar panelining ko'rinishini moslashtiramiz, misolda foydalanish qulayligi uchun panel ekranning o'ng tomoniga ko'chiriladi va markazlashtiriladi. Mahalliylashtirish sozlamalarini tekshiramiz, agar kerak bo'lsa, rus tilini qo'shing:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Agar kerak bo'lsa, biz KDE Plazma vazifalar paneliga o'rnatilgan Linux ilovalari uchun yorliqlarni keltiramiz.

Agar Ubuntu 20.04 sozlamalarga o'zgartirishlar kiritish uchun foydalanuvchi hisobingizdan chiqishni talab qilsa yoki OTni qayta ishga tushirishingiz kerak bo'lsa, buning uchun Windows terminalida quyidagi buyruqni kiriting:

wsl -d Ubuntu20.04 --shutdown


Yorliq bilan Plasma-desktop yoki Konsole KDE Plazma Ubuntu 20.04 grafik interfeysini ishga tushirishingiz mumkin. Masalan, bilan o'rnating Konsole GIMP grafik muharriri:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
O'rnatish tugallangach, dan ishga tushiring Konsole GIMP grafik muharriri:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
GIMP ishlaydi, men tekshirmoqchi bo'lgan narsam.
WSL2 da KDE Plazmada turli xil Linux ilovalari qanday ishlaydi:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
moslashtirilgan KDE Plazma vazifalar paneli ekranning o'ng tomonida joylashgan. va Firefox oynasidagi video ovoz bilan o'ynaydi.

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

Agar kerak bo'lsa, Ubuntu20.04 ga kirishni sozlashingiz mumkin SSH и RDP, buning uchun tegishli xizmatlarni buyruq bilan o'rnatishingiz kerak:

sudo apt install ssh xrdp -y


Eslatma: parol bilan kirishni yoqish uchun SSH faylni tahrirlashingiz kerak /etc/ssh/sshd_config, ya'ni parametr PasswordAuthentication no ga sozlanishi kerak PasswordAuthentication yes, o'zgarishlarni saqlang va Ubuntu20.04 ni qayta ishga tushiring.

Har safar Ubuntu20.04-ni ishga tushirganingizda, ichki IP-manzil o'zgaradi, masofadan kirishni sozlashdan oldin buyruq yordamida joriy IP-manzilni tekshirishingiz kerak. ip a:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Shunga ko'ra, ushbu IP-manzil seans sozlamalariga kiritilishi kerak SSH и RDP boshlashdan oldin.
Masofaviy kirish shunday ko'rinadi SSH MobaXterm yordamida:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Va masofaviy kirish shunday ko'rinadi RDP:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq

X410 o'rniga x server vcxsrv dan foydalanish

Ishga tushirish va sozlash vcxsrv, tegishli katakchalarni diqqat bilan o'rnating:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
Konfiguratsiya qilingan konfiguratsiyani katalogda saqlash wslvcxsrv standart nom bilan config.xlaunch.

Bat fayllarni tahrirlash Start-Ubuntu-20.04-plasma-desktop.bat и Start-Ubuntu-20.04-terminal.bat ularning ko'rsatmalariga muvofiq.

Yorliq ishga tushirilmoqda Plasma-desktop, va biz buni olamiz:

Windows 10 + Linux. WSL20.04 da Ubuntu 2 uchun KDE Plazma GUI o'rnatilmoqda. Yo‘l-yo‘riq
KDE Plazma ish stoli Windows ish stolini butunlay yopadi, Linux va Windows ilovalari oynalari o'rtasida almashish uchun biz taniqli tugmalar birikmasidan foydalanamiz. Alt+Tab, bu juda qulay emas.
Bundan tashqari, X serverining noxush xususiyati aniqlandi vcxsrv - ba'zi ilovalarni, xususan, bir xil GIMP yoki LibreOffice Writerni ishga tushirganingizda, u ishlamay qoladi. Ehtimol, ishlab chiquvchilar ko'rsatilgan "xatolar" ni olib tashlaguncha kutishimiz kerak, ammo bu aniq emas ... Shunday qilib, maqbul natijalarga erishish uchun X Server Microsoft x410 dan foydalanish yaxshiroqdir.

xulosa

Shunga qaramay, biz Microsoft-ga hurmat ko'rsatishimiz kerak, WSL2 mahsuloti juda samarali bo'lib chiqdi va mening tajribasiz fikrimcha, juda muvaffaqiyatli. Va bilishimcha, ishlab chiquvchilar uni intensiv ravishda "tugatishda" davom etmoqdalar va ehtimol - bir yoki ikki yil ichida ushbu quyi tizim butun funktsional to'liqligida paydo bo'ladi.

Manba: www.habr.com

a Izoh qo'shish