环境
操作系统:银河麒麟 V10 SP1 2303
适用架构:ARM64(飞腾 FT-2000/4、飞腾 D2000)
请注意:PhyVirt 只能在飞腾平台运行,不支持鲲鹏、盘古、瑞芯微等其他 ARM 处理器。
介绍
PhyVirt 是一款可直接运行在飞腾平台 + 国产操作系统的虚拟化平台软件,主要用于在信创环境下安装虚拟机,同时支持桌面融合技术,满足终端虚拟化和应用虚拟化的需求。
用户可在主流的国产系统(麒麟、统信等)直接运行 PhyVirt 软件,考虑到不同用户使用需求和操作环境的复杂性,平台提供虚拟机和桌面融合两种使用模式。虚拟机模式下可按需创建一个或多个虚拟机,虚拟机支持各种 Linux 版本和 Windows 版本,同时支持无缝切换宿主机与虚拟机桌面,极大地方便了运
维管理。
在桌面融合模式下,用户通过该平台可在国产操作系统上直接运行原 Windows 操作系统下各类生态应用,保持原生的操作体验,保证了用户基本的操作习惯不改变。
平台提供快照管理、快照自动还原以及虚机数据保存在本地,满足安全需求。
运行环境
软硬件环境要求
硬件要求 | 飞腾腾锐 D2000/FT-2000/4 处理器 |
宿主机操作系统要求 | 麒麟/统信/ubuntu 等 |
注意:操作系统内核需升级到支持 KVM 版本(麒麟自带 KVM 需要 V10 SP1 2303 版本及以上,统信需 1050 V3 及以上版本),建议内存>8G,硬盘>200G。
银河麒麟的软件仓库已经集成了 PhyVirt。 安装包也可在飞腾软件平台点击网盘链接获取对应系统的 deb 包(麒麟和统信)以及 phyvirt·app,下载地址:https://www.phytium.com.cn/developer/,一键安装,安装成功后主界面如下:
安装实体机的 Linux 操作系统
仅在银河麒麟做了测试。
ISO 光盘映像
请下载 Windows 11 for ARM 的安装映像。请参考《Windows ARM64 的安装》https://my.oschina.net/chipo/blog/4816548
安装 PhyVirt
sudo apt update
sudo apt install cn.com.phytium.phyvirt
或者通过下载的 deb 安装。
sudo dpkg -i phyvirt_1.5.5.0_kylin.deb
启动 PhyVirt
从桌面或开始菜单启动 PhyVirt。
安装视窗 Windows 11
请一定选择 VirtIO 驱动包(PhyVirt ),不然后边无法进行。
Shift + F10 启动 CMD 终端。输入 regedit 启动注册表编辑器。
依次展开 HKEY_LOCAL_MACHINE\SYSTEM\Setup 。单击选中 Setup 后,在右侧栏空白处右键单击,新建,项。
在左侧栏修改新建项的名称为 LabConfig 。
单击选中 LabConfig 后,在右侧栏空白处右键单击,新建,DWORD(32 位)值。再次新建,DWORD(32 位)值。
分别修改两个 DWORD 的名称为 ByPassSecureBootCheck 和 ByPassTPMCheck 。
分别双击修改好的两个 DWORD ,修改数值数据为 1。
最终结果如下。
关闭注册表编辑器。关闭兼容性提示。询问是否退出时,选择“是(Yes)”。
安装界面会重新加载。
再次点击“安装(Install)”。
这一次就不会报错了。
安装类型选择“自定义(Custom)”。
此时找不到硬盘,别急,点击“加载驱动(Load driver)”。
选择“浏览(Browse)”。
依次展开 phyvirt-app 光盘映像、viostor、w11、ARM64。选中 ARM64。
下一步。
这里可以找到硬盘了。一般默认分区就行。再下一步。当然也可以自定义分区。
等待视窗操作系统安装完成。后边的安装过程按照提示进行就可以了。
如果遇到强制连接网络情况,请执行以下步骤。
Shift + F10 启动终端命令行。输入 OOBE\BYPASSNRO ,回车。安装程序会重新开始。
此时,即可跳过强制连接网络。
安装完成。此时,请一定要安装 PhyVirt App 。
展开 phyvirt-app 的光盘映像。双击 phyvirt-app 。
点击“完成”之后,还有一些批处理命令会自动执行。再等一下。
如果想调整分辨率。从 800x600 调整为 1024x768。请执行以下命令。
开始菜单右键单击,选择“PowerShell(管理员)”或者“终端(管理员)”。
输入命令 bcdedit /set highestmode yes 。
重启虚拟机后,分辨率就变高了。
使用映像安装的方式还没有测试。
安装 QEMU Utils
sudo apt install qemu-utils
VHDX 硬盘镜像
下载 Windows 10 或 11 ARM64 的硬盘镜像。建议使用这个方式安装。需要使用微软账号登录网站。
https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64
转换格式。
cd ~/Download
Win 11
qemu-img convert -p -O qcow2 ./Windows11_InsiderPreview_Client_ARM64_en-us_25346.VHDX ./Windows11_InsiderPreview_Client_ARM64_en-us_25346.qcow2
如果觉得转换后的文件名称太长,可以在上述命令中自行修改,比如 ./winArm25346.qcow2
虚拟系统管理器
从开始菜单中启动 “虚拟系统管理器”。“文件”、“新建虚拟机”、“导入现有磁盘镜像”。
“前进”、“浏览”
“本地浏览”,选择硬盘镜像所在的路径。
“选择卷”,选择要安装的操作系统,输入 “Ubuntu 20.04”,是的,你没看错,目前如果选择 “Windows 10” 在生成虚拟机时会报错。
输入分配给虚拟机的内存容量和 CPU 的核心数。
输入虚拟机的名称,比如 “Win10” 或 “Win11”。勾选 “在安装前自定义配置”。
点击 “完成” 后,在弹出的新对话框中,选中 “磁盘”。由于 virt 机器没有 SATA 控制器,这里转而使用 virtio。通过 usb 存储可以做到这一点。将 “磁盘总线” 改为 “USB”。选择 SCSI 可能会导致虚拟机蓝屏。但是,如果使用前文中 “即开即用” 的硬盘镜像,这里可以使用 SCSI 磁盘总线。因为镜像里已经集成了 SCSI 的驱动。
默认情况下,ARM64 平台的虚拟机并未添加显卡、键盘和鼠标。显卡型号请选择 “Ramfb”。
VGA 设备及其驱动在 KVM 环境下不能用(这也是它被踢出 ArmVirtPkg 的原因),而 virtio-gpu 的 GOP 不被 Windows 支持。
qemu 3.0.0 加入了 ramfb 设备,用一块内存模拟类 VGA 的 FrameBuffer,这样 Windows 就有显示输出了(当然还是没有硬件加速)。
TPM 2.0
安装 Windows 10 可以省略这个步骤。如果要升级到 Windows 11,建议您参考以下内容。
Windows 11 要求硬件支持 TPM 2.0,虽然微软在 OEM 领域放宽了要求,但是仅限于特定的需求。
QEMU 支持添加一个虚拟 TPM 设备给虚拟机。
启动系统
所有相关设备添加完成后,点击左上角 “开始安装”。
最终的硬件类似下图所示。
系统启动后会进行一些安装步骤,还会重启,请耐心等待一下。
由于现在驱动程序还不是很完善,可能会遇到 Windows 闪退或莫名的卡顿,建议更新驱动。
已知的问题:Firefox ARM64 可能会造成系统假死。
win 10 系统的截图
Win 11 系统的截图
网卡驱动
“即开即用” 的硬盘镜像可以跳过此步骤。
下载虚拟网卡的驱动程序。
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
可以添加光驱至虚拟机,也可以将 ISO 文件复制到优盘,然后在虚拟机中添加 USB 设备,连接到这个优盘。复制 ISO 文件后,挂载或解压缩。
禁用设备驱动程序的签名强制。
启动 Windows,然后右键单击 “开始” 按钮,然后选择 Command Prompt (Admin) 也就是 “命令提示符(管理员)”。 使用 bcdedit 启用 “测试签名” 的设备驱动程序。
bcdedit.exe -set TESTSIGNING ON
然后重启 Windows。一旦再次启动,然后右击窗口开始按钮,然后选择 Device Manager(设备管理器)。 在设备管理器中,选择 View(视图)菜单,然后选择 Devices by Connection(按连接列出的设备)。
在设备树中导航,选择 ACPI ARM64-based PC, Microsoft ACPI-Compliant System, PCI Express Root Complex,然后您将在那里看到一个未知设备。(树中有许多未知设备,但 PCI Express 根联合体下的设备是虚拟网卡。) 右键单击未知设备,然后选择更新驱动程序,然后在我的计算机上浏览驱动程序,然后选择 ISO 镜像挂载或释放后所在的文件夹,比如 D:\,勾选 “包括子文件夹”。 单击下一步安装红帽 VirtIO 以太网适配器(Red Hat VertIO Ethernet Adapter)。
SCSI 驱动
“即开即用” 的硬盘镜像可以跳过此步骤。
安装方法同网卡。只是设备不同而已。(可选步骤:SCSI 驱动安装完毕后,关闭操作系统,将 USB 磁盘删除,不要删除硬盘镜像。添加新存储,选择刚才的硬盘镜像,可以选择使用 SCSI 模式启动了。)
声卡
对于鲲鹏 920 的桌面用户来说,可以添加 USB 声卡,选择 “USB 主机设备”、“Realtek USB Audio”。物理机的音频输出改为显卡的 HDMI 音频,这样虚拟机和物理机就分别有自己的音频设备了。
远程桌面
不习惯使用英文界面的,可以自行安装一下中文语言包,这里不赘述了。在 Windows 中开启远程桌面访问后,通过 remmina 连接操作系统,使用体验更好一些。设置完名称、IP、用户名、密码…… 后,在 “高级” 标签页中,“画质” 选 “最好”。“声音” 可以选择 “本地 - 高质量”。
界面效果。