PVE9:用NVIDIA vGPU19.0虚拟化显卡拆分在虚拟机玩游戏
记录6.14内核的PVE9配置NVIDIA vGPU19.0版本的显卡虚拟化拆分,并在虚拟机里玩游戏。NVIDIA vGPU是一项由 NVIDIA 开发的虚拟化技术。它允许单个物理的 NVIDIA GPU(显卡)被多个虚拟机(VM)同时、直接地共享使用。注意它不是一个免费的项目,需要购买软件许可vGPU License才能完整的使用vGPU。本文涉及的vGPU功能基于开源社区方案实现,仅限个人测试、学习及非商业用途,禁止用于商业生产环境。
免部署直接用篇
如果你是萌新或者是多设备工作室用户,可以用我封装好的PVE镜像。免部署开机即用。即节约时间又避免部署过程中产生的坑坑坑坑坑坑坑坑坑坑坑坑。当然由于每个人的显卡不同,该镜像还需要自己结合文章,把显卡需要的参数配置了才能使用。
预装版PVE镜像包-无桌面版
镜像使用说明:
1)预装版就是环境都帮你部署好了,不用你另外联网安装啥的。你只需要烧录硬盘启动即可;2)镜像无绑定限制,可重复使用。本镜像为无桌面版本,需要用第二台机器做主控机进行管理PVE;3)对于一些不能接入外网的用户或者多机器想减少重复部署工作的工作室,预装版是个不错的选择;
镜像更新说明:
1)基于PVE 9.1.2 内核Linux 6.14.11-4-pve版本进行封装;
2)该镜像大小32GB,管理账号:root,密码:123456;
3)管理口默认为主机的第一个口,默认IP:10.10.10.123,默认网关:10.10.10.10;
4)预装PVE KVM去虚拟化包,规避虚拟机检测,模拟真实硬件环境,让软件或者端游在虚拟机中运行;
5)提供Fastapi-dls 授权驱动服务的LXC还原包,90天周期,到期自动续期;
6)提供WIN10 22h2 X64 虚拟机的还原包,还原后请添加vGPU显卡设备并配置好驱动授权;
7)提供PVE脚本(更改PVE管理IP|扩容系统盘剩余空间|安装vGPU驱动16/17/18/19|安装/卸载去虚拟化KVM包|定制硬件信息|模拟显卡信息|批量克隆/同步/删除虚拟机)登录SSH自动运行;
预装版PVE镜像教学视频--点我展开 ↓↓↓
预装版PVE镜像包-教学视频
1.PVE9下使用NVIDIA vGPU玩游戏表现
2.烧录PVE9预装版镜像到硬盘
3.PVE9下vGPU19.0使用教学
4.PVE9下去虚拟化和游戏克隆多开
预装版PVE镜像包-桌面版
镜像使用说明:
1)镜像安装了GNOME图形界面,对实在找不到第二台机器来做主控机的用户友好;2)PVE既是被控端也是主控端,不需要找第2台机器去管理PVE,直接在当前PVE的浏览器登录PVE后台即可;3)前提是你机器最少要2张显卡,可以核显(核显用于输出显示器)+独显(N卡用于vGPU)或者2个独显(A卡用于输出显示器,N卡用于vGPU)的搭配,因为N卡做了vGPU是没法输出显示器的,输出显示器就没法使用vGPU,记得在BIOS将显卡第一显示改核显或者要输出显示器的独显A卡;
镜像更新说明:
1)基于PVE 9.1.2 内核Linux 6.14.11-4-pve版本进行封装;
2)该镜像大小28GB,管理账号:root,密码:123456;
3)管理口默认为主机的第一个口,默认IP:10.10.10.123,默认网关:10.10.10.10;
4)预装PVE KVM去虚拟化包,规避虚拟机检测,模拟真实硬件环境,让软件或者端游在虚拟机中运行;
5)提供Fastapi-dls 授权驱动服务的LXC还原包,90天周期,到期自动续期;
6)提供WIN10 22h2 X64 虚拟机的还原包,还原后请添加vGPU显卡设备并配置好驱动授权;
7)提供PVE脚本(更改PVE管理IP|扩容系统盘剩余空间|安装vGPU驱动16/17/18/19|安装/卸载去虚拟化KVM包|定制硬件信息|模拟显卡信息|批量克隆/同步/删除虚拟机)登录SSH自动运行;
定制版PVE镜像包-ISO版
镜像使用说明:
如果你用预装版的PVE镜像包安装不成功,或者无法在你的设备上正常初始化,又或者你想使用冗余raid1或者ZFS模式来安装PVE。那么你可以用这个PVE ISO镜像来安装。安装方式跟常规的PVE安装方法一样。将ISO镜像写入U盘插到设备进行安装,安装好后登录PVE后台打开PVE Shell窗口进行一键部署,本镜像需要PVE联网下载依赖包来部署环境
镜像更新说明:
1)基于PVE 9.1.1 内核Linux 6.17.2-1-pve版本完成构建;
2)集成一键初始化脚本:一键为PVE9合并local分区|换源|开启IOMMU|屏蔽NVIDIA显卡|去订阅弹窗等;
3)集成一键部署vGPU脚本:一键安装NVIDIA vGPU Host驱动(16|17|18|19)和vGPU Unlock-rs服务;
4)集成一键去虚拟化脚本:规避虚拟机检测,模拟真实硬件环境,让软件或者端游在虚拟机中运行;
5)集成一键随机硬件脚本:为每台虚拟机生成独立的硬件信息(主板|CPU|内存|硬盘|BIOS|机器码);
6)集成一键随机显卡脚本:给每台虚拟机生成独立Quadro专业卡,虚拟机需要NVIDIA vGPU支持;
7)集成一键虚拟机多开脚本:批量克隆虚拟机|同步母机数据盘|批量删除虚拟机;
8)提供Fastapi-dls 授权驱动服务的LXC还原包,90天周期,到期自动续期;
9)提供WIN10 22h2 X64 虚拟机的还原包,还原后请添加vGPU显卡设备并配置好驱动授权;
定制版ISO镜像教学视频--点我展开 ↓↓↓
定制版ISO镜像-教学视频
1.ISO定制版PVE镜像安装教学
图文教学部署篇
硬件配置
演示的显卡依旧是哥布林救出来的【女生一手自用P106-100】显卡。
| 配置 | 型号 |
|---|---|
| 系统 | PVE 9.0.3 |
| 内核 | Linux pve9 6.14.8-2-pve |
| pve-qemu-kvm | 10.0.2-4 |
| CPU | Intel Core CC150 @ 3.5GHz 8核16线程 |
| 显卡 | 七彩虹 P106-100 6144 MB |
| vGPU驱动 | 580.65.05 |

显卡支不支持vGPU虚拟化,可以点开下边列表进行查阅。
点我展开
以下 Maxwell\Pascal\Turing架构的显卡均支持vGPU,Ampere架构的30系及之后的消费卡暂不支持Maxwell 架构:(GTX 9xx、Quadro Mxxxx、Tesla Mxx)Pascal 架构:(GTX 10xx、Quadro Pxxxx、Tesla Pxx)Turing 架构:(GTX 16xx、RTX 20xx、Quadro RTXxx、Tesla Txx)| 设备ID | 支持的显卡列表 | 可能模拟的显卡型号 |
|---|---|---|
| 21c4 | TU116 GeForce GTX 1660 SUPER | Quadro RTX 6000 |
| 21d1 | TU116BM GeForce GTX 1660 Ti Mobile | Quadro RTX 6000 |
| 2182 | TU116 GeForce GTX 1660 Ti | Quadro RTX 6000 |
| 2184 | TU116 GeForce GTX 1660 | Quadro RTX 6000 |
| 2187 | TU116 GeForce GTX 1650 SUPER | Quadro RTX 6000 |
| 2188 | TU116 GeForce GTX 1650 | Quadro RTX 6000 |
| 2191 | TU116M GeForce GTX 1660 Ti Mobile | Quadro RTX 6000 |
| 2192 | TU116M GeForce GTX 1650 Ti Mobile | Quadro RTX 6000 |
| 2189 | TU116 CMP 30HX | Quadro RTX 6000 |
| 1fbb | TU117GLM Quadro T500 Mobile | Quadro RTX 6000 |
| 1fd9 | TU117BM GeForce GTX 1650 Mobile Refresh | Quadro RTX 6000 |
| 1ff9 | TU117GLM Quadro T1000 Mobile | Quadro RTX 6000 |
| 1fdd | TU117BM GeForce GTX 1650 Mobile Refresh | Quadro RTX 6000 |
| 1f96 | TU117M GeForce GTX 1650 Mobile / Max-Q | Quadro RTX 6000 |
| 1fb8 | TU117GLM Quadro T2000 Mobile / Max-Q | Quadro RTX 6000 |
| 1fb9 | TU117GLM Quadro T1000 Mobile | Quadro RTX 6000 |
| 1f97 | TU117M GeForce MX450 | Quadro RTX 6000 |
| 1f98 | TU117M GeForce MX450 | Quadro RTX 6000 |
| 1f9c | TU117M GeForce MX450 | Quadro RTX 6000 |
| 1f9d | TU117M GeForce GTX 1650 Mobile / Max-Q | Quadro RTX 6000 |
| 1fb0 | TU117GLM Quadro T1000 Mobile | Quadro RTX 6000 |
| 1fb1 | TU117GL T600 | Quadro RTX 6000 |
| 1fb2 | TU117GLM Quadro T400 Mobile | Quadro RTX 6000 |
| 1fba | TU117GLM T600 Mobile | Quadro RTX 6000 |
| 1f42 | TU106 GeForce RTX 2060 SUPER | Quadro RTX 6000 |
| 1f47 | TU106 GeForce RTX 2060 SUPER | Quadro RTX 6000 |
| 1f50 | TU106BM GeForce RTX 2070 Mobile / Max-Q | Quadro RTX 6000 |
| 1f51 | TU106BM GeForce RTX 2060 Mobile | Quadro RTX 6000 |
| 1f54 | TU106BM GeForce RTX 2070 Mobile | Quadro RTX 6000 |
| 1f55 | TU106BM GeForce RTX 2060 Mobile | Quadro RTX 6000 |
| 1f82 | TU117 GeForce GTX 1650 | Quadro RTX 6000 |
| 1f91 | TU117M GeForce GTX 1650 Mobile / Max-Q | Quadro RTX 6000 |
| 1f92 | TU117M GeForce GTX 1650 Mobile | Quadro RTX 6000 |
| 1f94 | TU117M GeForce GTX 1650 Mobile | Quadro RTX 6000 |
| 1f95 | TU117M GeForce GTX 1650 Ti Mobile | Quadro RTX 6000 |
| 1f76 | TU106GLM Quadro RTX 3000 Mobile Refresh | Quadro RTX 6000 |
| 1f07 | TU106 GeForce RTX 2070 Rev. A | Quadro RTX 6000 |
| 1f08 | TU106 GeForce RTX 2060 Rev. A | Quadro RTX 6000 |
| 1f09 | TU106 GeForce GTX 1660 SUPER | Quadro RTX 6000 |
| 1f0a | TU106 GeForce GTX 1650 | Quadro RTX 6000 |
| 1f10 | TU106M GeForce RTX 2070 Mobile | Quadro RTX 6000 |
| 1f11 | TU106M GeForce RTX 2060 Mobile | Quadro RTX 6000 |
| 1f12 | TU106M GeForce RTX 2060 Max-Q | Quadro RTX 6000 |
| 1f14 | TU106M GeForce RTX 2070 Mobile / Max-Q Refresh | Quadro RTX 6000 |
| 1f15 | TU106M GeForce RTX 2060 Mobile | Quadro RTX 6000 |
| 1f36 | TU106GLM Quadro RTX 3000 Mobile / Max-Q | Quadro RTX 6000 |
| 1f0b | TU106 CMP 40HX | Quadro RTX 6000 |
| 1eb5 | TU104GLM Quadro RTX 5000 Mobile / Max-Q | Quadro RTX 6000 |
| 1eb6 | TU104GLM Quadro RTX 4000 Mobile / Max-Q | Quadro RTX 6000 |
| 1eb8 | TU104GL Tesla T4 | Quadro RTX 6000 |
| 1ec2 | TU104 GeForce RTX 2070 SUPER | Quadro RTX 6000 |
| 1ec7 | TU104 GeForce RTX 2070 SUPER | Quadro RTX 6000 |
| 1ed0 | TU104BM GeForce RTX 2080 Mobile | Quadro RTX 6000 |
| 1ed1 | TU104BM GeForce RTX 2070 SUPER Mobile / Max-Q | Quadro RTX 6000 |
| 1ed3 | TU104BM GeForce RTX 2080 SUPER Mobile / Max-Q | Quadro RTX 6000 |
| 1f02 | TU106 GeForce RTX 2070 | Quadro RTX 6000 |
| 1f06 | TU106 GeForce RTX 2060 SUPER | Quadro RTX 6000 |
| 1ef5 | TU104GLM Quadro RTX 5000 Mobile Refresh | Quadro RTX 6000 |
| 1e81 | TU104 GeForce RTX 2080 SUPER | Quadro RTX 6000 |
| 1e82 | TU104 GeForce RTX 2080 | Quadro RTX 6000 |
| 1e84 | TU104 GeForce RTX 2070 SUPER | Quadro RTX 6000 |
| 1e87 | TU104 GeForce RTX 2080 Rev. A | Quadro RTX 6000 |
| 1e89 | TU104 GeForce RTX 2060 | Quadro RTX 6000 |
| 1e90 | TU104M GeForce RTX 2080 Mobile | Quadro RTX 6000 |
| 1e91 | TU104M GeForce RTX 2070 SUPER Mobile / Max-Q | Quadro RTX 6000 |
| 1e93 | TU104M GeForce RTX 2080 SUPER Mobile / Max-Q | Quadro RTX 6000 |
| 1eb0 | TU104GL Quadro RTX 5000 | Quadro RTX 6000 |
| 1eb1 | TU104GL Quadro RTX 4000 | Quadro RTX 6000 |
| 1eb4 | TU104GL T4G | Quadro RTX 6000 |
| 1e04 | TU102 GeForce RTX 2080 Ti | Quadro RTX 6000 |
| 1e07 | TU102 GeForce RTX 2080 Ti Rev. A | Quadro RTX 6000 |
| 1e2d | TU102 GeForce RTX 2080 Ti Engineering Sample | Quadro RTX 6000 |
| 1e2e | TU102 GeForce RTX 2080 Ti 12GB Engineering Sample | Quadro RTX 6000 |
| 1e30 | TU102GL Quadro RTX 6000/8000 | Quadro RTX 6000 |
| 1e36 | TU102GL Quadro RTX 6000 | Quadro RTX 6000 |
| 1e37 | TU102GL GRID RTX T10-4/T10-8/T10-16 | Quadro RTX 6000 |
| 1e78 | TU102GL Quadro RTX 6000/8000 | Quadro RTX 6000 |
| 1e09 | TU102 CMP 50HX | Quadro RTX 6000 |
| 1dba | GV100GL Quadro GV100 | Tesla V100 32GB PCIE |
| 1e02 | TU102 TITAN RTX | Quadro RTX 6000 |
| 1cfa | GP107GL Quadro P2000 | Tesla P40 |
| 1cfb | GP107GL Quadro P1000 | Tesla P40 |
| 1d01 | GP108 GeForce GT 1030 | Tesla P40 |
| 1d10 | GP108M GeForce MX150 | Tesla P40 |
| 1d11 | GP108M GeForce MX230 | Tesla P40 |
| 1d12 | GP108M GeForce MX150 | Tesla P40 |
| 1d13 | GP108M GeForce MX250 | Tesla P40 |
| 1d16 | GP108M GeForce MX330 | Tesla P40 |
| 1d33 | GP108GLM Quadro P500 Mobile | Tesla P40 |
| 1d34 | GP108GLM Quadro P520 | Tesla P40 |
| 1d52 | GP108BM GeForce MX250 | Tesla P40 |
| 1d56 | GP108BM GeForce MX330 | Tesla P40 |
| 1d81 | GV100 TITAN V | Tesla V100 32GB PCIE |
| 1cb6 | GP107GL Quadro P620 | Tesla P40 |
| 1cba | GP107GLM Quadro P2000 Mobile | Tesla P40 |
| 1cbb | GP107GLM Quadro P1000 Mobile | Tesla P40 |
| 1cbc | GP107GLM Quadro P600 Mobile | Tesla P40 |
| 1cbd | GP107GLM Quadro P620 | Tesla P40 |
| 1ccc | GP107BM GeForce GTX 1050 Ti Mobile | Tesla P40 |
| 1ccd | GP107BM GeForce GTX 1050 Mobile | Tesla P40 |
| 1cb1 | GP107GL Quadro P1000 | Tesla P40 |
| 1cb2 | GP107GL Quadro P600 | Tesla P40 |
| 1cb3 | GP107GL Quadro P400 | Tesla P40 |
| 1c81 | GP107 GeForce GTX 1050 | Tesla P40 |
| 1c82 | GP107 GeForce GTX 1050 Ti | Tesla P40 |
| 1c83 | GP107 GeForce GTX 1050 3GB | Tesla P40 |
| 1c8c | GP107M GeForce GTX 1050 Ti Mobile | Tesla P40 |
| 1c8d | GP107M GeForce GTX 1050 Mobile | Tesla P40 |
| 1c8f | GP107M GeForce GTX 1050 Ti Max-Q | Tesla P40 |
| 1c90 | GP107M GeForce MX150 | Tesla P40 |
| 1c91 | GP107M GeForce GTX 1050 3 GB Max-Q | Tesla P40 |
| 1c92 | GP107M GeForce GTX 1050 Mobile | Tesla P40 |
| 1c94 | GP107M GeForce MX350 | Tesla P40 |
| 1c96 | GP107M GeForce MX350 | Tesla P40 |
| 1c36 | GP106 P106M | Tesla P40 |
| 1c07 | GP106 P106-100 | Tesla P40 |
| 1c09 | GP106 P106-090 | Tesla P40 |
| 1c20 | GP106M GeForce GTX 1060 Mobile | Tesla P40 |
| 1c21 | GP106M GeForce GTX 1050 Ti Mobile | Tesla P40 |
| 1c22 | GP106M GeForce GTX 1050 Mobile | Tesla P40 |
| 1c23 | GP106M GeForce GTX 1060 Mobile Rev. 2 | Tesla P40 |
| 1c30 | GP106GL Quadro P2000 | Tesla P40 |
| 1c31 | GP106GL Quadro P2200 | Tesla P40 |
| 1c35 | GP106M Quadro P2000 Mobile | Tesla P40 |
| 1c60 | GP106BM GeForce GTX 1060 Mobile 6GB | Tesla P40 |
| 1c61 | GP106BM GeForce GTX 1050 Ti Mobile | Tesla P40 |
| 1c62 | GP106BM GeForce GTX 1050 Mobile | Tesla P40 |
| 1bb8 | GP104GLM Quadro P3000 Mobile | Tesla P40 |
| 1bb9 | GP104GLM Quadro P4200 Mobile | Tesla P40 |
| 1bbb | GP104GLM Quadro P3200 Mobile | Tesla P40 |
| 1bc7 | GP104 P104-101 | Tesla P40 |
| 1be0 | GP104BM GeForce GTX 1080 Mobile | Tesla P40 |
| 1be1 | GP104BM GeForce GTX 1070 Mobile | Tesla P40 |
| 1c02 | GP106 GeForce GTX 1060 3GB | Tesla P40 |
| 1c03 | GP106 GeForce GTX 1060 6GB | Tesla P40 |
| 1c04 | GP106 GeForce GTX 1060 5GB | Tesla P40 |
| 1c06 | GP106 GeForce GTX 1060 6GB Rev. 2 | Tesla P40 |
| 1b87 | GP104 P104-100 | Tesla P40 |
| 1ba0 | GP104M GeForce GTX 1080 Mobile | Tesla P40 |
| 1ba1 | GP104M GeForce GTX 1070 Mobile | Tesla P40 |
| 1ba2 | GP104M GeForce GTX 1070 Mobile | Tesla P40 |
| 1bad | GP104 GeForce GTX 1070 Engineering Sample | Tesla P40 |
| 1bb0 | GP104GL Quadro P5000 | Tesla P40 |
| 1bb1 | GP104GL Quadro P4000 | Tesla P40 |
| 1bb5 | GP104GLM Quadro P5200 Mobile | Tesla P40 |
| 1bb6 | GP104GLM Quadro P5000 Mobile | Tesla P40 |
| 1bb7 | GP104GLM Quadro P4000 Mobile | Tesla P40 |
| 1b06 | GP102 GeForce GTX 1080 Ti | Tesla P40 |
| 1b07 | GP102 P102-100 | Tesla P40 |
| 1b30 | GP102GL Quadro P6000 | Tesla P40 |
| 1b38 | GP102GL Tesla P40 | Tesla P40 |
| 1b80 | GP104 GeForce GTX 1080 | Tesla P40 |
| 1b81 | GP104 GeForce GTX 1070 | Tesla P40 |
| 1b82 | GP104 GeForce GTX 1070 Ti | Tesla P40 |
| 1b83 | GP104 GeForce GTX 1060 6GB | Tesla P40 |
| 1b84 | GP104 GeForce GTX 1060 3GB | Tesla P40 |
| 1b39 | GP102GL Tesla P10 | Tesla P40 |
| 1b00 | GP102 TITAN X | Tesla P40 |
| 1b01 | GP102 GeForce GTX 1080 Ti 10GB | Tesla P40 |
| 1b02 | GP102 TITAN Xp | Tesla P40 |
| 179c | GM107 GeForce 940MX | Tesla M10 |
| 17c2 | GM200 GeForce GTX TITAN X | Tesla M60 |
| 17c8 | GM200 GeForce GTX 980 Ti | Tesla M60 |
| 17f0 | GM200GL Quadro M6000 | Tesla M60 |
| 17f1 | GM200GL Quadro M6000 24GB | Tesla M60 |
| 17fd | GM200GL Tesla M40 | Tesla M60 |
| 1617 | GM204M GeForce GTX 980M | Tesla M60 |
| 1618 | GM204M GeForce GTX 970M | Tesla M60 |
| 1619 | GM204M GeForce GTX 965M | Tesla M60 |
| 161a | GM204M GeForce GTX 980 Mobile | Tesla M60 |
| 1667 | GM204M GeForce GTX 965M | Tesla M60 |
| 174d | GM108M GeForce MX130 | Tesla M10 |
| 174e | GM108M GeForce MX110 | Tesla M10 |
| 1789 | GM107GL GRID M3-3020 | Tesla M10 |
| 1402 | GM206 GeForce GTX 950 | Tesla M60 |
| 1406 | GM206 GeForce GTX 960 OEM | Tesla M60 |
| 1407 | GM206 GeForce GTX 750 v2 | Tesla M60 |
| 1427 | GM206M GeForce GTX 965M | Tesla M60 |
| 1430 | GM206GL Quadro M2000 | Tesla M60 |
| 1431 | GM206GL Tesla M4 | Tesla M60 |
| 1436 | GM206GLM Quadro M2200 Mobile | Tesla M60 |
| 15f0 | GP100GL Quadro GP100 | Tesla P40 |
| 1404 | GM206 GeForce GTX 960 FAKE | Tesla M60 |
| 13d8 | GM204M GeForce GTX 970M | Tesla M60 |
| 13d9 | GM204M GeForce GTX 965M | Tesla M60 |
| 13da | GM204M GeForce GTX 980 Mobile | Tesla M60 |
| 13e7 | GM204GL GeForce GTX 980 Engineering Sample | Tesla M60 |
| 13f0 | GM204GL Quadro M5000 | Tesla M60 |
| 13f1 | GM204GL Quadro M4000 | Tesla M60 |
| 13f2 | GM204GL Tesla M60 | Tesla M60 |
| 13f3 | GM204GL Tesla M6 | Tesla M60 |
| 13f8 | GM204GLM Quadro M5000M / M5000 SE | Tesla M60 |
| 13f9 | GM204GLM Quadro M4000M | Tesla M60 |
| 13fa | GM204GLM Quadro M3000M | Tesla M60 |
| 13fb | GM204GLM Quadro M5500 | Tesla M60 |
| 1401 | GM206 GeForce GTX 960 | Tesla M60 |
| 13b3 | GM107GLM Quadro K2200M | Tesla M10 |
| 13b4 | GM107GLM Quadro M620 Mobile | Tesla M10 |
| 13b6 | GM107GLM Quadro M1200 Mobile | Tesla M10 |
| 13b9 | GM107GL NVS 810 | Tesla M10 |
| 13ba | GM107GL Quadro K2200 | Tesla M10 |
| 13bb | GM107GL Quadro K620 | Tesla M10 |
| 13bc | GM107GL Quadro K1200 | Tesla M10 |
| 13bd | GM107GL Tesla M10 | Tesla M10 |
| 13c0 | GM204 GeForce GTX 980 | Tesla M60 |
| 13c2 | GM204 GeForce GTX 970 | Tesla M60 |
| 13d7 | GM204M GeForce GTX 980M | Tesla M60 |
| 1389 | GM107GL GRID M30 | Tesla M10 |
| 1390 | GM107M GeForce 845M | Tesla M10 |
| 1391 | GM107M GeForce GTX 850M | Tesla M10 |
| 1392 | GM107M GeForce GTX 860M | Tesla M10 |
| 1393 | GM107M GeForce 840M | Tesla M10 |
| 1398 | GM107M GeForce 845M | Tesla M10 |
| 1399 | GM107M GeForce 945M | Tesla M10 |
| 139a | GM107M GeForce GTX 950M | Tesla M10 |
| 139b | GM107M GeForce GTX 960M | Tesla M10 |
| 139c | GM107M GeForce 940M | Tesla M10 |
| 139d | GM107M GeForce GTX 750 Ti | Tesla M10 |
| 13b0 | GM107GLM Quadro M2000M | Tesla M10 |
| 13b1 | GM107GLM Quadro M1000M | Tesla M10 |
| 13b2 | GM107GLM Quadro M600M | Tesla M10 |
| 1347 | GM108M GeForce 940M | Tesla M10 |
| 1348 | GM108M GeForce 945M / 945A | Tesla M10 |
| 1349 | GM108M GeForce 930M | Tesla M10 |
| 134b | GM108M GeForce 940MX | Tesla M10 |
| 134d | GM108M GeForce 940MX | Tesla M10 |
| 134e | GM108M GeForce 930MX | Tesla M10 |
| 134f | GM108M GeForce 920MX | Tesla M10 |
| 137a | GM108GLM Quadro K620M / Quadro M500M | Tesla M10 |
| 137b | GM108GLM Quadro M520 Mobile | Tesla M10 |
| 137d | GM108M GeForce 940A | Tesla M10 |
| 1380 | GM107 GeForce GTX 750 Ti | Tesla M10 |
| 1381 | GM107 GeForce GTX 750 | Tesla M10 |
| 1382 | GM107 GeForce GTX 745 | Tesla M10 |
| 1340 | GM108M GeForce 830M | Tesla M10 |
| 1341 | GM108M GeForce 840M | Tesla M10 |
| 1344 | GM108M GeForce 845M | Tesla M10 |
| 1346 | GM108M GeForce 930M | Tesla M10 |
一、安装Proxmox VE
如果你用的是预装版PVE的IMG镜像,那么你直接将镜像烧录硬盘启动即可,以下只演示定制版PVE ISO镜像的图文安装过程。
BIOS设置
提前在BIOS开启以下设置
开启VT-d --必须开启,英特尔叫vt-d,AMD叫iommu- 开启SRIOV --如有
- 开启Above 4G --如有
- 关闭安全启动 --在security菜单 secure boot 改disabled
推荐使用UEFI引导启动
PVE烧录U盘
提前把balenaEtcher烧录工具和定制版的PVE镜像下载好,用balenaEtcher烧录工具将镜像写入U盘或者移动硬盘,然后插到主机进行PVE的安装。
PVE图形安装
将U盘或者移动硬盘接入主机引导启动到PVE安装界面,采用第一种图形化界面Install Proxmox VE (Graphical)进行安装。PVE图形界面手动分区安装示意图:
如果遇到第一种图形界面安装不成功,出现白屏黑屏或者没法继续的时候,更推荐采用第二种终端化界面Install Proxmox VE (Terminal UI)进行安装。PVE终端化界面手动安装示意图:
PVE初始化设置
安装完成PVE后,在浏览器输入https://你的PVE管理IP:8006来访问你的PVE管理后台了
登录进来后需要对PVE进行一些初始化设置,打开PVE Shell执行脚本①(PVE需要能访问外网,不然无法继续)脚本执行完会对PVE进行自动重启一次。
二、部署NVIDIA vGPU
安装vGPU驱动
1)打开PVE Shell执行脚本②一键安装NVIDIA vGPU Host驱动(16|17|18|19)和vGPU Unlock-rs服务
2)选择自己要安装的版本,PVE9推荐安装vGPU19,PVE8推荐安装vGPU17。
3)重启完成后查看相关服务状态是否正常
# 查看相关服务状态
systemctl status {nvidia-vgpud.service,nvidia-vgpu-mgr.service}
# 重新启动相关服务
systemctl restart {nvidia-vgpud.service,nvidia-vgpu-mgr.service}
# 停止相关服务
systemctl stop {nvidia-vgpud.service,nvidia-vgpu-mgr.service}正常运转没有错误说明服务正常以下为输出日志:
root@pve9:~# systemctl status {nvidia-vgpud.service,nvidia-vgpu-mgr.service}
○ nvidia-vgpud.service - NVIDIA vGPU Daemon
Loaded: loaded (/usr/lib/systemd/system/nvidia-vgpud.service; enabled; preset: enabled)
Drop-In: /etc/systemd/system/nvidia-vgpud.service.d
└─vgpu_unlock.conf
Active: inactive (dead) since Wed 2025-08-27 20:06:00 CST; 3h 46min ago
Invocation: a74e7620de244604b92a71531071bccb
Process: 984 ExecStart=/usr/bin/nvidia-vgpud (code=exited, status=0/SUCCESS)
Main PID: 984 (code=exited, status=0/SUCCESS)
Mem peak: 7.6M
CPU: 634ms
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Encoder Capacity: 0x64
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: BAR1 Length: 0x100
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Frame Rate Limiter enabled: 0x1
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Number of Displays: 4
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Max pixels: 16384000
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Display: width 5120, height 2880
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: Multi-vGPU Exclusive supported: 0x1
Aug 27 20:06:00 pve9 nvidia-vgpud[984]: License: GRID-Virtual-PC,2.0;Quadro-Virtual-DWS,5.0;GRID-Virtual-WS,2.0;GRID-Virtual-WS-Ext,2.0
Aug 27 20:06:00 pve9 systemd[1]: nvidia-vgpud.service: Deactivated successfully.
Aug 27 20:06:00 pve9 systemd[1]: Finished nvidia-vgpud.service - NVIDIA vGPU Daemon.
● nvidia-vgpu-mgr.service - NVIDIA vGPU Manager Daemon
Loaded: loaded (/usr/lib/systemd/system/nvidia-vgpu-mgr.service; enabled; preset: enabled)
Drop-In: /etc/systemd/system/nvidia-vgpu-mgr.service.d
└─vgpu_unlock.conf
Active: active (running) since Wed 2025-08-27 20:06:00 CST; 3h 46min ago
Invocation: f323e4299db44e0e9077dbaa55110d14
Process: 1200 ExecStart=/usr/bin/nvidia-vgpu-mgr (code=exited, status=0/SUCCESS)
Main PID: 1208 (nvidia-vgpu-mgr)
Tasks: 6 (limit: 38267)
Memory: 37.9M (peak: 78.3M)
CPU: 7.743s
CGroup: /system.slice/nvidia-vgpu-mgr.service
├─1208 /usr/bin/nvidia-vgpu-mgr
└─1574 vgpu
随后使用nvidia-smi以下为输出日志:
root@pve9:~# nvidia-smi
Wed Aug 27 23:54:38 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.65.05 Driver Version: 580.65.05 CUDA Version: N/A |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA P106-100 On | 00000000:08:00.0 Off | N/A |
| 23% 46C P8 7W / 120W | 1041MiB / 6144MiB | 1% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 1574 C+G vgpu 1012MiB |
+-----------------------------------------------------------------------------------------+
root@pve9:~# nvidia-smi vgpu
Wed Aug 27 23:54:44 2025
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 580.65.05 Driver Version: 580.65.05 |
|---------------------------------+------------------------------+------------+
| GPU Name | Bus-Id | GPU-Util |
| vGPU ID Name | VM ID VM Name | vGPU-Util |
|=================================+==============================+============|
| 0 NVIDIA P106-100 | 00000000:08:00.0 | 0% |
| 3251634191 GRID T4-1Q | dd02... Windows10-22H2,d... | 0% |
+---------------------------------+------------------------------+------------+以及mdevctl types查看以下为输出日志:
root@pve9:~# mdevctl types
0000:08:00.0
nvidia-222
Available instances: 15
Device API: vfio-pci
Name: GRID T4-1B
Description: num_heads=4, frl_config=45, framebuffer=1024M, max_resolution=5120x2880, max_instance=16
nvidia-223
Available instances: 0
Device API: vfio-pci
Name: GRID T4-2B
Description: num_heads=4, frl_config=45, framebuffer=2048M, max_resolution=5120x2880, max_instance=8
nvidia-224
Available instances: 0
Device API: vfio-pci
Name: GRID T4-2B4
Description: num_heads=4, frl_config=45, framebuffer=2048M, max_resolution=5120x2880, max_instance=8
nvidia-225
Available instances: 15
Device API: vfio-pci
Name: GRID T4-1A
Description: num_heads=1, frl_config=60, framebuffer=1024M, max_resolution=1280x1024, max_instance=16
nvidia-226
Available instances: 0
Device API: vfio-pci
Name: GRID T4-2A
Description: num_heads=1, frl_config=60, framebuffer=2048M, max_resolution=1280x1024, max_instance=8
nvidia-227
Available instances: 0
Device API: vfio-pci
Name: GRID T4-4A
Description: num_heads=1, frl_config=60, framebuffer=4096M, max_resolution=1280x1024, max_instance=4
nvidia-228
Available instances: 0
Device API: vfio-pci
Name: GRID T4-8A
Description: num_heads=1, frl_config=60, framebuffer=8192M, max_resolution=1280x1024, max_instance=2
nvidia-229
Available instances: 0
Device API: vfio-pci
Name: GRID T4-16A
Description: num_heads=1, frl_config=60, framebuffer=16384M, max_resolution=1280x1024, max_instance=1
nvidia-230
Available instances: 15
Device API: vfio-pci
Name: GRID T4-1Q
Description: num_heads=4, frl_config=60, framebuffer=1024M, max_resolution=5120x2880, max_instance=16Ampere架构显卡开启vGPU
Ampere架构的显卡在PVE安装好vGPU HOST驱动后,还需要开启VF才能使用vGPU,开启VF前你需要在BIOS打开SR-IOV功能。(用的不是Ampere架构以上的显卡请跳过这部分@零帧起手)
在PVE Shell 新建一个Systemd自启动服务,开机自启动VF
cat > /etc/systemd/system/nvidia-sriov.service <<EOF
[Unit]
Description=Enable NVIDIA SR-IOV
After=network.target nvidia-vgpud.service nvidia-vgpu-mgr.service
Before=pve-guests.service
[Service]
Type=oneshot
ExecStartPre=/bin/sleep 5
ExecStart=/usr/lib/nvidia/sriov-manage -e ALL
[Install]
WantedBy=multi-user.target
EOF打开VF后,就可以选Mdev类型开启vGPU给虚拟机了。
# 重新加载服务
systemctl daemon-reload
# 设置nvidia-sriov.service,开机自启动
systemctl enable nvidia-sriov.service
# 启动VF
systemctl restart nvidia-sriov.service像RTX A5000/A6000这类带显示接口的显卡,还需要切换到无显示模式才能用vGPU,先切换好无显示模式再来安装驱动顺序不能乱。
# 先下载displaymodeselector工具上传到PVE根目录
https://share.feijipan.com/s/zOZHGpgP
# 授权可执行文件
chmod +x displaymodeselector
# 切换无显示模式,跟着提示步骤进行关闭
./displaymodeselector --gpumode
# 重启PVE后生效
reboot
创建vGPU资源映射
如果机器的PCI设备列表有很多,或者设备里存在多张显卡又或者在用Ampere架构及以上的显卡采用的是SR-IOV拆分,会多出很多个VF设备。直接从原始设备中添加vGPU的时候很难查找。
这时就可以来创建PCI设备的资源映射,这样在添加vGPU设备时能更快的选择到我们vGPU设备。A5000采用SR-IOV拆分,会多出很多个VF设备,只需要全部勾选
非SR-IOV拆分的显卡,则勾选显卡本身单独创建即可。多张卡就创建多个资源映射
添加PCI设备时,在映射的设备列表就能找到我们需要的vGPU设备。
三、搭建fastapi-dls授权服务
NVIDIA vGPU并非免费产品,需要对vGPU驱动购买许可才能正常使用vGPU,这里我用的是技术社区fastapi-dls项目来取得90天的试用许可。我这里提供一个PVE的LXC容器,使用docker服务部署的fastapi-dls授权。
LXC容器信息:
NVIDIA vGPU 驱动授权服务器(90天授权期,客户端在每13天12点续订1次许可证,授权服务需要保持运行才能自动续期)
FASTAPI-DLS 版本:2.0.2
CT容器IP:10.10.10.99
登录LXC账号:root
登录LXC密码:123123
1)将下载下来的LXC容器还原包vzdump-lxc-999-2025_07_31-19_21_51.tar.zst上传到PVE的/var/lib/vz/dump/路径下。然后进行还原
2)并将原来的IP改为自己局域网的IP,这里我用10.10.10.251。
3)开机并登录LXC容器(账号:root密码:123123)并创建fastapi-dls授权服务。注意下边的IP10.10.10.251改为自己的IP。
docker run --restart always --name fastapi-dls -d -e DLS_URL=10.10.10.251 -e DLS_PORT=443 -p 443:443 makedie/fastapi-dls:2.0.2
# 检查fastapi-dls容器是否正在运行
docker ps
四、PVE去虚拟化
做完以上vGPU部分,就可以给PVE安装去虚拟化模拟物理机QEMU-KVM包安装了。因为市面上大部分端游都不允许在虚拟机进行游戏有反作弊检测,单机3A游戏除外。如你有在虚拟机玩端游的需求,则还需要对虚拟机做以下去虚拟化动作。PVE去虚拟化模拟真实物理机器项目用的是github上的lixiaoliu666的pve-anti-detection
安装去虚拟化QEMU-KVM
正因为有些游戏除了会检测“虚拟机特征”外还会去检测“没有物理机特征”来判断你的设备是否符合他们的要求,才能让你进游戏。该项目作者新加入了物理机特征比如风扇,温度,电池,电压等等的物理机特征。让虚拟机更像是一台物理机。步骤:PVE Shell → 脚本③ → 安装
五、创建虚拟机(Win11)
创建虚拟机
PVE的去虚拟化装好后,最后我们来安装一个虚拟机。把Win11镜像上传到PVE。然后在PVE上创建一个Win11虚拟机(24h2)实例
创建好后PVE就会生成一个ID为100的Win11虚拟机
打开PVE Shell 执行脚本④给虚拟机做去虚拟化和定制硬件信息
安装虚拟机
启动虚拟机,开始安装Win11
配置虚拟机
1)开启RDP远程桌面
在系统设置开启RDP远程桌面
2)允许RDP显卡加速
RDP 支持无显卡运行,在远程桌面的时候默认是不调用显卡,可以开启它,让它支持显卡加速。
首先打开虚拟机上的组策略gpedit.msc,依次找到计算机配置->管理模板->Windows组件->远程桌面服务->远程桌面会话主机->远程会话环境在右边选择将硬件图形适配器应用于所有远程桌面服务会话 右键编辑,选择已启用,确定保存。
3)解除RDP 30帧限制
RDP 默认的帧率限制在30帧,可以设置为60帧传输。
在注册表打开该路径 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations
在空白处右键->新建->DWORD(32位)值,命名为DWMFRAMEINTERVAL,双击刚添加的这一项,基数选择为十进制,数值数据填写15,确定保存重启生效。
4)关闭防火墙
关闭Windows防火墙,或者放行3389远程桌面端口
5)关闭睡眠/屏幕
在系统设置中,把屏幕超时改为从不
配置vGPU
1)添加vGPU设备
PCI设备:选nvidia显卡(勾选ROM-Bar和PCIE在Mdev类型中选择vgpu设备230)
音频设备:ich9-intel-hda/后端驱动器:无(不添加的话,串流玩游戏时是没有声音的)
其中 GRID T4-1Q (nvidia-230) 是 mdev 的名字,GRID T4--显卡名,1--1G 显存,Q 代表 vWS,nvidia-230 代表ID关于最后一位字母,如下:
Q:为需要Quadro技术的性能和功能的创意和技术专业人员提供的虚拟工作站 - CUDA OpenGL
C:计算密集型服务器工作负载,如人工智能、深度学习或高性能计算。- CUDA Only
B:为业务专业人员和知识工作者提供的虚拟桌面 - 45FPS MAX
A:为虚拟应用的用户,提供应用流或基于会话的解决方案 - Good for RDSH
3D渲染,游戏,AI运算,请选择Q系列型号即可。2)安装Guest驱动
从vGPU 18.x开始,NVIDIA技术团队添加了 NLS ROOT CA 证书验证来保护vGPU授权数据,所以要想正常使用GRID显卡驱动还得想办法把驱动证书强校验给破解。以下是在网上找到的破解方法patched-nvidia-grid-drivers,通过
FastAPI-DLS搭配patched-nvidia-grid-driver来跳过证书检查。将GRID驱动和nvxdapix.dll补丁复制到虚拟机
# Windows GRID驱动程序
580.88_grid_win10_win11_server2022_dch_64bit_international.exe
# vGPU19.0的nvxdapix.dll补丁用于修补WIN GRID驱动程序
https://github.com/rbqvq/patched-nvidia-grid-drivers/blob/master/patched/19.0/nvxdapix.dll
双击打开GRID驱动程序,等待程序解压完成,并前往程序解压好的路径
将下载下来的nvxdapix.dll补丁替换到Display.Driver文件夹下,然后开始安装GRID驱动程序
安装GRID驱动选择精简安装,遇到Windows安全中心的弹窗选择始终安装此驱动程序软件即可。
3)授权GRID驱动
在浏览器访问fastapi-dls授权服务:https://10.10.10.251/-/client-token会自动下载好授权文件
将文件放入C:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken\这个目录下
3) 重启NVIDIA Display Container Ls服务,即可获得授权
授权失败怎么办? ① 需要检查虚拟机的时间是否对得上授权服务器时间;② fastapi-dls授权服务是否为2.X版本,vGPU18.x后版本必须升级到2.X版本;
4)通过远程桌面工具连接虚拟机跑个鲁大师测试一下显卡是否正常工作
想解除60帧?
编辑
nano /etc/vgpu_unlock/profile_override.toml文件,加入以下信息关闭虚拟机重新开机生效。[profile.nvidia-230]
cuda_enabled = 1
frl_enabled = 0
vgpu_type = "NVS"参数说明:
[profile.nvidia-230]nvidia-230 为vgpu型号的参数。如选的不是230则改成自己选的那个型号。
cuda_enabled = 1是否开启cuda
frl_enabled = 0 是否限制帧数,0为不限制
vgpu_type = "NVS" 修复Q系列OpenGL性能异常问题
六、配置串流玩游戏
最后就是把要玩的游戏安装到虚拟机
玩游戏推荐使用串流协议,可以使用sunshine串流配合moonlight客户端进行游玩。当然你如果是想多开挂机游戏,可以用一些同步专家,RDP,VNC,ToDesk,Rustdesk,连连控等投屏软件就行。
注意:由于Web端虚拟机的VNC显示窗口是不会调用vGPU的,开启了这个VNC显示窗口相当于开启了一个虚拟显示器。这就导致一些游戏和远程软件不能正常调用到vGPU。所以我们在配置好虚拟机/配置好远程后,就可以把这个VNC窗口关闭掉。

如何关闭VNC窗口?选中要关的虚拟机→硬件→显示改成"无"关闭后控制台的显示将会关闭无法显示,请使用远程工具连接虚拟机。
异地串流玩游戏(sunshine串流为例)
既然都在局域网中云端玩游戏了,肯定少不了在异地玩游戏啦~如果你家宽有公网ipv4或者ipv6,就可以在异地玩云游戏了。
需要先在Sunshine串流后台开启公网访问的设置
如果你是ipv6,直接用虚拟机获取到的ipv6地址在Moonlight直接连接就行

如果你是ipv4,则需要在你的路由器设备做好端口映射并放行
47984-48010端口。以爱快为例:
做好端口映射就可以使用你公网IPv4在Moonlight进行连接了。在用su7车机网络串流到虚拟机打黑神话流畅度还行

七、多开克隆虚拟机
克隆多开
我要开10个英雄联盟窗口,蓝队和红队完成一场5v5对战。开10个窗口就需要启动10个虚拟机,可以在一个虚拟机安装好游戏然后将这个虚拟机作为母机,使用脚本⑦链接克隆方式克隆10个虚拟机,这种链接克隆不占用原始空间,可以节约硬盘资源。
具体能不能跑的动10个窗口,得看物理机性能(CPU,内存,硬盘,网卡,显存)都需要合理分配。克隆出来的这10个虚拟机可以再使用脚本④随机硬件信息刷新一下虚拟机参数进行伪装。让每台虚拟机都是独立信息
同步更新
如果游戏后续需要更新了,可以去更新母盘的游戏数据,然后使用脚本⑧同步母盘数据盘下发给10个子虚拟机。
注意:同步的话,只会去同步名称为ide1的硬盘,所以你的母盘虚拟机的游戏需要安装到这个硬盘下面才能正常下发给子虚拟机。同步会将子虚拟机的ide1硬盘给格式化,所以子虚拟机有重要数据不要放在ide1这个硬盘里,可以放桌面或者C盘这样数据不会丢失。
FAQ问答
一、NVIDIA vGPU部分
Q1: 我的显卡是Tesla P4,安装好了vGPU驱动,在Windows虚拟机看到显卡变成了T4或者RTXA6000
A1: NVIDIA vGPU HOST驱动是做了修补的,所以你看到p4变成P40或者RTXA6000都是正常的并不会影响其性能。当然p4本身就是支持的vGPU卡,在17版本前直接用原生NVIDIA vGPU HOST驱动就行
Q2:我的显卡有6GB显存,选用GRID T4-1Q(nvidia-230)模型,那显示可用数16个,我是不是能开16个?
A2:错的!nvidia-230模型每开一个vgpu会占用1024M显存,6G显存理论就是1G+1G+1G+1G+1G+1G=6个。16是这个230模型最大可用数
Q3:为啥我给虚拟机使用nvidia-230模型后,其他虚拟机想再使用其他模型就不让选择了可用数为0。只能用nvidia-230模型。
A3:对的,默认vGPU是置于相等大小模式,一旦选了这个模型后,所有虚拟机都将采用该模型,你不能一台虚拟机使用nvidia-230模型,另一台虚拟机使用nvidia-231模型。但是从vGPU18版本后NVIDIA开始对老显卡非SRIOV的虚拟化也支持了混合模式即支持不同显存大小。打脸的是我们用的消费卡/非支持的专业卡依旧不能使用官方方法开启混合模式,卡不支持还是得用vGPU Unlock解锁修改。
官方开启GPU混合大小模式
1)使用nvidia-smi -q命令列出所有物理 GPU 的状态,并检查异构时间分片 vGPU 大小是否受支持。当Heterogeneous Time-Slice Sizes项如果是Supported状态,说明你的显卡支持开启混合模式.
...
Attached GPUs : 1
GPU 00000000:41:00.0
...
Heterogeneous Time-Slice Sizes : Supported
...2)使用以下命令开启混合大小模式。将id值改自己显卡获取到的数字
# 开启混合大小模式
nvidia-smi vgpu -i id -shm 1
# 例如:
nvidia-smi vgpu -i 0 -shm 1
# 输出以下信息说明开启成功
Enabled vGPU heterogeneous mode for GPU 00000000:41:00.0使用nvidia-smi -q命令检查 vGPU 异构模式是否已启用,以确认 GPU 现在处于混合大小模式。
...
vGPU Heterogeneous Mode : Enabled
...如要切换回GPU置于相等大小模式,使用-shm 0选项运行此命令即可。
3)因为重启PVE GPU混合大小模式就会失效,所以建立个开机自启Systemd文件,开机自动开启。
cat > /etc/systemd/system/nvidia-vgpu-shm.service <<EOF
[Unit]
Description=NVIDIA vGPU Shared Memory Setup
After=nvidia-vgpu-mgr.service
Wants=nvidia-vgpu-mgr.service
Requires=multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/bin/nvidia-smi vgpu -i 0 -shm 1
RemainAfterExit=yes
StandardOutput=journal
[Install]
WantedBy=multi-user.target
EOF# 重载Systemd服务
systemctl daemon-reload
# 设置nvidia-vgpu-shm.service开机自启
systemctl enable nvidia-vgpu-shm.service
# 启动nvidia-vgpu-shm.service
systemctl start nvidia-vgpu-shm.serviceQ4:我显卡不支持官方方法开启GPU混合大小模式,我要怎么给每台虚拟机分配不同大小的显存?
A4:可以配合vGPU Unlock,通过修改framebuffer、framebuffer_reservation这2个值就能给每台虚拟机自定义显存大小。显存大小不建议低于1GB,低于1GB将无法启用NVENC视频编解码器,虽可改512M,384M,但你的显卡核心性能就在那,拆分的越多性能越弱,与其减小显存多开,不如多买几张卡。
例如:我要使用nvidia-230模型给101虚拟机分配4G显存,102虚拟机分配2G显存,那么我就这样写即可
nano命令编辑nano /etc/vgpu_unlock/profile_override.toml
# 自定义nvidia-230模型
[profile.nvidia-230]
# 启用cuda支持
cuda_enabled = 1
# 解除帧率限制
frl_enabled = 0
# 修复Q系列OpenGL异常问题
vgpu_type = "NVS"
# 配置1GB显存的值
framebuffer = 939524096
framebuffer_reservation = 134217728
[vm.101]
# 给101虚拟机设置4G显存
framebuffer = 3959422976
framebuffer_reservation = 335544320
[vm.102]
# 给102虚拟机设置2G显存
framebuffer = 1946157056
framebuffer_reservation = 201326592Q5:我的显卡明明有6GB显存,用1GB显存的nvidia-230模型开了6台虚拟机,启动到第6台虚拟机发现无法启动是怎么回事?
A5:总显存值剩余不足1GB,所以到第6台时就没法启动了,可以执行nvidia-smi查看剩余显存,通过改小第6台虚拟机显存大小再启动即可,或者把nvidia-230模型整体显存改小
以下是些换算好的显存值,有需要可以替换到profile_override.toml文件
# 设置384M显存
framebuffer = 318767104
framebuffer_reservation = 83886080
# 设置512M显存
framebuffer = 436207616
framebuffer_reservation = 100663296
# 设置896M显存
framebuffer = 822083584
framebuffer_reservation = 117440512
# 设置1GB显存
framebuffer = 939524096
framebuffer_reservation = 134217728
# 设置2GB显存
framebuffer = 1946157056
framebuffer_reservation = 201326592
# 设置3GB显存
framebuffer = 2952790016
framebuffer_reservation = 268435456
# 设置4GB显存
framebuffer = 3959422976
framebuffer_reservation = 335544320
# 设置5GB显存
framebuffer = 4966055936
framebuffer_reservation = 402653184
# 设置6GB显存
framebuffer = 5972688896
framebuffer_reservation = 469762048
# 设置8GB显存
framebuffer = 7985954816
framebuffer_reservation = 603979776
# 设置10GB显存
framebuffer = 9999220736
framebuffer_reservation = 738197504
# 设置12GB显存
framebuffer = 12012486656
framebuffer_reservation = 872415232
# 设置16GB显存
framebuffer = 16039018496
framebuffer_reservation = 1140850688
# 设置20GB显存
framebuffer = 20065550336
framebuffer_reservation = 1409286144
# 设置24GB显存
framebuffer = 24092082176
framebuffer_reservation = 1677721600
# 设置32GB显存
framebuffer = 32145145856
framebuffer_reservation = 2214592512
# 设置48GB显存
framebuffer = 48001712128
framebuffer_reservation = 3537895424Q6:我已经用FASTAPI-DLS生成的授权文件给虚拟机NVIDIA GRID驱动成功授权了,这个有数量限制吗?
A6:目前暂未遇到数量上限,FASTAPI-DLS 授权服务器只要一直开着,GRID驱动就能长期正常使用。如遇到授权失败,需要检查虚拟机的时间是否与授权服务器一致,必须一致才能取得授权。
Q7:你的显卡驱动程序已过期,不符合运行《暗黑破坏神IV》的最低要求。请更新驱动程序并重试。当前版本:551.61,最低要求版本:552.74
A7:游戏需要较新的驱动才能游戏,可以尝试直接在虚拟机安装552.74的驱动,如果安装了新的Guest驱动报43代码错误,则你还需要升级PVE宿主机的vGPU Host驱动。升级宿主机vGPU驱动前记得先卸载驱动再安装
Q8:为啥我在PVE网页虚拟机控制台里打完显卡驱动后,就不能操作了呢?
A8:请配置好远程桌面或者安装第三方远程工具,确认能通过远程连上虚拟机再来安装显卡驱动,如果你没配置就安装了显卡驱动,则需要先删除显卡设备,配置好远程再添加上显卡设备。因为你一旦安装好显卡驱动后系统就会呈现双显示器状态,这样就会导致PVE网页虚拟机控制台黑屏,或者是副屏状态,使得无法操作虚拟机。这里推荐把PVE控制台窗口显示给关闭,即在【虚拟机→硬件→显示】改成“无”,只保留vGPU一个显示器,通过远程操作虚拟机。
如果你要在PVE控制台操作虚拟机,不想借助外部的远程工具,可以用ToDesk远程到虚拟机,把显示屏设置改为仅控制台窗口显示,这样PVE的Web显示就能操作了。(注意:PVE控制台的窗口是独立的虚拟显卡并不调用vGPU;UEFI安装的虚拟机修改PVE的Web窗口分辨率需要在虚拟机BIOS修改,SeaBIOS安装的虚拟机在系统显示设置进行修改分辨率)
UEFI虚拟机修改PVE Web窗口分辨率操作步骤:虚拟机开机按esc键进入BIOS → Device Manager → OVMF Platform Configuration
Q9:我用的是CMP系列的30HX/40HX/50HX的挖矿卡,为啥一切都正常,虚拟机就是无法启动。
A9:CMP系列的挖矿卡寄存器BAR1只有64MB,要启用vGPU实例默认需要256MB,需要将vGPU配置信息重写。将换算好的64M的bar1值,写入profile_override.toml文件
1)使用命令lspci -v -s 硬件ID查看自己显卡bar1大小,如30hx:
2)nano命令编辑nano /etc/vgpu_unlock/profile_override.toml
# 配置nvidia-230重写文件
[profile.nvidia-230]
# 将bar1_length参数调整为64MB
bar1_length = 0x40
二、虚拟机部分
Q1:我虚拟机分配的内存给多少pve就占用多少,且在pve控制台不能操作关机和不显示IP是怎么回事?

A1:VMware平台有VMwareTools,KVM平台有qemu-guest-agent。PVE下给虚拟机安装qemu-guest-agent可解决虚拟机无法关机和内存不同步IP不显示等问题。在PVE先给虚拟机开启qemu-guest-agent再安装qemu-guest-agent
Windows虚拟机为例
访问网站 Virtio驱动下载页 下载 Virtio 驱动,例如 virtio-win-0.1.240.iso,上传到虚拟机。加载镜像文件后安装 virtio-win-gt-x64.msi和virtio-win-guest-tools.exe,然后重启系统。
Q2:我的虚拟机运行的多了,虚拟机变卡了怎么办?
A2:既要马儿跑,又要马儿不吃草的道理,机器做了虚拟化,CPU,硬盘,网卡等硬件都得依靠处理器去协调,所以结合自己硬件合理分配资源;
1)CPU:玩竞技类/模拟类/策略类游戏请选用单核性能强的处理器;3A大型游戏请给多一点线程和内存;
2)硬盘:硬盘IO读写越快虚拟机越流畅,不要把所有虚拟机都跑在一个硬盘那样IO读写会爆炸,推荐2-3个虚拟机一个硬盘,强烈推荐用nvme硬盘,10块机械硬盘组的raid0都不如一块nvme来的实际;
3) 网卡:3-5个虚拟机千兆物理网卡足矣,其他的建议升级万兆网卡;
4) GPU:当把帧率限制解除后,GPU分配给1台虚拟机时那么这台虚拟机能获得GPU100%性能,分配2台则50%性能,3台则33.3%性能;要想稳定多开推荐将帧率锁在60帧,这样虚拟机之间都限制在60帧不会争抢资源。
Q3:我想在机器上开10个《英雄联盟》需要怎样的配置?
A3:《英雄联盟》的硬件配置要求相对较低,以下是官方推荐的 60 FPS配置:
- 操作系统:Windows 10/11(64位)
- 处理器:Intel Core i5-3300 / AMD Ryzen 3 1200
- 内存:8GB
- 显卡:NVIDIA GeForce GTX 960 / AMD Radeon R9 280 / Intel UHD 630
- 存储空间:40GB 可用空间
- 分辨率:1920x1080
那么创建一台Win虚拟机配置如下: - 操作系统:Windows10 x64
- vCPU:分配4个线程
- vRAM:分配8GB内存
- vROM:分配100GB存储,系统+游戏够用了
- vGPU:分配1GB显存,这游戏不怎么吃GPU
那么10开硬件选配如下: - 处理器:E5-2690 v3/E5-2690 v4 (20核心40线程)
- 内存:96G
- 显卡:GeForce GTX 1080 Ti 11G / Tesla P100 16G
- 硬盘:4张256G或者2张512GB Nvme高速盘;每张放2-3个虚拟机
- 网卡:万兆网卡 英特尔X520/X540
三、去虚拟化部分
Q1:去除虚拟化后能玩哪类游戏?有封号风险吗?
A1:理论可以过市面上90%的游戏,目前腾讯(ACE),战眼(BattlEye)这类反作弊检测过不掉;封号因素很多,系统环境,科技辅助,IP关联等等都有可能触发运营商封号机制,自行承担风险。已测可玩游戏:暗黑破坏神IV,王权与自由,原神,最终幻想,FC24/25,MIR4,WeGame英雄联盟,神泣5区,大话西游,梦幻西游
Q2:如果要恢复官方包只需要运行下面两个命令就能恢复官方包
A2:在PVE Shell执行即可
apt reinstall pve-qemu-kvm
apt reinstall pve-edk2-firmware-ovmf
16 条评论
博主,我购买了,但是管理菜单和你现在的不一样,能更新吗?
只更新了ISO版本,可以使用ISO版本先,预装版还没更。过些天更新9.1,一起更新上去
那我还要重新下载,还是重新购买啊
重新下,9.1已经更新了
博主,什么时候出 安卓13的模拟器系统啊,现在很多云手机都收费,太贵了,我们有技术了,想自己模拟手机挂机玩游戏.
有Docker Android的项目:https://github.com/budtmo/docker-android
博主,什么时候出 安卓13的模拟器系统啊,现在很多云手机都收费,太贵了,我们有技术了,想自己模拟手机挂机玩游戏.
大佬你好,我买了预封装的包,但是用X99的主板试了好几台都没办法识别P100显卡,用带核显的I9就可以识别显卡,4G VT-D之类都开启了,还有可能是什么原因呢?
p106下的vgpu可以用nvenc吗?
跟着教程试了下,sunshine找不到编码器
Error: NvEnc: NvEncOpenEncodeSessionEx() failed: NV_ENC_ERR_NO_ENCODE_DEVICE
这卡阉割了编解码器
笔记本是MX550显卡,支持VGPU吗?
列表没找到就不支持
博主设置3GB显存的第一段好像错了,已验证的值如下
设置3GB显存framebuffer = 2952790016
framebuffer_reservation = 268435456
真细心
能出个9.0去虚拟化教程吗、谢谢
折腾了一下搞定了