在 Hyper-V 会话中对于 Fedora 启用增强会话

Hyper-V 的图形界面搞得老百姓怨声载道

TL;DR, 使用增强模式

代码 1在 Fedora 虚拟机中安装增强会话配置
$ git clone https://github.com/karuboniru/linux-vm-tools.git
$ cd linux-vm-tools/fedora
$ sudo ./install-config.sh

虚拟机关机, 打开 PowerShell (需要管理员权限)

代码 2在管理员 PowerShell 中启用 Hyper-V 增强会话传输
PowerShell> Set-VM -VMName <your_vm_name> -EnhancedSessionTransportType HvSocket

重新打开虚拟机即可

效果

图 1Fedora 虚拟机的 Hyper-V 增强会话效果

Detail: 你多干了啥

主要是为了让 SELinux 高兴增加了模块:

代码 3允许 xrdp 使用 VSOCK 的 SELinux 模块
module allow-vsock 1.0;
 
require {
        type unconfined_service_t;
        type unlabeled_t;
        class vsock_socket { getattr read write };
}
 
#============= unconfined_service_t ==============
allow unconfined_service_t unlabeled_t:vsock_socket { getattr read write };

但是新版本的 xrdp 貌似自带类似的模块,但是为了保证开箱即用就还是加上吧。

后文

脚本是照着 Arch 的版本 改的,PR 却没人 review,固有此文。不高兴,希望所有 PR 都能被善良对待。