Windows 10 + Linux. Konfigurasi GUI Plasma KDE untuk Ubuntu 20.04 di WSL2. Panduan langkah demi langkah





pengantar



Artikel ini ditujukan untuk perhatian administrator sistem yang menyiapkan tempat kerja pada komputer yang menjalankan Windows 10, termasuk pengembang perangkat lunak.



Perlu dicatat bahwa ada masalah tertentu terkait dengan ketidakmampuan untuk mengintegrasikan perangkat lunak yang diperoleh dari Microsoft Store on-line untuk digunakan dalam gambar kustom Windows 10. Tanpa merinci, saya akan mengklarifikasi bahwa masalah ini disebabkan oleh fakta bahwa program yang diinstal dari Microsoft Store ditautkan dengan akun layanan Administrator, dan ketika utilitas selesai membuat gambar kustom sysprep, terjadi kesalahan karena keadaan ini.



Metode yang dibahas dalam artikel ini untuk menghindari masalah seperti itu saat menyiapkan gambar Windows 10 dengan subsistem WSL2 yang telah dikonfigurasi sebelumnya, serta dengan gambar Ubuntu 20.04 yang telah disiapkan dan dikonfigurasi sebelumnya dengan KDE Plasma GUI, yang pada gilirannya mungkin memiliki perangkat lunak kustomnya sendiri.



Di Internet ada banyak contoh dan panduan untuk mengkonfigurasi subsistem WSL (yaitu WSL1 dan WSL2 yang relatif baru), dengan mengkonfigurasi antarmuka GUI untuk sistem linux berdasarkan OS yang dimulai dari Ubuntu 16.04 hingga Ubuntu 20.04, tetapi yang paling penting adalah desktop berdasarkan apa yang disebut. Xfce4 "Ringan", yang memiliki batasan yang dapat dimengerti dalam pengaturan pengguna. Tetapi sejauh menyangkut KDE Plasma GUI untuk Ubuntu 20.04, tidak ada informasi penting di internet. Tetapi opsi inilah yang memberikan pengguna akhir seperangkat pengaturan yang hampir tidak terbatas untuk tampilan sistem dan pengaturan untuk peralatan, tentu saja, dengan mempertimbangkan kemampuan integrasi sistem linux saat ini yang diimplementasikan dalam subsistem WSL2.



Menginstal rangkaian perangkat lunak yang diperlukan dan mengkonfigurasi WSL2



Kami memeriksa versi Windows saat ini, untuk ini, di bilah pencarian Windows, masukkan perintah winverdan dapatkan sesuatu seperti berikut:





Penting bahwa OS memiliki versi 1903 atau 1909 (versi OS yang ditentukan harus dengan pembaruan kumulatif KB4566116 diinstal), atau 2004 (nomor versi tidak kurang dari 19041), informasi lainnya tidak menjadi masalah. Jika nomor versi lebih rendah, Anda disarankan untuk meningkatkan ke versi terbaru Windows untuk mengulangi hasil yang disajikan dalam artikel ini dengan benar.



Untuk kenyamanan tindakan selanjutnya, instal Terminal Windows gratis menggunakan Microsoft Store (ada juga kemungkinan untuk mengunduh dari sumber lain):





Kami menginstal X Server X410 melalui Microsoft Store yang sama, perangkat lunak ini berbayar, tetapi ada periode gratis 15 hari, yang cukup untuk berbagai pengujian.





Sebagai alternatif gratis untuk X410, unduh dan instal server VcXsrv X.



Di tempat mana pun yang nyaman di disk, buat direktori tempat kami akan menyimpan file kami. Mari buat direktori sebagai contoh C:\wsl.



Unduh dan instal penginstal offline Ubuntu 20.04, keluarkan file yang dihasilkan menggunakan pengarsip (misalnya 7-zip). Kami mengganti nama direktori yang belum dibuka dengan nama yang panjang Ubuntu_2004.2020.424.0_x64menjadi sesuatu yang lebih dapat diterima, misalnya, Ubuntu-20.04dan menyalinnya ke direktori C:\wsl(selanjutnya cukup \wsl).



Unduh dan \wslbuka paket server suara lintas platform PulseAudio v.1.1 ke dalam direktori , dan lakukan juga koreksi pada file konfigurasinya.



Di file di \wsl\pulseaudio-1.1\etc\pulse\default.pabawahLoad audio drivers statically edit baris:



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


dan di bagian tersebut, Network accessedit baris:



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


Di file, \wsl\pulseaudio-1.1\etc\pulse\daemon.confhapus komentar dan ubah baris



exit-idle-time = -1


Kami mengkonfigurasi subsistem WSL2 sesuai dengan dokumentasi Microsoft. Satu-satunya komentar adalah bahwa kami telah mengunduh distribusi Ubuntu, dan kami akan menginstalnya di langkah berikutnya. Pada dasarnya, konfigurasi bermuara pada mengaktifkan komponen tambahan "Subsistem Windows untuk Linux" dan "Platform Mesin Virtual", dan kemudian melakukan boot ulang untuk menerapkan perubahan pada pengaturan komputer:







Jika perlu, unduh dan instal paket pembaruan untuk kernel Linux di WSL2.

Luncurkan Terminal Windows dan pilih mode Command Prompt dengan menekan tombol Ctrl+Shift+2.



Pertama-tama, kami mengatur mode operasi WSL2, untuk ini kami memasukkan perintah:



wsl  --set-default-version 2


Buka direktori dengan bootloader Ubuntu 20.04 offline, dalam kasus saya, ini \wsl\Ubuntu-20.04dan jalankan file ubuntu2004.exe. Saat diminta nama pengguna, saya tentukan nama engineer(Anda dapat memasukkan nama lain), masukkan kata sandi Anda dan konfirmasi kata sandi yang dimasukkan untuk akun yang ditentukan:





Perintah terminal muncul, kernel Ubuntu 20.04 telah diinstal. Mari kita periksa kebenaran pengaturan mode WSL2, untuk ini, di Terminal Windows, pilih tab Windows PowerShell dan masukkan perintah:



wsl -l -v


hasil eksekusinya harus seperti ini:







Kami mengkonfigurasi firewall Microsoft Defender, mis. nonaktifkan untuk jaringan publik:









Menyiapkan Ubuntu 20.04



Di Terminal Windows, pilih lagi tab Command Prompt dan instal pembaruan untuk Ubuntu 20.04. Untuk melakukan ini, pada baris perintah, masukkan:



sudo apt update && sudo apt upgrade –y


Menginstal desktop KDE Plasma:



sudo apt install kubuntu-desktop -y


penginstalan membutuhkan waktu hingga 30 menit, tergantung pada kinerja komputer dan bandwidth saluran akses Internet, ketika diminta oleh penginstal, kami mengonfirmasi OK.

Menginstal lokalisasi dan kamus Rusia Ubuntu 20.04. Untuk melakukan ini, pada baris perintah, masukkan:



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






Tambahkan versi terbaru desktop KDE Plasma:



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


Menambahkan satu set aplikasi konsol, misalnya mc, dan neofetch:



sudo apt install mc neofetch -y


Kami memeriksa apa yang terjadi, masukkan ke dalam baris perintah neofetch, lihat tangkapan layar:





Mengedit file konfigurasi WSL /etc/wsl.conf:



sudo nano /etc/wsl.conf


salin teks ke dalam jendela editor teks kosong yang terbuka:



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


simpan perubahan ( Ctrl+O), konfirmasikan operasi dan keluar dari editor teks ( Ctrl+X).



Kami mengekspor gambar Ubuntu-20.04 yang disesuaikan ke direktori yang kami buat \wsl. Untuk melakukan ini, di Terminal Windows, pilih lagi tab Windows PowerShell dan masukkan perintah:



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


gambar yang dibuat akan membantu kami mengotomatiskan operasi startup / penginstalan ulang dari Ubuntu 20.04 yang dikonfigurasi, jika perlu, ini akan memungkinkan kami untuk dengan mudah mentransfernya ke komputer lain.



Mempersiapkan file bat dan shortcut ke desktop Windows



Menggunakan editor Notepad ++, buat file bat (wajib dalam pengkodean OEM-866 untuk tampilan yang benar dari karakter Cyrillic):

File Install-Ubuntu-20.04-plasma-desktop.bat- dirancang untuk mengotomatiskan penginstalan awal dari image Ubuntu 20.04 yang dibuat pada komputer dengan subsistem WSL2 dan server X yang sudah dikonfigurasi. Jika nama pengguna dan kata sandi berbeda dari yang ditunjukkan dalam contoh, maka Anda perlu melakukan perubahan yang sesuai pada file bat ini:



@echo off
wsl --set-default-version 2
cls
echo     Ubuntu-20.04...
wsl --import Ubuntu-20.04 c:\wsl c:\wsl\Ubuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo  Ubuntu-20.04  !
echo        «root»     ,
echo      «engineer», : «password».
pause


File Reinstall-Ubuntu-20.04-plasma-desktop.bat- dimaksudkan untuk menginstal ulang image Ubuntu 20.04 yang telah disiapkan di komputer.



@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:\wsl\Ubuntu-plasma-desktop
wsl -s Ubuntu-20.04
cls
echo  Ubuntu-20.04  !
pause


File Set-default-user.bat- untuk mengatur pengguna "default".



@echo off
set /p answer=     Ubuntu (engineer):
c:\wsl\Ubuntu-20.04\ubuntu2004.exe config --default-user %answer%
cls
echo    %answer%  Ubuntu-20.04   !
pause


File tersebut Start-Ubuntu-20.04-plasma-desktop.batadalah peluncuran sebenarnya dari desktop KDE Plasma.



@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:\wsl\vcxsrv\config.xlaunch" > nul
start "" /B x410.exe /wm /public > nul
start "" /B "c:\wsl\pulseaudio-1.1\bin\pulseaudio.exe" --use-pid-file=false -D > nul
c:\wsl\Ubuntu-20.04\Ubuntu2004.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


File Start-Ubuntu-20.04-terminal.bat- meluncurkan terminal grafis tanpa desktop KDE Plasma.



@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:\wsl\vcxsrv\config.xlaunch" > nul
start "" /B x410.exe /wm /public > nul
start "" /B "c:\wsl\pulseaudio-1.1\bin\pulseaudio.exe" --use-pid-file=false -D > nul
c:\wsl\Ubuntu-20.04\Ubuntu2004.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


Selain itu, untuk kemudahan penggunaan, kami \wslmenyiapkan pintasan di direktori yang menunjuk ke file bat yang sesuai. Setelah itu, isi direktorinya \wslterlihat seperti ini:







Meluncurkan Desktop Plasma KDE



Kami memeriksa bahwa semua tindakan persiapan telah selesai, kami mencoba meluncurkan pintasan Plasma-desktop. Permintaan kata sandi muncul, masukkan kata sandi untuk akun dan ... jendela ditutup. Tidak apa-apa saat pertama kali. Mencoba lagi, kami melihat bilah tugas KDE Plasma yang sudah dikenal. Kami mengkonfigurasi tampilan bilah tugas yang diperlukan, misalnya, untuk kemudahan penggunaan, panel dipindahkan ke sisi kanan layar dan ditengah. Kami memeriksa pengaturan lokalisasi, jika perlu, tambahkan bahasa Rusia:







Jika perlu, letakkan pintasan untuk aplikasi linux yang diinstal pada bilah tugas KDE Plasma.



Jika Ubuntu 20.04 mengharuskan Anda untuk keluar dari akun pengguna untuk menerapkan perubahan ke pengaturan, atau Anda perlu memulai ulang OS, untuk melakukan ini, masukkan perintah di Terminal Windows:



wsl -d Ubuntu20.04 --shutdown


Menggunakan pintasan Plasma-desktopatau, KonsoleAnda dapat meluncurkan GUI KDE Plasma Ubuntu 20.04. Misalnya, mari instal menggunakan Konsoleeditor grafis GIMP:





Setelah penginstalan selesai, jalankan Konsoleeditor grafis GIMP dari editor grafis:





GIMP berfungsi, yang ingin Anda periksa.

Dan inilah cara kerja berbagai aplikasi linux di KDE Plasma di WSL2:





bilah tugas Plasma KDE yang disesuaikan ada di sisi kanan layar. dan video di jendela Firefox diputar dengan suara.









Jika perlu, Anda dapat mengonfigurasi akses ke Ubuntu20.04 dengan SSHdan RDP, untuk ini Anda perlu menginstal layanan yang sesuai dengan perintah:



sudo apt install ssh xrdp -y


catatan: untuk mengaktifkan akses kata sandi oleh perangkat lunak, SSHAnda perlu mengedit file /etc/ssh/sshd_config, yaitu, parameter PasswordAuthentication noharus disetel ke nilai PasswordAuthentication yes, simpan perubahan, dan mulai ulang Ubuntu20.04.



Setiap kali Anda memulai Ubuntu20.04, alamat ip internal berubah, sebelum mengonfigurasi akses jarak jauh, Anda perlu menentukan alamat ip saat ini menggunakan perintah ip a:





Karenanya, alamat ip diperlukan dalam pengaturan sesi SSHdan RDPsebelum memulai.

Beginilah tampilan akses SSHperangkat lunak jarak jauh menggunakan MobaXterm:





Dan seperti inilah tampilan akses jarak jauh RDP:







Menggunakan server vcxsrv X sebagai ganti x410



Luncurkan dan konfigurasi vcxsrv, centang kotak yang sesuai:











Kami menyimpan konfigurasi yang dikonfigurasi dalam direktori \wsl\vcxsrvdengan nama standar config.xlaunch.



Kami mengedit file bat Start-Ubuntu-20.04-plasma-desktop.batdan Start-Ubuntu-20.04-terminal.batsesuai dengan instruksi yang tersedia di dalamnya.



Kami meluncurkan pintasan Plasma-desktop, dan inilah yang kami dapatkan:





Desktop KDE Plasma menutup sepenuhnya desktop Windows, kami menggunakan kombinasi tombol terkenal untuk beralih antara jendela aplikasi linux dan windows Alt+Tab, yang sangat tidak nyaman.

Selain itu, fitur yang tidak menyenangkan dari X-server terungkap vcxsrv- ia macet saat meluncurkan beberapa aplikasi, khususnya GIMP atau LibreOffice Writer yang sama. Mungkin Anda harus menunggu pengembang untuk menghapus "bug" yang diketahui, tetapi ini tidak pasti ... Jadi untuk mendapatkan hasil yang dapat diterima, lebih baik menggunakan Microsoft X Server x410.



Kesimpulan



Tetap saja, kita harus memberi penghormatan kepada Microsoft, produk WSL2 ternyata cukup berfungsi, dan, menurut pendapat saya yang tidak canggih, sangat sukses. Dan sejauh yang saya tahu, para pengembang terus bekerja keras untuk "menyelesaikannya", dan mungkin - dalam satu atau dua tahun, subsistem ini akan muncul dengan semua kelengkapan fungsionalnya.



All Articles