Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ

Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ

virtual machine များကို အသုံးပြုခြင်း Linux Hyper-V မှာ box ထဲကနေ ထွက်လာတာက guest နဲ့ ယှဉ်ရင် နည်းနည်း သက်တောင့်သက်သာ မရှိပါဘူး။ Windows-စက်များ။ ဒီလိုဖြစ်ရတဲ့ အကြောင်းရင်းကတော့ Hyper-V ကို မူလက desktop အသုံးပြုဖို့ ဒီဇိုင်းထုတ်ထားတာ မဟုတ်လို့ပါ။ VirtualBox မှာလို Guest Additions package ကို install လုပ်ပြီး graphics acceleration, clipboard, shared directories နဲ့ အခြား perks တွေကို ရနိုင်မှာ မဟုတ်ပါဘူး။

Hyper-V ကိုယ်တိုင် ထောက်ပံ့ပေးသည်။ ပေါင်းစပ်ဝန်ဆောင်မှုများစွာ - ထို့ကြောင့်ဧည့်သည်များသည် host ၏အရိပ်မိတ္တူဝန်ဆောင်မှု (VSS) ကိုသုံးနိုင်သည်၊ ဧည့်သည်များသည် shutdown signal ကိုပေးပို့နိုင်သည်၊ ဧည့်သည်များသည်စနစ်အချိန်ကို virtualization host နှင့်ထပ်တူပြုနိုင်သည်၊ ဖိုင်များကို host မှ virtual machine နှင့်ဖလှယ်နိုင်သည်။Copy-VMFile PowerShell မှာ)။ အချို့သော guest operating system များအတွက်၊ ၎င်းတွင် အောက်ပါတို့ ပါဝင်ပါသည်။ WindowsVirtual Machine Connection အပလီကေးရှင်းတွင် (vmconnect.exe) ပိုမိုကောင်းမွန်သော Session မုဒ်ကို RDP ပရိုတိုကောမှတစ်ဆင့် လုပ်ဆောင်နိုင်ပြီး သင်အား ဒစ်ခ်ကိရိယာများနှင့် ပရင်တာများကို virtual machine သို့ ပေးပို့နိုင်သည့်အပြင် မျှဝေထားသော ကလစ်ဘုတ်ကို အသုံးပြုနိုင်သည်။

Enhanced Session Mode သည် အလိုအလျောက် အလုပ်လုပ်ပါသည်။ Windows ထည့်သွင်းပြီးပြီးချင်း Hyper-V မှာ။ guests တွေဖွင့်ထားရင် Linux vsock (အထူး virtual network address space တစ်ခုကို support လုပ်တဲ့ RDP server တစ်ခုကို install လုပ်ရပါမယ်)။ Linuxhypervisor နှင့် ဆက်သွယ်ရန် ဒီဇိုင်းထုတ်ထားသည်)။ အကယ်၍ Ubuntu desktop edition တွေမှာ Hyper-V နဲ့အတူ ပါလာတဲ့ VMCreate application မှာ WindowsRDP server တစ်ခု vsock နဲ့ အလုပ်လုပ်တဲ့ အထူးပြင်ဆင်ထားတဲ့ virtual machine template တစ်ခုရှိပါတယ်။ XRDP ကြိုတင်ထည့်သွင်းထားပြီး၊ ထို့နောက် အခြားဖြန့်ဝေမှုများနှင့်အတူ ၎င်းသည် နည်းပါးပြီး ရှင်းလင်းပြတ်သားသည် - ဥပမာ၊ စာရေးသူ ဒီပို့စ် Fedora မှာ ESM ကို enable လုပ်နိုင်ခဲ့ပါတယ်။ ဒီမှာလည်း Arch virtual machine အတွက် Enhanced Session Mode ကို activate လုပ်နိုင်ပါတယ်။ Linux.

ပေါင်းစပ်ဝန်ဆောင်မှုများ ထည့်သွင်းခြင်း။

ဤနေရာတွင် အရာအားလုံးသည် အနည်းနှင့်အများ ရိုးရှင်းပါသည်၊ ကျွန်ုပ်တို့သည် အထုပ်ကို ထည့်သွင်းရန် လိုအပ်ပါသည်။ hyperv community repository မှ-

% sudo pacman -S hyperv

VSS ဝန်ဆောင်မှုများကိုဖွင့်ပါ၊ လဲလှယ်ပါ။ မက်တာဒေတာ နှင့် ဖိုင်များ-

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

XRDP တပ်ဆင်ခြင်း။

သိုလှောင်မှု linux-vm-tools Arch အတွက် XRDP ကို ​​install လုပ်ပြီး configure လုပ်တဲ့ လုပ်ငန်းစဉ်ကို အလိုအလျောက်လုပ်ဆောင်ပေးတဲ့ GitHub မှာ script တွေ ပေးပါတယ်။ Linux и UbuntuGit ကို install မလုပ်ရသေးရင် compiler နဲ့ manual build လုပ်ဖို့ တခြား software တွေနဲ့အတူ install လုပ်ပြီး repository ကို clone လုပ်ကြည့်ရအောင်။

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

ဤရေးသားချိန်တွင်၊ ဇာတ်ညွှန်းဖြင့်ထည့်သွင်းထားသည့် XRDP ၏နောက်ဆုံးထွက်ရှိမှု makepkg.shrepository တွင်အဆိုပြုထားသည် 0.9.11၊ ခွဲခြမ်းစိတ်ဖြာခြင်း၌ ကွဲ၏။ vsock://- လိပ်စာများ၊ ထို့ကြောင့် သင်သည် AUR မှ ၎င်းအတွက် Git နှင့် Xorg ဒရိုက်ဘာမှ XRDP ကို ​​ထည့်သွင်းရပါမည်။ AUR တွင်ပေးထားသော XRDP အတွက် patch သည် အနည်းငယ် ခေတ်နောက်ကျနေသောကြောင့် PKGBUILD နှင့် patch ကို ကိုယ်တိုင်တည်းဖြတ်ရမည်ဖြစ်ပါသည်။

ကျွန်ုပ်တို့သည် AUR မှ PKGBUILDs များဖြင့် သိုလှောင်ရာနေရာများကို ပုံတူပွားခြင်း (ပုံမှန်အားဖြင့် ဤလုပ်ထုံးလုပ်နည်းသည် စည်းဝေးပွဲနှင့်အတူ၊ ကဲ့သို့သော ပရိုဂရမ်များဖြင့် အလိုအလျောက်လုပ်ဆောင်ပါသည်။ ရေးသို့သော် စာရေးသူသည် ဤလုပ်ငန်းစဉ်တစ်ခုလုံးကို သန့်ရှင်းသောစနစ်ဖြင့် လုပ်ဆောင်ခဲ့သည်)။

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

XRDP ကိုယ်တိုင်အရင် install လုပ်ကြည့်ရအောင်။ ဖိုင်ကိုဖွင့်ကြည့်ရအောင် PKGBUILD စာသားတည်းဖြတ်သူမဆို။

တည်ဆောက်မှုဘောင်များကို တည်းဖြတ်ကြပါစို့။ Git မှ XRDP တည်ဆောက်ရန်အတွက် PKGBUILD သည် တည်ဆောက်မှုတွင် vsock ပံ့ပိုးမှုမပါဝင်ပါ၊ ထို့ကြောင့် ၎င်းကို ကိုယ်တိုင်ဖွင့်ကြည့်ကြပါစို့။

 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
 }

တစ်ဖာတွင် arch-config.diffArch မှာအသုံးပြုတဲ့ ဖိုင်လမ်းကြောင်းတွေအောက်မှာ ruling units တွေ၊ XRDP startup scripts တွေ Linux, script အတွက် patch တစ်ခုပါဝင်သည် instfiles/xrdp.shစာရေးနေချိန်၊ ဖယ်ရှားခဲ့သည်။ XRDP ဖြန့်ဖြူးမှုမှ၊ ထို့ကြောင့် patch ကို ကိုယ်တိုင်တည်းဖြတ်ရပါမည်-

  [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

အမိန့်ဖြင့် အထုပ်ကို တည်ဆောက်ပြီး ထည့်သွင်းပါ။ % makepkg --skipchecksums -si (သော့ --skipchecksums ကျွန်ုပ်တို့သည် ၎င်းတို့ကို ကိုယ်တိုင်တည်းဖြတ်သောကြောင့် အရင်းအမြစ်ဖိုင်များ၏ checksum စိစစ်ခြင်းကို ပိတ်ရန် လိုအပ်ပါသည်။)

လမ်းညွှန်ကိုသွားရအောင် xorgxrdp-devel-gitထို့နောက်တွင်၊ ကျွန်ုပ်တို့သည် command ဖြင့် package ကိုရိုးရှင်းစွာတည်ဆောက်သည်။ % makepkg -si.

လမ်းညွှန်ကိုသွားရအောင် linux-vm-tools/arch နှင့် script ကို run install-config.shXRDP၊ PolicyKit နှင့် PAM ဆက်တင်များကို သတ်မှတ်ပေးသည်-

% sudo ./install-config.sh

Script သည် အမွေအနှစ်ဆက်တင်ကို ထည့်သွင်းသည်။ use_vsockဗားရှင်း 0.9.11 ကတည်းက လျစ်လျူရှုထားသောကြောင့် configuration file ကို တည်းဖြတ်ကြပါစို့။ /etc/xrdp/xrdp.ini ကိုယ်တိုင်-

 ;   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

ဖိုင်သို့ထည့်ပါ။ ~/.xinitrc X ဆာဗာကို စတင်သောအခါတွင် သင်နှစ်သက်သော ဝင်းဒိုးမန်နေဂျာ/ဒက်စ်တော့ ပတ်ဝန်းကျင်ကို စတင်ခြင်း-

% echo "exec i3" > ~/.xinitrc

virtual machine ကိုပိတ်လိုက်ရအောင်။ PowerShell တွင် အောက်ပါ command ကို စီမံခန့်ခွဲသူအဖြစ် လုပ်ဆောင်ခြင်းဖြင့် VM အတွက် vsock သယ်ယူပို့ဆောင်ရေးကို ဖွင့်ပါ-

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

virtual machine ကို ပြန်ဖွင့်ကြည့်ရအောင်။

Подключение

စနစ်စတင်ပြီးနောက် XRDP ဝန်ဆောင်မှုစတင်သည်နှင့်တပြိုင်နက် vmconnect အပလီကေးရှင်းသည် ၎င်းကိုဆုံးဖြတ်မည်ဖြစ်ပြီး မီနူးကိုရရှိနိုင်မည်ဖြစ်သည်။ ကြည့်ရှုခြင်း -> အဆင့်မြှင့်တင်ထားသော အပိုင်း. ဤအရာကို သင်ရွေးချယ်သောအခါ၊ မျက်နှာပြင် ကြည်လင်ပြတ်သားမှုကို သတ်မှတ်ရန်နှင့် တက်ဘ်ပေါ်တွင် ကျွန်ုပ်တို့အား သတိပေးပါမည်။ ဒေသခံအရင်းအမြစ်များ ဖွင့်သည့် ဒိုင်ယာလော့ဂ်တွင်၊ သင်သည် RDP စက်ရှင်အတွင်း ထပ်ဆင့်ပေးပို့သည့် စက်ပစ္စည်းများကို ရွေးချယ်နိုင်သည်။

Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ
Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ

ချိတ်ဆက်ကြပါစို့။ ကျွန်ုပ်တို့သည် XRDP အကောင့်ဝင်ဝင်းဒိုးကိုမြင်ရလိမ့်မည်-

Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ

သင့်အသုံးပြုသူအမည်နှင့် စကားဝှက်ကို ထည့်သွင်းပါ။

၏အသုံးပြုမှု

ဤခြယ်လှယ်မှုများမှ အကျိုးအမြတ်မှာ သိသာထင်ရှားသည်- RDP စက်ရှင်သည် ပိုမိုကောင်းမွန်သော ဆက်ရှင်မပါဝင်ဘဲ virtual display ဖြင့် လုပ်ဆောင်သောအခါထက် များစွာပို၍ တုံ့ပြန်မှုရှိသည်။ RDP မှတစ်ဆင့် VM အတွင်းသို့ ထပ်ဆင့်ပို့သော disk များကို လမ်းညွှန်တွင် ရနိုင်ပါသည်။ ${HOME}/shared-drives:

Arch အတွက် Enhanced Session Mode ကိုဖွင့်ခြင်း Linux-Hyper-V ရှိ ဧည့်သည်များ

ကလစ်ဘုတ်သည် ကောင်းမွန်စွာ အလုပ်လုပ်ပါသည်။ သင်သည် ပရင်တာများကို အတွင်းထဲသို့ ပစ်ချ၍မရပါ၊ ၎င်းကို မပံ့ပိုးရုံသာမက၊ ဒစ်ခ် ထပ်ဆင့်ပို့ခြင်းကို ချိုးဖျက်သည်။. အသံလည်း ပျက်ပေမယ့် စာရေးသူက မလိုအပ်ပါဘူး။ Alt + Tab ကဲ့သို့သော ကီးဘုတ်ဖြတ်လမ်းများကို ရိုက်ကူးရန်အတွက် vmconnect ကို မျက်နှာပြင်အပြည့်သို့ ချဲ့ထွင်ရန် လိုအပ်သည်။

မည်သည့်အကြောင်းကြောင့်မဆို built-in vmconnect application အစား အသုံးပြုလိုပါက Windows ဥပမာ RDP client ဒါမှမဟုတ် တခြားစက်ကနေ ဒီစက်ကို ချိတ်ဆက်ပြီးရင် ဖိုင်ကို ပြောင်းလဲဖို့ လိုအပ်ပါလိမ့်မယ်။ /etc/xrdp/xrdp.ini port အပေါ် tcp://:3389. အကယ်၍ virtual machine သည် Default Switch သို့ ချိတ်ဆက်ထားပြီး DHCP မှတစ်ဆင့် ကွန်ရက်ဆက်တင်များကို လက်ခံရရှိပါက၊ ၎င်းကို host မှ ချိတ်ဆက်နိုင်သည်။ название_машины.mshome.net. အဆင့်မြှင့်တင်မုဒ်ကို ပိတ်ခြင်းဖြင့် သင်သည် vmconnect အပလီကေးရှင်းမှ TTY သို့သာ ဝင်ရောက်နိုင်သည်။

အသုံးပြုသော အရင်းအမြစ်များ:

  1. Hyper-V Arch ဝီကီ
  2. GitHub ရှိ ချွတ်ယွင်းချက်အစီရင်ခံစာများ- 1, 2

source: www.habr.com

DDoS ကာကွယ်ရေး၊ VPS VDS ဆာဗာများပါသည့် ဆိုက်များအတွက် ယုံကြည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကွယ်မှု၊ VPS VDS ဆာဗာများပါရှိသော ယုံကြည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster