ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ Π½Π° Linux Π² Hyper-V ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ β Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅Π½Π΅Π΅ ΠΊΠΎΠΌΡΠΎΡΡΠ½ΠΎΠ΅ Π·Π°Π½ΡΡΠΈΠ΅, ΡΠ΅ΠΌ Ρ Π³ΠΎΡΡΠ΅Π²ΡΠΌΠΈ Windows-ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ. ΠΡΠΈΡΠΈΠ½ΠΎΠΉ ΡΠΎΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Hyper-V Π²ΡΠ΅ ΠΆΠ΅ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ°Π»ΡΡ Π΄Π»Ρ Π΄Π΅ΡΠΊΡΠΎΠΏΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ; Π½Π΅Π»ΡΠ·Ρ ΠΏΡΠΎΡΡΠΎ Π²Π·ΡΡΡ, ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π³ΠΎΡΡΠ΅Π²ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅, Π±ΡΡΠ΅Ρ ΠΎΠ±ΠΌΠ΅Π½Π°, ΠΎΠ±ΡΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°Π΄ΠΎΡΡΠΈ ΠΆΠΈΠ·Π½ΠΈ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² VirtualBox.
Hyper-V ΡΠ°ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Copy-VMFile
Π² PowerShell). ΠΠ»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
Π³ΠΎΡΡΠ΅Π²ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ, Π² ΡΠΈΡΠ»Π΅ ΠΊΠΎΡΠΎΡΡΡ
, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΠΈ Windows, Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Virtual Machine Connection (vmconnect.exe
) Π΄ΠΎΡΡΡΠΏΠ΅Π½ Enhanced Session Mode, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ RDP ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠ±ΡΠ°ΡΡΠ²Π°ΡΡ Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Π΄ΠΈΡΠΊΠΎΠ²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΡΠΈΠ½ΡΠ΅ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΠΈΠΌ Π±ΡΡΠ΅ΡΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π°.
Enhanced Session Mode ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Windows Π² Hyper-V ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. Π‘ Π³ΠΎΡΡΡΠΌΠΈ Π½Π° Linux Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ RDP-ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ vsock (ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π² Linux, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ Ρ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠΌ). ΠΡΠ»ΠΈ Π΄Π»Ρ Ubuntu Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ VMCreate, ΠΈΠ΄ΡΡΠΈΠΌ Ρ Hyper-V Π½Π° Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ
ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡ
Windows, Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Ρ vsock RDP-ΡΠ΅ΡΠ²Π΅Ρ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ
ΠΠ΄Π΅ΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΠΏΡΠΎΡΡΠΎ, Π½Π°ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ hyperv
ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ community:
% 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://
-Π°Π΄ΡΠ΅ΡΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ XRDP ΠΈΠ· Git ΠΈ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Xorg ΠΊ Π½Π΅ΠΌΡ ΠΈΠ· AUR Π²ΡΡΡΠ½ΡΡ. ΠΠ°ΡΡ ΠΊ XRDP, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΡΠΉ Π² AUR, ΡΠ°ΠΊΠΆΠ΅ ΡΠ»Π΅Π³ΠΊΠ° ΡΡΡΠ°ΡΠ΅Π», ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ PKGBUILD ΠΈ ΠΏΠ°ΡΡ Π²ΡΡΡΠ½ΡΡ.
Π‘ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Ρ PKGBUILD-Π°ΠΌΠΈ ΠΈΠ· AUR (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΠ±ΠΎΡΠΊΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ Π²ΡΠΎΠ΄Π΅
% git clone https://aur.archlinux.org/xrdp-devel-git.git
% git clone https://aur.archlinux.org/xorgxrdp-devel-git.git
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ°ΠΌ XRDP. ΠΡΠΊΡΠΎΠ΅ΠΌ ΡΠ°ΠΉΠ» PKGBUILD
Π»ΡΠ±ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠΌ.
ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ. PKGBUILD Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ XRDP ΠΈΠ· Git Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ 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 ΠΏΠΎΠ΄ ΠΏΡΡΠΈ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ Π² Arch Linux, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠ°ΡΡ ΠΊ ΡΠΊΡΠΈΠΏΡΡ 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
Π·Π°ΠΏΡΡΠΊ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° / ΡΡΠ΅Π΄Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ X-ΡΠ΅ΡΠ²Π΅ΡΠ°:
% echo "exec i3" > ~/.xinitrc
ΠΡΠΊΠ»ΡΡΠΈΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΠΌ ΡΡΠ°Π½ΡΠΏΠΎΡΡ vsock Π΄Π»Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² PowerShell ΠΎΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°:
PS Admin > Set-VM -VMName ΠΠΠΠΠΠΠΠ_ΠΠΠ¨ΠΠΠ« -EnhancedSessionTransportType HvSocket
ΠΠΊΠ»ΡΡΠΈΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠ½ΠΎΠ²Π°.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΡΡΡ ΡΠ΅ΡΠ²ΠΈΡ XRDP, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ vmconnect ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΠΈ Π² ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΡΠ½ΠΊΡ View -> Enhanced Session. ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ½ΠΊΡΠ° Π½Π°ΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΡΠ°Π½Π°, Π° Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Local Resources ΠΎΡΠΊΡΡΠ²ΡΠ΅Π³ΠΎΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΡΠΎΠ±ΡΠ°ΡΡΠ²Π°Π΅ΠΌΡΠ΅ Π²Π½ΡΡΡΡ RDP-ΡΠ΅ΡΡΠΈΠΈ.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΠΌΡΡ. Π£Π²ΠΈΠ΄ΠΈΠΌ ΠΎΠΊΠ½ΠΎ Π²Ρ ΠΎΠ΄Π° XRDP:
ΠΠ²Π΅Π΄Π΅ΠΌ ΡΠ²ΠΎΠΈ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΡΠΎΡΠΈΡ ΠΎΡ ΡΡΠΈΡ
ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΉ Π·Π°ΠΌΠ΅ΡΠ΅Π½: ΡΠ΅ΡΡΠΈΡ RDP ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²Π΅Π΅, ΡΠ΅ΠΌ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌ Π΄ΠΈΡΠΏΠ»Π΅Π΅ΠΌ Π±Π΅Π· Enhanced Session. ΠΡΠΎΠ±ΡΠΎΡΠ΅Π½Π½ΡΠ΅ Π²Π½ΡΡΡΡ VM ΡΠ΅ΡΠ΅Π· RDP Π΄ΠΈΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ${HOME}/shared-drives
:
ΠΡΡΠ΅Ρ ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ. ΠΡΠΎΠ±ΡΠ°ΡΡΠ²Π°ΡΡ ΠΏΡΠΈΠ½ΡΠ΅ΡΡ Π²Π½ΡΡΡΡ Π½Π΅Π»ΡΠ·Ρ, ΡΡΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ, Π½ΠΎ ΠΈ
ΠΡΠ»ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π΅ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ vmconnect Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² Windows RDP-ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΊ ΡΡΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ /etc/xrdp/xrdp.ini
port
Π½Π° tcp://:3389
. ΠΡΠ»ΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π° ΠΊ Default Switch ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ΅ΡΠ΅Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎ DHCP, ΡΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ Π½Π΅ΠΉ Ρ Ρ
ΠΎΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΠΌΠ°ΡΠΈΠ½Ρ.mshome.net
. ΠΠΎΠΉΡΠΈ Π² TTY ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ vmconnect, Π²ΡΠΊΠ»ΡΡΠΈΠ² Enhanced Mode.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ:
Hyper-V β Arch Wiki - ΠΠ°Π³ΡΠ΅ΠΏΠΎΡΡΡ Π½Π° GitHub:
1 ,2
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com