ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Linux Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π² Hyper-V ΠΈΠ·Π²ΡΠ½ ΠΊΡΡΠΈΡΡΠ° Π΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈΠ·ΠΆΠΈΠ²ΡΠ²Π°Π½Π΅ ΠΎΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΡΠΈΠ½ΠΈ Π·Π° Π³ΠΎΡΡΠΈ Π½Π° Windows. ΠΡΠΈΡΠΈΠ½Π°ΡΠ° Π·Π° ΡΠΎΠ²Π° Π΅, ΡΠ΅ Hyper-V ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ Π½Π΅ Π΅ Π±ΠΈΠ» ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π·Π° Π½Π°ΡΡΠΎΠ»Π½Π° ΡΠΏΠΎΡΡΠ΅Π±Π°; Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ ΠΎΡ Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΡ Π·Π° Π³ΠΎΡΡΠΈ ΠΈ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ Π³ΡΠ°ΡΠΈΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅, ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄, ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠ°Π΄ΠΎΡΡΠΈ ΠΎΡ ΠΆΠΈΠ²ΠΎΡΠ°, ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π²ΡΠ² VirtualBox.
Π‘Π°ΠΌΠΈΡΡ Hyper-V ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Copy-VMFile
Π² PowerShell). ΠΠ° Π½ΡΠΊΠΎΠΈ Π³ΠΎΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, Windows, Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Virtual Machine Connection (vmconnect.exe
) ΠΠ°Π»ΠΈΡΠ΅Π½ Π΅ Enhanced Session Mode, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π±ΠΎΡΠΈ ΡΡΠ΅Π· RDP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΈ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΏΡΠ΅Ρ
Π²ΡΡΠ»ΡΡΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΡΠΈΠ½ΡΠ΅ΡΠΈ ΠΊΡΠΌ Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π°, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄.
ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΠ΅ΡΠΈΡ ΡΠ°Π±ΠΎΡΠΈ Π²Π΅Π΄Π½Π°Π³Π° ΡΠ»Π΅Π΄ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π² Windows Π² Hyper-V. ΠΡΠΈ Π³ΠΎΡΡΠΈ Π½Π° Linux ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ RDP ΡΡΡΠ²ΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° vsock (ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π²ΠΈΡΡΡΠ°Π»Π½ΠΎ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ Π°Π΄ΡΠ΅ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π² Linux, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΎ Π·Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡ Ρ Ρ
ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡΠ°). ΠΠΊΠΎ Π·Π° Ubuntu Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ VMCreate, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ΄Π²Π° Ρ Hyper-V Π² Π½Π°ΡΡΠΎΠ»Π½ΠΈΡΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΡ Π½Π° Windows, ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ ΡΠ°Π±Π»ΠΎΠ½ Π·Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°, Π² ΠΊΠΎΠΉΡΠΎ 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://
-Π°Π΄ΡΠ΅ΡΠΈ, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ 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 ΡΠ΅ ΠΎΡΠΊΡΠΈΠ΅ ΡΠΎΠ²Π° ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΡΡ ΡΠ΅ ΡΡΠ°Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² ΠΌΠ΅Π½ΡΡΠΎ ΠΠ»Π΅Π΄ΠΊΠ° -> ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΡΠ΅ΡΠΈΡ. ΠΠΎΠ³Π°ΡΠΎ ΠΈΠ·Π±ΠΈΡΠ°ΠΌΠ΅ ΡΠΎΠ·ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ, ΡΠ΅ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ°Π½Π΅Π½ΠΈ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΠΌ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Π½Π°ΡΠ° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ Π½Π° Π΅ΠΊΡΠ°Π½Π° ΠΈ Π² ΡΠ°Π·Π΄Π΅Π»Π° ΠΠ΅ΡΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ Π Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΈΡ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΎΡΠ²Π°ΡΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΠΈΡΠΎ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ΅Π½ΠΈ ΠΊΡΠΌ RDP ΡΠ΅ΡΠΈΡΡΠ°.
ΠΠ΅ΠΊΠ° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΠΌ. Π©Π΅ Π²ΠΈΠ΄ΠΈΠΌ XRDP ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΠ° Π·Π° Π²Π»ΠΈΠ·Π°Π½Π΅:
ΠΡΠ²Π΅Π΄Π΅ΡΠ΅ Π²Π°ΡΠ΅ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎ ΠΈΠΌΠ΅ ΠΈ ΠΏΠ°ΡΠΎΠ»Π°.
Π£ΠΏΠΎΡΡΠ΅Π±Π°
ΠΠΎΠ»Π·Π°ΡΠ° ΠΎΡ ΡΠ΅Π·ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΈΠΈ Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠ°: RDP ΡΠ΅ΡΠΈΡΡΠ° ΡΠ°Π±ΠΎΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΎΡΠ·ΠΈΠ²ΡΠΈΠ²ΠΎ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Π²ΠΈΡΡΡΠ°Π»Π΅Π½ Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Π±Π΅Π· Enhanced Session. ΠΠΈΡΠΊΠΎΠ²Π΅, ΠΏΡΡΠ½Π°ΡΠΈ Π²ΡΠ² Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π° ΡΡΠ΅Π· RDP, ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° ${HOME}/shared-drives
:
ΠΠ»ΠΈΠΏΠ±ΠΎΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅. ΠΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΏΡΠΈΠ½ΡΠ΅ΡΠΈ Π²ΡΡΡΠ΅; ΡΠΎΠ²Π° Π½Π΅ ΡΠ°ΠΌΠΎ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°, Π½ΠΎ ΠΈ
ΠΠΊΠΎ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ RDP ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π²Π³ΡΠ°Π΄Π΅Π½ Π² Windows, Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ vmconnect ΠΈΠ»ΠΈ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Ρ ΡΠ°Π·ΠΈ ΠΌΠ°ΡΠΈΠ½Π° ΠΎΡ Π΄ΡΡΠ³Π° ΠΌΠ°ΡΠΈΠ½Π°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»Π° /etc/xrdp/xrdp.ini
port
Π½Π° tcp://:3389
. ΠΠΊΠΎ Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π° Π΅ ΡΠ²ΡΡΠ·Π°Π½Π° ΠΊΡΠΌ Default Switch ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠ΅Π· DHCP, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Ρ Π½Π΅Ρ ΠΎΡ Ρ
ΠΎΡΡΠ° Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΠΌΠ°ΡΠΈΠ½Ρ.mshome.net
. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²Π»Π΅Π·Π΅ΡΠ΅ Π² TTY ΡΠ°ΠΌΠΎ ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ vmconnect, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΆΠΈΠΌ.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ:
Hyper-V - Arch Wiki - ΠΠΎΠΊΠ»Π°Π΄ΠΈ Π·Π° Π³ΡΠ΅ΡΠΊΠΈ Π² GitHub:
1 ,2
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com