Introducció
Aquest article està destinat a l'atenció dels administradors de sistemes que preparen llocs de treball típics en ordinadors amb Windows 10, inclosos els desenvolupadors de programari.
Cal tenir en compte que hi ha un cert problema associat a la impossibilitat d'integrar programari obtingut de la botiga en línia de Microsoft Store per utilitzar-lo en una imatge personalitzada de Windows 10. Sense entrar en detalls, aclareixo que aquest problema està relacionat amb el fet que els programes instal·lats des de Microsoft Store es comuniquen amb el compte de servei de l'administrador i quan la creació d'imatges personalitzades s'ha completat per la utilitat sysprep
es produeixen errors a causa d'aquesta circumstància.
El mètode que es parla en aquest article evita aquest problema quan es prepara una imatge del sistema operatiu Windows 10 amb un subsistema WSL2 preconfigurat, així com una imatge del sistema operatiu Ubuntu 20.04 prèviament preparada i configurada amb una GUI de KDE Plasma, que al seu torn pot tenir la seva pròpia conjunt de programari personalitzat.
Hi ha molts exemples i tutorials a Internet per configurar subsistemes WSL (és a dir, WSL1 i el relativament nou WSL2), amb la configuració d'una interfície GUI per a sistemes operatius basats en Linux des d'Ubuntu 16.04 fins a Ubuntu 20.04, però això es refereix principalment als escriptoris basats en sobre l'anomenada. xfce4 "lleuger", que té limitacions comprensibles en la configuració de l'usuari. Però pel que fa a la GUI de KDE Plasma per a Ubuntu 20.04, no hi ha molta informació a la xarxa. Però és aquesta opció la que proporciona a l'usuari final un conjunt gairebé il·limitat de configuracions tant per a l'aparença del sistema com per a la configuració del maquinari, per descomptat, tenint en compte les capacitats d'integració actuals dels sistemes Linux implementats al subsistema WSL2.
Instal·lació del conjunt de programari necessari i configuració de WSL2
Comprovem la versió actual de Windows, per això, a la barra de cerca de Windows, introduïu l'ordre winver
i obtenim una cosa així:
És important que la versió del sistema operatiu sigui 1903 o 1909 (les versions especificades del sistema operatiu han de tenir l'actualització acumulada KB4566116 instal·lada) o 2004 (número de compilació no inferior a 19041), la resta de la informació no importa. Si el número de versió és inferior a aquest, es recomana que actualitzeu a la darrera versió de Windows per reproduir correctament els resultats d'aquest article.
Per a la comoditat de les accions posteriors, instal·leu el terminal de Windows gratuït mitjançant la botiga de Microsoft (també hi ha la possibilitat de descarregar-vos des d'altres fonts):
Instal·lem X Server X410 a través de la mateixa Microsoft Store, aquest programari és de pagament, però hi ha un període gratuït de 15 dies, que és suficient per a diverses proves.
Com a alternativa gratuïta a X410
En qualsevol lloc convenient del disc, creem un directori en el qual emmagatzemarem els nostres fitxers. Com a exemple, creem un directori C:wsl
.
Ubuntu_2004.2020.424.0_x64
en alguna cosa més acceptable, com Ubuntu-20.04
i copieu-lo al directori C:wsl
(d'ara endavant simplement wsl
).
wsl
servidor de so multiplataforma PulseAudio v.1.1., també fem correccions als seus fitxers de configuració.
A l'arxiu wslpulseaudio-1.1etcpulsedefault.pa
a la secció Load audio drivers statically
edita la línia:
load-module module-waveout sink_name=output source_name=input record=0
i a la secció Network access
edita la línia:
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1
A l'arxiu wslpulseaudio-1.1etcpulsedaemon.conf
descomenta i canvia la línia
exit-idle-time = -1
Configurem el subsistema WSL2 d'acord amb
Si és necessari
Iniciem el terminal de Windows i seleccionem el mode d'indicació d'ordres prement les tecles Ctrl+Shift+2
.
En primer lloc, establim el mode de funcionament WSL2, per a això introduïm l'ordre:
wsl --set-default-version 2
Canvieu al directori del carregador d'arrencada autònom Ubuntu 20.04, en el meu cas això és wslUbuntu-20.04
i executeu el fitxer ubuntu2004.exe
. Quan se us demani un nom d'usuari, introduïu-lo engineer
(podeu introduir qualsevol altre nom), introduïu la vostra contrasenya i confirmeu la contrasenya introduïda per al compte especificat:
Apareix una indicació del terminal, el nucli Ubuntu 20.04 està instal·lat. Comprovem la correcció de la configuració del mode WSL2, per això, al terminal de Windows, seleccioneu la pestanya Windows PowerShell i introduïu l'ordre:
wsl -l -v
el resultat de l'execució hauria de ser així:
Configurem el tallafoc de Microsoft Defender, és a dir. desactiveu-lo per a la xarxa pública:
Configuració d'Ubuntu 20.04
Al terminal de Windows, torneu a seleccionar la pestanya Símbol del sistema i instal·leu actualitzacions per a Ubuntu 20.04. Per fer-ho, a la línia d'ordres, introduïu:
sudo apt update && sudo apt upgrade –y
Instal·leu l'escriptori KDE Plasma:
sudo apt install kubuntu-desktop -y
La instal·lació triga fins a 30 minuts, depenent del rendiment de l'ordinador i de l'ample de banda del canal d'accés a Internet, quan ho sol·liciti l'instal·lador, confirmem OK
.
Instal·leu la localització i els diccionaris russos Ubuntu 20.04. Per fer-ho, a la línia d'ordres, introduïu:
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
Afegiu la darrera versió de l'escriptori KDE Plasma:
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt update && sudo apt full-upgrade -y
Afegim el nostre propi conjunt d'aplicacions de consola, per exemple mc
и neofetch
:
sudo apt install mc neofetch -y
Comprovem què ha passat, entrem a la línia d'ordres neofetch
, vegeu la captura de pantalla:
Edició del fitxer de configuració WSL /etc/wsl.conf
:
sudo nano /etc/wsl.conf
copieu el text a la finestra de l'editor de text buida que s'obre:
[automount]
enabled = true
root = /mnt
options = «metadata,umask=22,fmask=11»
mountFsTab = true
[network]
generateHosts = true
generateResolvConf = true
[interop]
enabled = true
appendWindowsPath = true
guardar canvis (Ctrl+O
), confirmeu l'operació i sortiu de l'editor de text (Ctrl+X
).
Exportant la imatge personalitzada d'Ubuntu-20.04 al directori que hem creat wsl
. Per fer-ho, al terminal de Windows, torneu a seleccionar la pestanya Windows PowerShell i introduïu l'ordre:
wsl --export Ubuntu-20.04 c:wslUbuntu-plasma-desktop
la imatge creada ens ajudarà a automatitzar les operacions d'inici/reinstal·lació de l'Ubuntu 20.04 configurat, si cal, ens permetrà transferir-lo fàcilment a un altre ordinador.
Preparació de fitxers bat i dreceres a l'escriptori de Windows
Utilitzant l'editor Notepad ++, creeu fitxers ratpenat (necessaris a la codificació OEM-866 per a la sortida correcta de caràcters ciríl·lics):
expedient Install-Ubuntu-20.04-plasma-desktop.bat
- dissenyat per automatitzar la instal·lació inicial de la imatge creada d'Ubuntu 20.04 en un ordinador amb un subsistema WSL2 ja configurat i un servidor X. Si el nom d'usuari i la contrasenya difereixen dels especificats a l'exemple, haureu de fer els canvis adequats a aquest fitxer bat:
@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
expedient Reinstall-Ubuntu-20.04-plasma-desktop.bat
- dissenyat per reinstal·lar la imatge preparada d'Ubuntu 20.04 a l'ordinador.
@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
expedient Set-default-user.bat
- per definir l'usuari predeterminat.
@echo off
set /p answer=Введите существующую учетную запись в Ubuntu (engineer):
c:wslUbuntu-20.04ubuntu2004.exe config --default-user %answer%
cls
echo Учетная запись пользователя %answer% в Ubuntu-20.04 установлена по умолчанию!
pause
expedient Start-Ubuntu-20.04-plasma-desktop.bat
- el llançament real de l'escriptori 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: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
expedient Start-Ubuntu-20.04-terminal.bat
- Llançament d'un terminal gràfic sense l'escriptori 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: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
També per la facilitat d'ús al catàleg wsl
preparem dreceres que apunten als fitxers bat corresponents. A continuació, el contingut del directori wsl
es veu així:
Llançament de l'escriptori KDE Plasma
Comprovem que s'han completat tots els passos preparatoris, intentem llançar la drecera Plasma-desktop
. Apareix una sol·licitud de contrasenya, introduïu la contrasenya del compte i... es tanca la finestra. Està bé la primera vegada. Ho tornem a provar i veiem la barra de tasques del Plasma del KDE. Personalitzem l'aspecte de la barra de tasques, a l'exemple, per facilitar-ne l'ús, el panell es mou al costat dret de la pantalla i es centra. Comprovem la configuració de localització, si cal, afegim l'idioma rus:
Si cal, portem dreceres per a les aplicacions linux instal·lades a la barra de tasques del KDE Plasma.
Si Ubuntu 20.04 requereix que tanqueu la sessió del vostre compte d'usuari per aplicar canvis a la configuració, o necessiteu reiniciar el sistema operatiu, per fer-ho, al terminal de Windows, introduïu l'ordre:
wsl -d Ubuntu20.04 --shutdown
Amb una drecera Plasma-desktop
o Konsole
podeu executar la GUI de KDE Plasma Ubuntu 20.04. Per exemple, instal·lar amb Konsole
Editor de gràfics GIMP:
Un cop finalitzada la instal·lació, executeu des de Konsole
Editor de gràfics GIMP:
GIMP funciona, que és el que volia comprovar.
I aquí és com funcionen diverses aplicacions de Linux a KDE Plasma a WSL2:
la barra de tasques personalitzada del KDE Plasma es troba a la part dreta de la pantalla. i el vídeo de la finestra del Firefox es reprodueix amb so.
Si cal, podeu configurar l'accés a Ubuntu20.04 mitjançant SSH
и RDP
, per a això cal instal·lar els serveis adequats amb l'ordre:
sudo apt install ssh xrdp -y
nota: per habilitar l'accés amb contrasenya mitjançant SSH
heu d'editar el fitxer /etc/ssh/sshd_config
, és a dir, el paràmetre PasswordAuthentication no
s'ha de configurar a PasswordAuthentication yes
, deseu els canvis i reinicieu Ubuntu20.04.
Cada vegada que inicieu Ubuntu20.04, l'adreça IP interna canvia, abans de configurar l'accés remot, heu de comprovar l'adreça IP actual mitjançant l'ordre ip a
:
En conseqüència, aquesta adreça IP s'ha d'introduir a la configuració de la sessió SSH
и RDP
abans de començar.
Així és l'accés remot SSH
utilitzant MobaXterm:
S'utilitza x server vcxsrv en lloc de x410
Llançament i posada en marxa vcxsrv
, marqueu amb cura les caselles de selecció adequades:
Desant la configuració configurada al directori wslvcxsrv
amb nom estàndard config.xlaunch
.
Edició de fitxers ratpenats Start-Ubuntu-20.04-plasma-desktop.bat
и Start-Ubuntu-20.04-terminal.bat
segons les seves instruccions.
Llançament de la drecera Plasma-desktop
, i això és el que obtenim:
L'escriptori KDE Plasma tanca completament l'escriptori de Windows, per canviar entre les finestres de Linux i les aplicacions de Windows utilitzem la coneguda combinació de tecles Alt+Tab
, que no és gaire convenient.
A més, es va revelar una característica desagradable del servidor X vcxsrv
- es bloqueja en iniciar algunes aplicacions, en particular el mateix GIMP o LibreOffice Writer. Potser hauríem d'esperar fins que els desenvolupadors eliminen els "errors" detectats, però això no és segur... Per tant, per obtenir resultats acceptables, és millor utilitzar l'X Server Microsoft x410.
Conclusió
Tot i així, hem de retre homenatge a Microsoft, el producte WSL2 va resultar bastant funcionant i, segons la meva inexperta opinió, molt reeixit. I pel que jo sé, els desenvolupadors continuen "acabant-lo" intensament i, potser, d'aquí a un any o dos, aquest subsistema apareixerà amb tota la seva integritat funcional.
Font: www.habr.com