实践环境
物理机:Windows10教育版,操作系统版本 17763.914
虚拟机:Ubuntu18.04.3桌面版
在Hyper-V中的刚安装好Ubuntu虚拟机之后,会发现鼠标滑动很不顺畅,也不能向虚拟机中拖拽文件或者复制内容。在VMware中,可以通过安装VMware tools来使物理机和虚拟机之间达到更好的交互。在Hyper-V中,也有这样的工具。这款工具可以完成更好的鼠标交互,我的时间结果发现它可以在物理机和虚拟机之间复制粘贴(包括文字和文件),不支持在两者之间拖拽文件。这是一款Windows与XRDP合作开发的工具—— linux-vm-tools,安装过程如下
#Get the scripts from GitHub sudo apt-get update sudo apt install git git clone https://github.com/microsoft/linux-vm-tools
执行安装脚本
sudo bash ~/linux-vm-tools/ubuntu/18.04/install.sh # 安装vm-tools
或者
进入下载的文件下
cd ~/linux-vm-tools/ubuntu/18.04/
sudo chmod +x install.sh
sudo ./install.sh
重启
reboot
再安装一次
sudo bash ~/linux-vm-tools/ubuntu/18.04/install.sh
再次安装之后关机
sudo shutdown now
在主机上的Powershell提示符中,执行以下命令:
Set-VM -VMName '你的虚拟机名称' -EnhancedSessionTransportType HvSocket
设置完成之后可以通过以下命令查看是否设置成功
(Get-VM -VMName '你的虚拟机名称').EnhancedSessionTransportType
现在,再启动虚拟机时,就会出现控制虚拟机页面大小的选择,选择之后可以进行连接,选择已xrog进行连接。按上面的教程是可以连接了,但是我这里出现了问题。
参考这篇文章找到了解决方案,首先点击下图的图标切换到 基本模式,这样就还能进入虚拟机。
安装缺少的依赖项
sudo apt-get install xserver-xorg-core
上述命令会删除一些系统需要的软件包,可能会导致虚拟机鼠标不可用,使用以下命令安装回来
sudo apt-get -y install xserver-xorg-input-all
安装缺少的依赖项之后,需要手动安装xorgxrdp软件包以恢复xRDP功能
apt-get install xorgxrdp
完成之后便能在Hyper-V管理器中通过增强会话的方式以xrog连接虚拟机,但是!不能通过root进行连接。以root用户进行登录连接连接之后秒断,就像登录成功立马注销了一样。这篇文章中提到新建的管理员用户可以实现登录,但是原本的root还是不行。不过倒是不影响使用,可以在非root用户中通过su
的方式进入root模式下。
另外
注销当前用户可以退出增强会话的连接
要改变虚拟机全屏下的大小的话,这篇文章给出了一种解决方案,但是在我的环境下只能在最开始连接的时候设置虚拟机屏幕分辨率。
设置为物理机的分辨率可以实现虚拟机全屏。
我这里还遇到了另外一个问题,使用 增强会话 模式连接是要求系统处于没有用户登录的状态的,我不知道什么时候设置了某个用户的开机自动登录,导致了以增强会话模式无法连接,这里就需要取消指定用户的自动登录。
sudo vim /etc/gdm3/custom.conf
找到 AutomaticLoginEnable
和 AutomaticLogin
两个参数,确定后者是你的用户名,将前者设置为 False
即可取消了该用户开机自动登录