Nvidia vGPU 18.0以上 GRID或CloudGame驱动Patch许可教程
-
本方法适用于在消费级显卡上开启 vGPU 功能,或使用特定的云游戏 (Cloud Gaming) 驱动。请确保安装好了Host驱动
重要工具和资源
相关驱动下载地址:
https://alist.homelabproject.cc/foxipan/vGPU
vGPU 解锁工具 (vgpu_unlock-rs):
https://github.com/mbilker/vgpu_unlock-rs
DLS补丁工具
https://git.collinwebdesigns.de/vgpu/gridd-unlock-patcher
DLS在线补丁工具
https://patch.jintongshu.com/
FastAPI-DLS
https://git.collinwebdesigns.de/oscar.krause/fastapi-dls
1. 安装FastAPI-DLS
在 Docker 主机上运行以下命令
WORKING_DIR=/opt/docker/fastapi-dls/cert mkdir -p $WORKING_DIR cd $WORKING_DIR # 为内置的 Web 服务器(uvicorn)创建 SSL 证书 —— 因为客户端依赖 SSL openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout $WORKING_DIR/webserver.key -out $WORKING_DIR/webserver.crt
启动容器
要测试是否配置正确,可以通过以下命令启动容器:docker volume create dls-db docker run -e DLS_URL=`hostname -i` -e DLS_PORT=443 -p 443:443 -v $WORKING_DIR:/app/cert -v dls-db:/app/database collinwebdesigns/fastapi-dls:latest
Docker-Compose / 部署堆栈
请根据需要调整以下
REQUIRED
(必填)变量version: '3.9' x-dls-variables: &dls-variables TZ: Europe/Berlin # 必填,请正确设置 fastapi-dls 和客户端的时区 !!! DLS_URL: localhost # 必填,修改为你的 IP 或主机名 DLS_PORT: 443 LEASE_EXPIRE_DAYS: 90 # 最大 90 天 DATABASE: sqlite:////app/database/db.sqlite DEBUG: false services: dls: image: collinwebdesigns/fastapi-dls:latest restart: always environment: <<: *dls-variables ports: - "443:443" volumes: - /opt/docker/fastapi-dls/cert:/app/cert - dls-db:/app/database logging: # 可选,适合不需要日志的用户 driver: "json-file" options: max-file: 5 max-size: 10m volumes: dls-db:
NVIDIA 客户机驱动安装
驱动链接
https://alist.homelabproject.cc/foxipan/vGPU
https://cloud.google.com/compute/docs/gpus/grid-drivers-table?hl=zh-cn
Windows
点击exe安装即可
Linux
前提条件
- 实例运行的是支持 NVIDIA 驱动的操作系统(如 Debian、Ubuntu、CentOS 等)
- 已连接到实例的 SSH 终端
1. 确认 GPU 类型
在 SSH 终端执行:
lspci | grep -i nvidia
如果返回 NVIDIA 设备信息,表示实例已识别 GPU。
2. 更新操作系统
执行系统更新,确保依赖库最新:
sudo apt-get update sudo apt-get upgrade -y
注:针对不同系统,更新命令可能不同。
3. 安装 NVIDIA 驱动
使用安装脚本
curl -O https://storage.googleapis.com/nvidia-drivers-us-public/GRID/vGPU18.1/NVIDIA-Linux-x86_64-570.133.20-grid.run
sh NVIDIA-Linux-x86_64-570.133.20-grid.run
4. 重启实例
安装完成后,重启实例使驱动生效:
sudo reboot
5. 验证驱动安装
重启后,登录实例,执行:
nvidia-smi
如果显示 GPU 信息和驱动版本,说明安装成功。
驱动DLS补丁
补丁程序支持Windows和Linux虚拟机:
对于Windows虚拟机,GRID守护进程是Display.Driver/nvxdapix.dll
对于Linux虚拟机,执行which nvidia-gridd以查找您的GRID守护进程。它可能位于/bin/Linux
查找gridd
which nvidia-gridd
下载根证书
下载FastAPI-DLS根CA从
https://<your-dls-url>/-/config/root-certificate
Patch nvidia-gridd和CA
浏览器打开
https://patch.jintongshu.com/
输入密码
sonvidiafucku
- 复制你的CA证书和上传你下载的文件
- 点击Patch
- 下载好Patch后的文件替换掉原有的文件
windows
打补丁
1. 在 Windows 上查找
nvxdapix.dll
文件路径在 PowerShell(以管理员身份运行) 中执行以下命令:
Get-ChildItem -Path "C:\Windows\System32\DriverStore\FileRepository" -Recurse -Filter "nvxdapix.dll" -ErrorAction SilentlyContinue | Select-Object -First 1
该命令将搜索并返回第一个找到的
nvxdapix.dll
文件路径。Patch nvidia-gridd和CA
浏览器打开
https://patch.jintongshu.com/
输入密码
sonvidiafucku
- 复制你的CA证书和上传你下载的文件
- 点击Patch
- 下载好Patch后的文件替换掉原有的文件
4. 将补丁后的
nvxdapix.dll
文件复制回 Windows 电脑的桌面5. 在 Windows 上运行补丁应用脚本
以 管理员身份 打开 PowerShell,执行以下命令:
powershell.exe -executionpolicy bypass -file "$HOME\Desktop\windows-replace-nvxdapix.ps1"
️ 确保
gridd-apply-patch.ps1
脚本文件已存在于桌面。激活
1. 下载
client-token
并放入/etc/nvidia/ClientConfigToken
目录:你可以使用
curl
命令:curl --insecure -L -X GET https://<dls-主机名或IP地址>/-/client-token -o /etc/nvidia/ClientConfigToken/client_configuration_token_$(date '+%d-%m-%Y-%H-%M-%S').tok
或者使用
wget
命令:wget --no-check-certificate -O /etc/nvidia/ClientConfigToken/client_configuration_token_$(date '+%d-%m-%Y-%H-%M-%S').tok https://<dls-主机名或IP地址>/-/client-token
️ 请将
<dls-主机名或IP地址>
替换为你自己的 DLS 服务器地址。2. 重启
nvidia-gridd
服务:service nvidia-gridd restart
3. 检查授权状态:
nvidia-smi -q | grep "License"
输出应类似于:
vGPU Software Licensed Product License Status : Licensed (Expiry: YYYY-M-DD hh:mm:ss GMT)
完成!
Windows 上的操作步骤(下载授权令牌)
️ 使用 PowerShell(以管理员身份运行)
1. 下载
client-token
并保存到以下目录:C:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken
执行以下 PowerShell 命令:
curl.exe --insecure -L -X GET https://<dls-主机名或IP地址>/-/client-token -o "C:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken\client_configuration_token_$($(Get-Date).tostring('dd-MM-yy-hh-mm-ss')).tok"
请将
<dls-主机名或IP地址>
替换为你实际使用的 DLS 服务器地址。2. 重启
NvContainerLocalSystem
服务:Restart-Service NVDisplay.ContainerLocalSystem
3. 检查授权状态:
& 'nvidia-smi' -q | Select-String "License"
输出应类似如下内容:
vGPU Software Licensed Product License Status : Licensed (Expiry: YYYY-M-DD hh:mm:ss GMT)
完成!