
Isticmaalka mashiinnada dalwaddu ku shaqeeyo Linux Hyper-V oo aan la heli karin waa waayo-aragnimo raaxo yar marka loo eego martida Windows-makiinadaha. Sababta tan ayaa ah in Hyper-V aan asal ahaan loogu talagalin isticmaalka desktop-ka; si fudud uma rakibi kartid xirmada Ku-darka Martida oo waxaad heli kartaa dardargelinta sawirada shaqada, clipboard-ka, tusmooyinka la wadaago, iyo faa'iidooyin kale, sida aad ku samayn karto VirtualBox.
Hyper-V lafteedu waxay bixisaa - marka, martidu waxay isticmaali karaan adeegga nuqulka hadhku (VSS) ee martida loo yahay, martida waxay soo diri karaan calaamadda xidhitaanka, martida waxay la jaanqaadi karaan wakhtiga nidaamka iyo martigeliyaha farsamada, faylasha waxaa lagu beddeli karaa mashiinka farsamada ee martigeliyaha (Copy-VMFile ee PowerShell). Qaar ka mid ah nidaamyada hawlgalka martida, taas oo dabcan ay ku jirto Windows, codsiga Isku xirka Mashiinka Dalwaddeed (vmconnect.exe) Qaabka Kalfadhiga La Wanaajiyey ayaa diyaar ah, kaas oo ku shaqeeya hab-maamuuska RDP oo kuu ogolaanaya inaad u gudbiso aaladaha diskooga iyo daabacayaasha mashiinka farsamada, iyo sidoo kale isticmaal sanduuqa la wadaago.
Habka Kalfadhiga ee la xoojiyay wuu shaqeeyaa si ka baxsan sanduuqa Windows gudaha Hyper-V isla markiiba ka dib rakibidda. Iyada oo martida saaran tahay Linux Waxaad u baahan tahay inaad rakibto server RDP ah oo taageera vsock (meel cinwaan shabakadeed oo gaar ah oo ku taal gudaha) Linux, oo loogu talagalay in lala xiriiro hypervisor-ka). Ubuntu barnaamijka VMCreate ee la socda Hyper-V ee daabacadaha desktop-ka Windows, waxaa jira qaab-dhismeed gaar ah oo loogu talagalay mashiinka dalwaddu kaas oo server-ka RDP uu la shaqeeyo vsock mar hore ayaa horay loo sii rakibay, ka dibna qaybinta kale way yar tahay oo way ka yar tahay - tusaale ahaan, qoraaga Waxaan ku guuleysanay inaan awood u siino ESM gudaha Fedora. Halkan waxaan sidoo kale ku hawlgelineynaa Habka Kalfadhiga ee la xoojiyay ee mashiinka casriga ah ee Arch. Linux.
Ku rakibida adeegyada isdhexgalka
Wax walba waa ka badan ama ka yar fudud halkan, waxaan kaliya u baahanahay inaan rakibo xirmada hyperv Laga soo bilaabo kaydka bulshada:
% sudo pacman -S hypervDaar adeegyada VSS, beddelashada iyo faylasha:
% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; doneRakibaadda XRDP
kayd Waxay bixisaa qoraallo ku jira GitHub kuwaas oo otomaatig u ah geeddi-socodka rakibidda iyo habaynta XRDP ee Arch Linux и UbuntuAan rakibno Git, haddii aan hore loo rakibin, oo ay weheliso compiler iyo software kale oo loogu talagalay dhismaha gacanta, ka dibna aan koobi karno kaydka:
% sudo pacman -S git base-devel
% git clone https://github.com/microsoft/linux-vm-tools.git
% cd linux-vm-tools/archWaqtiga qoraalkan, sii dayntii ugu dambeysay ee XRDP, kaas oo lagu rakibay qoraalka makepkg.shSoo jeedinta kaydka waa 0.9.11, vsock://Cinwaannada, markaa waa inaad ku rakibtaa XRDP Git iyo darawalka Xorg ee AUR gacanta. Xirmada XRDP ee lagu bixiyo AUR sidoo kale waxyar waa duugoobay, marka waa inaad gacanta ku tafatirto PKGBUILD iyo balastarka.
Waxaanu ku xidhnay kaydadka PKGBUILDs ee AUR (sida caadiga ah nidaamkan, oo ay weheliso isu imaatinka, waxa otomaatig u ah barnaamijyada sida , laakiin qoraagu nidaamkan oo dhan wuxuu ku sameeyay nidaam nadiif ah):
% git clone https://aur.archlinux.org/xrdp-devel-git.git
% git clone https://aur.archlinux.org/xorgxrdp-devel-git.gitAynu marka hore rakibno XRDP lafteeda. Aan furno faylka PKGBUILD tifaftiraha qoraalka kasta.
Aynu tafatirno cabbiraadaha dhismaha. PKGBUILD ee lagu dhisayo XRDP ee Git kuma jiraan taageerada vsock ee dhismaha, markaa aan awood u siino nafteena:
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
}In balastar ah arch-config.diff, cutubyada xukunka iyo qoraallada bilowga XRDP ee hoos yimaada waddooyinka faylka ee loo isticmaalo Arch Linux, waxay ka kooban tahay balastar ku taal qoraalka instfiles/xrdp.sh, kaas oo wakhtiga qorista laga soo bilaabo qaybinta XRDP, markaa balastarku waa in si gacan ah loogu tafatiro:
[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 -0600Ku dhis oo ku rakib xirmada amarka % makepkg --skipchecksums -si (muhiim --skipchecksums ayaa loo baahan yahay si loo joojiyo hubinta hubinta faylalka isha, maadaama aan gacanta ku tafatirnay).
Aan tagno buugga hagaha xorgxrdp-devel-git, ka dib markaa waxaan si fudud u dhiseynaa xirmada amarka % makepkg -si.
Aan tagno buugga hagaha linux-vm-tools/arch oo maamul qoraalka install-config.sh, kaas oo dejinaya XRDP, PolicyKit iyo dejinta PAM:
% sudo ./install-config.shQoraalku wuxuu rakibaa dejinta dhaxalka use_vsock, kaas oo la iska indhotiray ilaa nooca 0.9.11, markaa aan tafatirno faylka qaabeynta /etc/xrdp/xrdp.ini gacanta:
; 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_nodelayKudar faylka ~/.xinitrc bilaabista jawiga maamulaha daaqada/desktop-ka ee aad doorbidayso, kaas oo la fulin doono marka server-ka X la bilaabo:
% echo "exec i3" > ~/.xinitrcAan damino mashiinka farsamada. U oggolow gaadiidka vsock ee VM adiga oo ku socodsiinaya amarka soo socda ee PowerShell maamule ahaan:
PS Admin > Set-VM -VMName НАЗВАНИЕ_МАШИНЫ -EnhancedSessionTransportType HvSocketAan mar kale shidno mashiinka farsamada.
Xidhiidhka
Sida ugu dhakhsaha badan ee adeegga XRDP uu bilaabo ka dib bilaabashada nidaamka, codsiga vmconnect ayaa go'aamin doona tan oo shayga menu ayaa diyaar noqon doona. View -> Kalfadhi la wanaajiyey. Markaad dooratid shaygan, waxaa nalagu soo jeedin doonaa inaan dejino xallinta shaashadda, iyo tabka Kheyraadka Deegaanka wada hadalka furma, waxaad dooran kartaa aaladaha loo soo gudbiyay gudaha fadhiga RDP.


Aan isku xirno. Waxaan arki doonaa daaqada galitaanka XRDP:

Geli magacaaga isticmaale iyo eraygaaga sirta ah.
Isticmaal
Faa'iidada ka soo baxda wax-is-daba-marintan waa mid la dareemi karo: fadhiga RDP wuxuu u shaqeeyaa si ka jawaab celin badan marka loo eego marka lagu shaqeynayo bandhig muuqaal ah oo aan lahayn Kalfadhi La Wanaajiyey. Saxannada lagu soo gudbiyo gudaha VM iyadoo la sii marinayo RDP waxay ku jiraan buugga hagaha ${HOME}/shared-drives:

Kilibboodhka si fiican buu u shaqaynayaa. Ma daabici kartid gudaha gudaha, tani ma aha oo kaliya mid la taageeray, laakiin sidoo kale . Codku sidoo kale ma shaqeeyo, laakiin qoraagu uma baahna. Si aad u qabsato furayaasha kiiboodhka sida Alt + Tab, waxaad u baahan tahay inaad ku kordhiso vmconnect ilaa shaashad buuxda.
Haddii sabab kasta ha ahaatee aad rabto inaad isticmaasho barnaamijka vmconnect ee ku dhex jira halkii aad ka isticmaali lahayd Windows Macmiilka RDP ama, tusaale ahaan, ku xidh mishiinkaan mashiin kale, markaa waxaad u baahan doontaa inaad beddesho faylka /etc/xrdp/xrdp.ini port on tcp://:3389. Haddii mashiinka farsamada uu ku xiran yahay Bedelka Default oo uu helo goobaha shabakada DHCP, markaa waxaad ku xiri kartaa goobta martida loo yahay название_машины.mshome.net. Waxa kaliya oo aad TTY ka gali kartaa codsiga vmconnect adiga oo daminaya Qaabka La Wanaajiyey.
Ilaha la isticmaalo:
- Bug ayaa ka warbixinaya GitHub: ,
Source: www.habr.com
