د بکس څخه بهر په هایپر-V کې د لینکس مجازی ماشینونو کارول د وینډوز میلمنو ماشینونو کارولو په پرتله یو څه لږ راحته تجربه ده. د دې دلیل دا دی چې Hyper-V په اصل کې د ډیسټاپ کارولو لپاره نه و؛ تاسو نشئ کولی یوازې د میلمنو اضافه کولو کڅوړه نصب کړئ او د ګرافیک ګړندی فعالیت ، کلپ بورډ ، شریک لارښودونه او د ژوند نورې خوښۍ ترلاسه کړئ ، لکه څنګه چې په ورچوئل بکس کې پیښیږي.
Hyper-V پخپله چمتو کوي Copy-VMFile
په PowerShell کې). د ځینو میلمنو عملیاتي سیسټمونو لپاره، په شمول، البته، وینډوز، د مجازی ماشین ارتباط غوښتنلیک کې (vmconnect.exe
) د اصلاح شوي سیشن حالت شتون لري، د RDP پروتوکول له لارې کار کوي او تاسو ته اجازه درکوي چې ډیسک وسایل او پرنټرونه مجازی ماشین ته انتقال کړئ، او همدارنګه د ګډ کلپ بورډ څخه کار واخلئ.
د سیشن موډ د نصبولو سمدستي وروسته په Hyper-V کې په وینډوز کې د بکس څخه بهر کار کوي. په لینکس کې د میلمنو سره ، تاسو اړتیا لرئ د RDP سرور نصب کړئ چې د vsock ملاتړ کوي (په لینکس کې د ځانګړي مجازی شبکې پته ځای د هایپروایزر سره د اړیکو لپاره ډیزاین شوی). که د اوبنټو لپاره د VMCreate غوښتنلیک کې چې د وینډوز ډیسټاپ نسخو کې د Hyper-V سره راځي ، نو د ځانګړي چمتو شوي مجازی ماشین ټیمپلیټ شتون لري په کوم کې چې د RDP سرور د vsock سره کار کوي.
د ادغام خدماتو نصب کول
دلته هرڅه لږ یا لږ ساده دي، موږ یوازې د بسته بندي نصبولو ته اړتیا لرو hyperv
د ټولنې له ذخیرې څخه:
% sudo pacman -S hyperv
راځئ چې د VSS او تبادلې خدمتونه فعال کړو
% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; done
د XRDP نصب کول
ذخیره
% sudo pacman -S git base-devel
% git clone https://github.com/microsoft/linux-vm-tools.git
% cd linux-vm-tools/arch
د دې مقالې لیکلو په وخت کې، د XRDP وروستی خپور شوی، کوم چې د سکریپټ لخوا نصب شوی makepkg.sh
په ذخیره کې وړاندیز شوی یو 0.9.11 دی، vsock://
- پته، نو تاسو باید د Git څخه XRDP نصب کړئ او د Xorg ډرایور د AUR څخه په لاسي ډول نصب کړئ. په AUR کې وړاندیز شوی د XRDP پیچ هم یو څه زوړ دی، نو تاسو باید د PKGBUILD ترمیم او په لاسي ډول پیچ کړئ.
راځئ چې د AUR څخه د PKGBUILDs سره ذخیره کلون کړو (عموما دا کړنلاره ، د جوړیدو سره ، د برنامو لخوا اتومات کیږي لکه
% git clone https://aur.archlinux.org/xrdp-devel-git.git
% git clone https://aur.archlinux.org/xorgxrdp-devel-git.git
راځئ چې لومړی پخپله XRDP نصب کړو. راځئ چې فایل خلاص کړو 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.diff
، کوم چې په آرچ لینکس کې کارول شوي د فایل لارو لاندې واحدونه او د XRDP لانچ سکریپټونه اداره کوي ، په سکریپټ کې پیچ هم لري instfiles/xrdp.sh
، کوم چې د لیکلو په وخت کې
[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
د سرچینې فایلونو د چیکسم تصدیق غیر فعالولو ته اړتیا ده، ځکه چې موږ دوی په لاسي ډول ترمیم کړي).
راځئ چې لارښود ته لاړ شو xorgxrdp-devel-git
، له هغې وروسته موږ په ساده ډول بسته د کمانډ سره راټولوو % makepkg -si
.
راځئ چې لارښود ته لاړ شو linux-vm-tools/arch
او سکریپټ چلوي install-config.sh
، کوم چې د XRDP، PolicyKit او PAM ترتیبات تنظیموي:
% sudo ./install-config.sh
سکریپټ د میراث ترتیب نصبوي use_vsock
، کوم چې د 0.9.11 نسخې راهیسې له پامه غورځول شوی ، نو راځئ چې د ترتیب فایل ترمیم کړو /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
ستاسو د خوښې کړکۍ مدیر / ډیسټاپ چاپیریال پیل کول ، کوم چې به اجرا شي کله چې د ایکس سرور پیل شي:
% echo "exec i3" > ~/.xinitrc
راځئ چې مجازی ماشین بند کړو. موږ د مجازی ماشین لپاره د vsock ټرانسپورټ د مدیر په توګه په PowerShell کې د لاندې کمانډ په چلولو سره فعالوو:
PS Admin > Set-VM -VMName НАЗВАНИЕ_МАШИНЫ -EnhancedSessionTransportType HvSocket
راځئ چې مجازی ماشین بیا چالان کړو.
Подключение
هرڅومره ژر چې د سیسټم له پیل وروسته د XRDP خدمت پیل شي ، د vmconnect غوښتنلیک به دا کشف کړي او توکي به په مینو کې شتون ولري محتویات -> پرمختللی سیشن. کله چې دا توکي غوره کړئ، موږ به د سکرین ریزولوشن تنظیم کولو ته وهڅوو، او په ټب کې ځایی سرچینې په هغه ډیالوګ کې چې خلاصیږي، تاسو کولی شئ هغه وسایل وټاکئ چې د RDP ناستې ته لیږدول کیږي.
راځئ چې وصل کړو. موږ به د XRDP د ننوتلو کړکۍ وګورو:
خپل کارن نوم او پټنوم دننه کړئ.
کارول
د دې لاسوهنو ګټه د پام وړ ده: د RDP سیشن د پرمختللي ناستې پرته د مجازی نندارې سره کار کولو په پرتله خورا ډیر ځواب ورکوونکي کار کوي. د RDP له لارې د VM دننه غورځول شوي ډیسکونه په لارښود کې شتون لري ${HOME}/shared-drives
:
کلپ بورډ ښه کار کوي. تاسو نشئ کولی دننه پرنټرونه وړاندې کړئ؛ دا نه یوازې ملاتړ کیږي ، بلکه هم
که د کوم دلیل لپاره تاسو غواړئ د Vmconnect غوښتنلیک پرځای په وینډوز کې جوړ شوی RDP کلائنټ وکاروئ یا د مثال په توګه ، د بل ماشین څخه دې ماشین سره وصل شئ ، نو تاسو به اړتیا ولرئ فایل بدل کړئ. /etc/xrdp/xrdp.ini
port
په tcp://:3389
. که مجازی ماشین د ډیفالټ سویچ سره وصل وي او د DHCP له لارې د شبکې تنظیمات ترلاسه کړي ، نو تاسو کولی شئ له کوربه څخه دې سره وصل شئ название_машины.mshome.net
. تاسو کولی شئ یوازې د vmconnect غوښتنلیک څخه TTY ته ننوتل د پرمختللي حالت په بندولو سره.
کارول شوي سرچینې:
Hyper-V - Arch Wiki - په GitHub کې د بګ راپورونه:
1 ,2
سرچینه: www.habr.com