Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n

Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n

Hyper-V-en Linux makina birtualak erabiltzea, Windows gonbidatutako makinak erabiltzea baino esperientzia apur bat gutxiago erosoa da. Horren arrazoia da Hyper-V ez zela hasiera batean mahaigaineko erabilerarako pentsatua; ezin dituzu gonbidatuen gehigarrien pakete bat instalatu eta azelerazio grafiko funtzionala, arbel bat, direktorio partekatuak eta bizi-pozak lortu, VirtualBox-en gertatzen den bezala.

Hyper-V-k berak eskaintzen du hainbat integrazio-zerbitzu - beraz, gonbidatuek ostalariaren itzal kopia zerbitzua (VSS) erabil dezakete, gonbidatuek itzaltze seinalea bidal dezakete, gonbidatuek sistemaren ordua birtualizazio ostalariarekin sinkroniza dezakete, fitxategiak ostalaritik makina birtualarekin trukatu daitezke (Copy-VMFile PowerShell-en). Sistema eragile gonbidatu batzuentzat, Windows barne, noski, Makina Birtualaren Konexioa aplikazioan (vmconnect.exe) Saio-modu hobetua eskuragarri dago, RDP protokoloaren bidez funtzionatzen duena eta disko-gailuak eta inprimagailuak makina birtualera transferitzeko aukera ematen dizu, baita partekatutako arbel bat erabiltzeko ere.

Saio-modu hobetuak Windows-en kanpoan funtzionatzen du Hyper-V-en instalatu eta berehala. Linux-eko gonbidatuekin, vsock onartzen duen RDP zerbitzari bat instalatu behar duzu (sare birtualaren helbide-espazio berezia Linux-en hipervisorarekin komunikatzeko diseinatua). Windows-en mahaigaineko edizioetan Hyper-V-rekin datorren VMCreate aplikazioan Ubunturako bada, makina birtualaren txantiloi berezi bat dago, non vsock-ekin lan egiten duen RDP zerbitzari bat. XRDP dagoeneko aurrez instalatuta dago, gero eta beste banaketa batzuekin gero eta argi gutxiago dago, adibidez, egilea mezu hau Fedoran ESM gaitzea lortu nuen. Hemen saio hobetua aktibatuko dugu Arch Linux makina birtualerako.

Integrazio zerbitzuak instalatzea

Hemen dena errazago edo gutxiago da, paketea instalatu besterik ez dugu egin behar hyperv komunitatearen biltegitik:

% sudo pacman -S hyperv

Gaitu ditzagun VSS eta truke zerbitzuak metadatuak eta fitxategiak:

% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; done

XRDP instalatzen

biltegia linux-vm-tools GitHub-ek Arch Linux eta Ubuntu-rako XRDP instalatzeko eta konfiguratzeko prozesua automatizatzen duten script-ak eskaintzen ditu. Instalatu dezagun Git, dagoeneko instalatuta ez badago, konpiladorearekin eta eskuz eraikitzeko beste software batzuekin batera, eta gero klonatu biltegia:

% sudo pacman -S git base-devel
% git clone https://github.com/microsoft/linux-vm-tools.git
% cd linux-vm-tools/arch

Artikulu hau idazteko unean, XRDPren azken bertsioa, gidoiak instalatzen duena makepkg.shbiltegian iradokitakoa 0.9.11 da, zeinetan analisia apurtzen den vsock://-helbideak, beraz, XRDP Git-etik eta Xorg kontrolatzailea AUR-etik eskuz instalatu beharko duzu. AUR-n eskaintzen den XRDP adabakia ere apur bat zaharkituta dago, beraz, PKGBUILD eta adabakia eskuz editatu beharko dituzu.

Klon ditzagun AUR-eko PKGBUILD-ekin biltegiak (normalean prozedura hau, eraikuntzarekin batera, bezalako programen bidez automatizatuta dago. bai, baina egileak prozedura hau guztia sistema garbi batean egin zuen):

% git clone https://aur.archlinux.org/xrdp-devel-git.git
% git clone https://aur.archlinux.org/xorgxrdp-devel-git.git

Instalatu dezagun XRDP bera lehenik. Ireki dezagun fitxategia PKGBUILD edozein testu-editore.

Editatu ditzagun eraikuntza-parametroak. Git-etik XRDP eraikitzeko PKGBUILD-k ez du vsock euskarria barne hartzen eraikitzerakoan, beraz, gaitu dezagun geuk:

 build() {
   cd $pkgname
   ./configure --prefix=/usr 
               --sysconfdir=/etc 
               --localstatedir=/var 
               --sbindir=/usr/bin 
               --with-systemdsystemdunitdir=/usr/lib/systemd/system 
               --enable-jpeg 
               --enable-tjpeg 
               --enable-fuse 
               --enable-opus 
               --enable-rfxcodec 
               --enable-mp3lame 
-              --enable-pixman
+              --enable-pixman 
+              --enable-vsock
   make V=0
 }

Adabakian arch-config.diff, Arch Linux-en erabiltzen diren fitxategi bideen azpian unitateak eta XRDP abiarazteko scriptak kudeatzen dituena, script-aren adabaki bat ere badu. instfiles/xrdp.sh, idazteko momentuan kendu zen XRDP banaketatik, beraz, adabakia eskuz editatu beharko da:

  [Install]
  WantedBy=multi-user.target
-diff -up src/xrdp-devel-git/instfiles/xrdp.sh.orig src/xrdp-devel-git/instfiles/xrdp.sh
---- src/xrdp-devel-git/instfiles/xrdp.sh.orig  2017-08-30 00:27:28.000000000 -0600
-+++ src/xrdp-devel-git/instfiles/xrdp.sh   2017-08-30 00:28:00.000000000 -0600
-@@ -17,7 +17,7 @@
- # Description: starts xrdp
- ### END INIT INFO
- 
--SBINDIR=/usr/local/sbin
-+SBINDIR=/usr/bin
- LOG=/dev/null
- CFGDIR=/etc/xrdp
- 
 diff -up src/xrdp-devel-git/sesman/startwm.sh.orig src/xrdp-devel-git/sesman/startwm.sh
 --- src/xrdp-devel-git/sesman/startwm.sh.orig  2017-08-30 00:27:30.000000000 -0600

Konpilatu eta instalatu dezagun paketea komandoarekin % makepkg --skipchecksums -si (giltza --skipchecksums iturburu-fitxategien kontrol-sumaren egiaztapena desgaitzeko behar da, eskuz editatu baititugu).

Goazen direktoriora xorgxrdp-devel-git, ondoren paketea komandoarekin muntatzen dugu % makepkg -si.

Goazen direktoriora linux-vm-tools/arch eta exekutatu gidoia install-config.sh, XRDP, PolicyKit eta PAM ezarpenak ezartzen dituena:

% sudo ./install-config.sh

Script-ek ondarearen ezarpena instalatzen du use_vsock, 0.9.11 bertsioaz geroztik baztertu dena, edita dezagun konfigurazio fitxategia /etc/xrdp/xrdp.ini eskuz:

 ;   port=vsock://<cid>:<port>
-port=3389
+port=vsock://-1:3389

 ; 'port' above should be connected to with vsock instead of tcp
 ; use this only with number alone in port above
 ; prefer use vsock://<cid>:<port> above
-use_vsock=true
+;use_vsock=true

 ; regulate if the listening socket use socket option tcp_nodelay

Gehitu fitxategira ~/.xinitrc zure leiho-kudeatzaile/mahai-ingurune hobetsia abiaraziz, X zerbitzaria abiarazten denean exekutatuko dena:

% echo "exec i3" > ~/.xinitrc

Itzali dezagun makina birtuala. Makina birtualerako vsock garraioa aktibatzen dugu PowerShell-en komando hau administratzaile gisa exekutatuz:

PS Admin > Set-VM -VMName ΠΠΠ—Π’ΠΠΠ˜Π•_МАШИНЫ -EnhancedSessionTransportType HvSocket

Piztu dezagun berriro makina birtuala.

konexio

XRDP zerbitzua sistema hasi eta gero abiarazi bezain laster, vmconnect aplikazioak hau detektatuko du eta elementua eskuragarri egongo da menuan. ikusi -> Saio hobetua. Elementu hau hautatzerakoan, pantailaren bereizmena ezartzeko eskatuko zaigu eta fitxan Tokiko baliabideak Irekitzen den elkarrizketa-koadroan, RDP saioan birbidali beharreko gailuak hauta ditzakezu.

Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n
Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n

Konektatu gaitezen. XRDP saioa hasteko leihoa ikusiko dugu:

Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n

Sartu zure erabiltzaile-izena eta pasahitza.

Erabili

Manipulazio hauen onura nabaria da: RDP saioak Enhanced Session gabe pantaila birtual batekin lan egiten duenean baino askoz erantzun handiagoz funtzionatzen du. RDP bidez VM barruan erortzen diren diskoak direktorioa eskuragarri daude ${HOME}/shared-drives:

Gaitu saio-modu hobetua Arch Linux-eko gonbidatuentzat Hyper-V-n

Arbelak ondo funtzionatzen du. Ezin dituzu inprimagailuak barrura birbidali; hau ez da onartzen bakarrik, baizik eta diskoa birbidaltzea apurtzen du. Soinuak ere ez du funtzionatzen, baina egileak ez zuen hau behar. Alt+Tab bezalako teklatuko lasterbideak ateratzeko, vmconnect pantaila osora zabaldu behar duzu.

Arrazoiren batengatik Windows-en eraikitako RDP bezeroa vmconnect aplikazioaren ordez erabili nahi baduzu edo, adibidez, makina honetara beste makina batetik konektatu nahi baduzu, orduan fitxategia aldatu beharko duzu. /etc/xrdp/xrdp.ini port on tcp://:3389. Makina birtuala Default Switchera konektatuta badago eta sarearen ezarpenak DHCP bidez jasotzen baditu, ostalariarengandik konekta zaitezke. Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΠΌΠ°ΡˆΠΈΠ½Ρ‹.mshome.net. vmconnect aplikaziotik TTY-n soilik saioa hasi dezakezu Modu hobetua desaktibatuta.

Erabilitako iturriak:

  1. Hyper-V - Arch Wiki
  2. Akatsen txostenak GitHub-en: 1, 2

Iturria: www.habr.com

Gehitu iruzkin berria