
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 - 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. dagoeneko aurrez instalatuta dago, gero eta beste banaketa batzuekin gero eta argi gutxiago dago, adibidez, egilea 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 hypervGaitu ditzagun VSS eta truke zerbitzuak eta fitxategiak:
% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; doneXRDP instalatzen
biltegia 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/archArtikulu hau idazteko unean, XRDPren azken bertsioa, gidoiak instalatzen duena makepkg.shbiltegian iradokitakoa 0.9.11 da, 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. , 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.gitInstalatu 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 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 -0600Konpilatu 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.shScript-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_nodelayGehitu fitxategira ~/.xinitrc zure leiho-kudeatzaile/mahai-ingurune hobetsia abiaraziz, X zerbitzaria abiarazten denean exekutatuko dena:
% echo "exec i3" > ~/.xinitrcItzali dezagun makina birtuala. Makina birtualerako vsock garraioa aktibatzen dugu PowerShell-en komando hau administratzaile gisa exekutatuz:
PS Admin > Set-VM -VMName НАЗВАНИЕ_МАШИНЫ -EnhancedSessionTransportType HvSocketPiztu 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.


Konektatu gaitezen. XRDP saioa hasteko leihoa ikusiko dugu:

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:

Arbelak ondo funtzionatzen du. Ezin dituzu inprimagailuak barrura birbidali; hau ez da onartzen bakarrik, baizik eta . 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:
- Akatsen txostenak GitHub-en: ,
Iturria: www.habr.com
