PVE 下安装 Windows10 并直通核显、键盘鼠标、声卡等设备详细步骤 - 兮陌
2023-7-5
| 2023-7-5
0  |  0 分钟
type
status
date
Jul 2, 2023 03:09 PM
slug
summary
tags
PVE
category
技术折腾
icon
password
很早以前就想在家里的 PVE 虚拟平台上安装 Windows 操作系统,并且直通显卡,直接连接显示器使用。因为不想浪费时间,以及不是那么刚需的原因,最终也就不了了之了。但是最近在这个需求变得强烈起来,因…
很早以前就想在家里的 PVE 虚拟平台上安装 Windows 操作系统,并且直通显卡,直接连接显示器使用。
因为不想浪费时间,以及不是那么刚需的原因,最终也就不了了之了。但是最近在这个需求变得强烈起来,因为我上班了,总是背着我的 ITX 小主机上下班也不是很方便,所以重新审视如何利用家里的 PVE 解决在家用电脑的需求。

机器配置:

项目
明细
CPU
Intel(R) Core(TM) i5-4590(4 核 4 线程 @3.30GHz)
内存
16GB 1600 DDR3(4GB*4)
芯片组
Q87 芯片组 支持 VT-d
固态硬盘
Samsung 850EVO 120GB
机械硬盘
西部数据 4TB 蓝盘(直通给了 NAS)
板载网卡
Intel 1000Mbps 以太网卡
拓展网卡
Intel i350-T2 千兆以太网卡
机箱及主板
Dell Optiplex 9020SFF 准系统

目前运行虚拟机:

  • MikroTik Router OS:作为主路由拨号上网、流控
  • OpwenWrt:作为旁路由实现增强功能
  • DSM:黑群晖 NAS
  • CentOS:作为学习用机,部署自己写的项目
  • Windows10:即将安装,作为备用机

正题:PVE 安装 Window10 并且直通核显

本篇教程只适用于 Intel 平台核显的直通,其他情况可以酌情参考。

PVE 环境配置

首先确认主板是否支持 VT-d 技术,可以直接进 BIOS 查看有无此设置项,或者到 Intel 官网查找芯片组的产品规范书进行确认。如果支持,需要先打开 VT-d 功能,如果不支持,下面的内容就不用看了。

1. 开启 iommu

打开 grub 文件:
找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"
修改为:GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off"
修改完成之后更新 grub:

2. 加载相应的内核模块

打开 modules 文件:
在文件末尾添加以下模块:

3. 将显卡加入 PVE 的黑名单

打开 blacklist.conf 文件:
在文件末尾添加以下内容:
保存文件并更新内核:

4. 将显卡加入直通组

查看显卡的 id:
notion image
VGA 开头的就是我的核显,其中 00:02 是代表组名,00:02.0 是代表 00:02 组的第一个设备。
通过组名查找 id:
notion image
8086:0412 是厂商 ID: 设备 ID,如果显卡带有声卡,这里会显示两个设备,一个显卡,一个声卡。我这显卡没有声卡,所以只有一个设备。
记住显卡的 id,添加到直通组:
在文件末尾添加以下内容:
如果有多个设备,ids 后面每个设备之间用,隔开。
还需要添加 options 防止 VM 死机,打开 kvm.conf:
在文件末尾添加如下内容:

5. 重启 PVE

这一步很重要,单独写出来。

6. 开始直通

首先创建一个虚拟机,名称自定义;
notion image
使用光盘镜像的方式安装系统,类别选择 Microsoft Windows,版本选择 10/2016/2019;
notion image
机器类型选择 q35;
notion image
硬盘视情况而定,如果有空白硬盘可以选择直通给 windows 使用,这样效率最高,我这边没有空闲的硬盘了,所以只能虚拟一块 50GB 磁盘先用着,轻度使用应该是足够的;如果你是 SSD 可以勾选 SSD 仿真,这样可以提高效率;
notion image
CPU 核心数视情况而定,一定要启用 NUMA,CPU 类别选择 host;
notion image
内存视情况而定,内存和最小内存一定要一致;
notion image
网络这里选择 VirtIO 半虚拟化,效率比较高;
notion image
确认无误后点击确定,接下来在虚拟机的硬件中添加 PCI 设备,添加我们要直通的显卡;
notion image
勾选主 GPU 和 PCI-Express;
notion image
最后启动虚拟机,按照正常安装 Windows 的流程操作一遍,驱动需要下载 windows 着用的 kvm 驱动,地址:https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/;下载 ISO 文件通过虚拟光驱的方式使用,不懂可以问度娘呀。
所有驱动,包括显卡的驱动都装好之后,此时连接显示器应该是没有输出的,而且在设备管理器中,会提示该设备有问题,已被停止,所以接下来要解决这个问题。
将虚拟机关机,在硬件中删除刚刚直通的 PCI 设备,打开虚拟机的配置文件:
在第一行添加如下内容:
将显示改为无:
notion image
连接好显示器,重新打开虚拟机,不出意外你将看到熟悉的 Windows10 界面。
notion image

7. 直通 USB 用于连接键盘鼠标

这一步比较简单,接上键盘鼠标之后,选择添加 USB 设备,使用 USB3 视情况勾选:
notion image

8. 直通声卡

声卡问题暂时没有解决,什么时候解决了来更新。
目前通过直通 USB 设备使用 USB 外置声卡来曲线救国。
2020-09-21 更新:
之所以直通不了,是因为我在 BIOS 把声卡给禁用了!重新开启之后就好了。

总结

真的挺折腾的,所以之前那么多次想弄,最后也都放弃了,不得不说是明智之举。
网上这方面的教程太少了,和我的情况一样的更是几乎没有,我也是查了很多资料,相互印证才在我的环境上成功的,所以写出来,能给大家多一个参考也是极好的 。 > 本文由简悦 SimpRead 转码
notion image
目录