Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V

Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V

Tha cleachdadh innealan brìgheil Linux ann an Hyper-V a-mach às a’ bhogsa beagan nas comhfhurtail na le innealan aoigheachd Windows. Is e an adhbhar airson seo nach robh Hyper-V an dùil an toiseach airson cleachdadh deasg; chan urrainn dhut dìreach a dhol air adhart agus am pasgan aoighean a chuir a-steach agus luathachadh grafaigean obrachail, clipboard, clàran co-roinnte agus toileachasan beatha eile fhaighinn, mar a thachras ann an VirtualBox.

Tha Hyper-V fhèin a 'toirt seachad ioma-sheirbheisean amalachaidh - mar sin, faodaidh aoighean seirbheis leth-bhreac sgàil (VSS) an aoigh a chleachdadh, faodaidh aoighean comharra dùnadh a chuir, faodaidh aoighean ùine an t-siostaim a shioncronachadh leis an aoigh virtualization, faodar faidhlichean atharrachadh leis an inneal brìgheil bhon aoigh (Copy-VMFile ann an PowerShell). Airson cuid de shiostaman obrachaidh aoighean, a’ toirt a-steach, gu dearbh, Windows, anns an tagradh Virtual Machine Connection (vmconnect.exe) Tha Modh Seisean Leasaichte ri fhaighinn, a bhios ag obair tro phròtacal RDP agus a leigeas leat innealan diosc agus clò-bhualadairean a chuir air adhart chun inneal brìgheil, a bharrachd air a’ bhòrd bhidio co-roinnte a chleachdadh.

Bidh Modh Seisean Leasaichte ag obair a-mach às a’ bhogsa air Windows ann an Hyper-V dìreach às deidh an stàladh. Le aoighean air Linux, feumaidh tu frithealaiche RDP a chuir a-steach a bheir taic do vsock (àite seòlaidh lìonra brìgheil sònraichte ann an Linux a chaidh a dhealbhadh gus conaltradh leis an hypervisor). Ma tha airson Ubuntu, tha teamplaid inneal brìgheil ullaichte aig an tagradh VMCreate a thig le Hyper-V air deasachaidhean deasg de Windows anns a bheil frithealaiche RDP a’ ruith le vsock XRDP air a chuir a-steach ro-làimh, an uairsin le sgaoilidhean eile tha e nas lugha agus nas soilleire - mar eisimpleir, an t-ùghdar am post seo thionndaidh e a-mach gus ESM a chomasachadh ann am Fedora. An seo tha sinn cuideachd a’ comasachadh Modh Seisean Meudaichte airson inneal brìgheil Arch Linux.

Stàladh seirbheisean amalachaidh

Tha a h-uile dad nas sìmplidh an seo, feumaidh sinn dìreach am pasgan a chuir a-steach hyperv bho stòras coimhearsnachd:

% sudo pacman -S hyperv

Dèan comas air seirbheisean VSS, iomlaid meata-dàta agus faidhlichean:

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

Stàladh XRDP

tasgaidh linux-vm-innealan air GitHub a’ toirt seachad sgriobtaichean a nì fèin-ghluasad air a’ phròiseas airson stàladh agus rèiteachadh XRDP airson Arch Linux agus Ubuntu. Stàlaich Git, mura h-eil e air a chuir a-steach mu thràth, còmhla ris an inneal-cruinneachaidh agus bathar-bog eile airson togail làimhe, agus an uairsin clone an stòr:

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

Aig àm an sgrìobhaidh seo, tha an sgaoileadh as ùire de XRDP, a tha air a chuir a-steach leis an sgriobt makepkg.shis e 0.9.11 a thathar a’ moladh san ionad-tasgaidh, anns a bheil am parsadh briste vsock://-Addresses, mar sin feumaidh tu XRDP a stàladh bho Git agus an draibhear Xorg air a shon bho AUR le làimh. Tha am paiste airson XRDP a tha air a thabhann san AUR beagan seann-fhasanta cuideachd, agus mar sin feumaidh tu am PKGBUILD agus am paiste a dheasachadh le làimh.

Bidh sinn a’ gleusadh na tasgaidhean le PKGBUILDs bhon AUR (mar as trice bidh am modh-obrach seo, còmhla ris a’ cho-chruinneachadh, air a dhèanamh fèin-ghluasadach le prògraman mar yay, ach rinn an t-ùghdar am modh-obrach slàn seo air siostam glan):

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

Feuch an stàlaich sinn XRDP fhèin an toiseach. Nach fosgail sinn am faidhle PKGBUILD deasaiche teacsa sam bith.

Deasaich sinn na paramadairean togail. Chan eil am PKGBUILD airson XRDP a thogail bho Git a’ toirt a-steach taic vsock san togail, mar sin leig leinn sinn fhèin a chomasachadh:

 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
 }

Ann am paiste arch-config.diff, a bhios a’ deasachadh aonadan agus sgriobtaichean tòiseachaidh XRDP fo na slighean gu faidhlichean a chleachdar ann an Arch Linux, anns a bheil, am measg rudan eile, bad don sgriobt instfiles/xrdp.sh, a tha aig àm sgrìobhaidh chaidh a thoirt air falbh bhon sgaoileadh XRDP, agus mar sin feumar am paiste a dheasachadh le làimh:

  [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

Tog agus stàlaich am pasgan leis an àithne % makepkg --skipchecksums -si (iuchair --skipchecksums a dhìth gus dearbhadh checksum de fhaidhlichean stòr a dhì-cheadachadh, leis gun do dheasaich sinn iad le làimh).

Rachamaid chun an eòlaire xorgxrdp-devel-git, às deidh sin bidh sinn dìreach a’ togail a ’phacaid leis an àithne % makepkg -si.

Rachamaid chun an eòlaire linux-vm-tools/arch agus ruith an sgriobt install-config.sh, a tha a’ suidheachadh roghainnean XRDP, PolicyKit agus PAM:

% sudo ./install-config.sh

Sgriobt a' stàladh suidheachadh dìleab use_vsock, a tha air a leigeil seachad bho dhreach 0.9.11, mar sin deasaich sinn am faidhle rèiteachaidh /etc/xrdp/xrdp.ini le làimh:

 ;   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

Cuir ris an fhaidhle ~/.xinitrc a’ cur air bhog am manaidsear uinneige / àrainneachd deasg as fheàrr leat, a thèid a chuir gu bàs nuair a thòisicheas am frithealaiche X:

% echo "exec i3" > ~/.xinitrc

Nach cuir sinn dheth an inneal brìgheil. Dèan comas air còmhdhail vsock airson an VM le bhith a’ ruith an àithne a leanas ann an PowerShell mar rianadair:

PS Admin > Set-VM -VMName НАЗВАНИЕ_МАШИНЫ -EnhancedSessionTransportType HvSocket

Nach tionndaidh sinn an inneal brìgheil a-rithist.

Cur-an-cèill

Cho luath ‘s a thòisicheas an t-seirbheis XRDP às deidh don t-siostam tòiseachadh, dearbhaidh an tagradh vmconnect seo agus bidh an rud clàr ri fhaighinn. View -> Seisean leasaichte. Nuair a thaghas tu an rud seo, thèid iarraidh oirnn rùn an sgrion a shuidheachadh, agus air an taba Goireasan Ionadail anns a’ chòmhradh a tha a’ fosgladh, faodaidh tu na h-innealan a chaidh a chuir air adhart taobh a-staigh seisean RDP a thaghadh.

Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V
Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V

Dèanamaid ceangal. Chì sinn uinneag logadh a-steach XRDP:

Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V

Cuir a-steach d’ ainm-cleachdaidh agus facal-faire.

Cleachd

Tha an prothaid bho na dòighean-làimhseachaidh sin follaiseach: tha an seisean RDP ag obair tòrr nas ciallaiche na nuair a bhios e ag obair le taisbeanadh brìgheil às aonais Seisean Leasaichte. Tha diosgan air an cur air adhart taobh a-staigh an VM tro RDP rim faighinn san eòlaire ${HOME}/shared-drives:

Dèan comas air Modh Seisean Leasaichte airson aoighean Arch Linux ann an Hyper-V

Tha an clipboard ag obair gu math. Chan urrainn dhut clò-bhualadairean a thilgeil a-staigh, chan e a-mhàin gu bheil seo a’ faighinn taic, ach cuideachd briseadh air adhart diosc. Chan eil am fuaim cuideachd ag obair, ach cha robh feum aig an ùghdar air. Gus ath-ghoiridean meur-chlàr mar Alt + Tab a ghlacadh, feumaidh tu vmconnect a leudachadh gu làn-sgrìn.

Ma tha miann ann airson adhbhar air choireigin an neach-dèiligidh RDP a chaidh a thogail a-steach do Windows a chleachdadh an àite an aplacaid vmconnect no, mar eisimpleir, ceangal ris an inneal seo bho inneal eile, feumaidh tu am faidhle atharrachadh /etc/xrdp/xrdp.ini port air tcp://:3389. Ma tha an inneal brìgheil ceangailte ris an Default Switch agus a ’faighinn roghainnean lìonra tro DHCP, faodaidh tu ceangal ris bhon òstair aig название_машины.mshome.net. Chan urrainn dhut ach logadh a-steach gu TTY bhon tagradh vmconnect le bhith a’ tionndadh Modh Leasaichte dheth.

Stòran air an cleachdadh:

  1. Hyper-V Arch Wiki
  2. Aithisgean air bug air GitHub: 1, 2

Source: www.habr.com

Cuir beachd ann