KR-Senna 2025-08-09 23:33 采纳率: 0%
浏览 13

关于pve,win和5880ada,求问题解决方法建议~

硬件环境:
准系统:超微420gp
cpu:8358p
显卡:5880ada 4,40606(虚拟化场景显卡直通+dp/hdmi欺骗器)
软件环境:
底层pve7.1.4
虚拟机win-10-64-20h2
现阶段问题在于4060所在虚拟机一切都正常,5880ada所在的4个虚拟机无法正常使用,对应的nvidia驱动换了又换,

img


显卡模式已经换为显示模式而不是计算模式
有没有对这几个方面都比较熟悉的朋友希望探讨一下
(已经试过pve8.4可以正常运行,但是由于特殊原因需要在7.1.4跑通这一切)

  • 写回答

4条回答 默认 最新

  • 檀越@新空间 2025-08-09 23:34
    关注

    晚上好🌙🌙🌙
    本答案参考通义千问

    根据你提供的硬件和软件环境,以及当前遇到的问题(5880ada 显卡在 PVE 7.1.4 中无法正常运行),我们可以从以下几个方面进行排查与解决:


    一、问题分析

    1. 硬件兼容性

    • 显卡型号:NVIDIA GeForce GTX 5880 Ada
      这是 NVIDIA 的旧一代显卡,驱动支持有限。PVE 7.1.4 使用的是较老的内核(Linux 5.x)和 NVIDIA 驱动版本(如 450 或 460),可能对 5880 Ada 不友好。

    • 虚拟化方式:
      你使用的是 GPU 直通 + DP/HDMI 欺骗器,这需要确保:

      • 显卡已正确直通到虚拟机;
      • 虚拟机中安装了正确的 NVIDIA 驱动;
      • 显示输出能被欺骗器识别并传递给主机显示器。

    二、解决方案建议

    1. 确认 GPU 是否成功直通

    步骤:

    1. PVE 主机终端 执行以下命令查看 GPU 是否被识别:

      lspci | grep -i nvidia
      

      应看到类似如下输出:

      03:00.0 VGA compatible controller: NVIDIA Corporation GT200 [GeForce GTX 580] (rev a1)
      
    2. 查看是否启用了 vfio-pci 模块:

      lsmod | grep vfio
      

      如果没有,需加载模块:

      modprobe vfio_pci
      
    3. PVE 的 Web 界面 中,确认该 GPU 已被分配给对应的虚拟机,并且状态为 "Assigned"

    注意: 5880 Ada 是一个“显示”卡(非计算卡),因此不能使用 nvidia-cuda-toolkit,只能使用标准的 nvidia-driver


    2. 安装合适的 NVIDIA 驱动

    步骤:

    1. 在虚拟机中安装 NVIDIA 驱动,推荐使用 NVIDIA 450 版本,这是 PVE 7.1.4 支持的最新稳定版本之一。

    2. 下载驱动包(以 .run 文件形式):

    3. 在虚拟机中执行以下命令安装:

      chmod +x NVIDIA-Linux-x86_64-450.80.02.run
      ./NVIDIA-Linux-x86_64-450.80.02.run
      
    4. 安装完成后重启虚拟机。


    3. 检查显卡模式是否为“显示模式”

    步骤:

    1. 在虚拟机中执行以下命令检查显卡是否处于“显示模式”:

      nvidia-smi -q -d SUPPORTED_MODULES
      

      输出应包含:

      Supported Modules:
          Display
      
    2. 如果只显示 Compute,说明驱动未正确安装或显卡不支持显示模式。

    注意: 5880 Ada 是一个“显示”显卡,但其驱动可能不完全支持现代系统中的显示输出功能,尤其是通过虚拟机直通时。


    4. 使用 HDMI/DVI 欺骗器配置

    步骤:

    1. 确保欺骗器设置为 DP/HDMI 模式,并连接到主机显示器。
    2. 在虚拟机中安装 DisplayLink 驱动(如果欺骗器基于 DisplayLink 芯片)。
    3. 可尝试使用 VirtualBox + USB Passthrough 作为替代方案(虽然性能不如 KVM)。

    5. 替代方案:升级 PVE 到 8.x(若可行)

    虽然你提到“由于特殊原因需要在 7.1.4 上跑通”,但如果可以考虑升级,PVE 8.x 对 NVIDIA 显卡的支持更完善,尤其对新驱动和虚拟化功能有较大改进。

    提示: 升级前请备份数据,建议在测试环境中先行验证。


    三、代码示例:修改 PVE 虚拟机配置文件(可选)

    如果你使用的是 QEMU/KVM 并希望手动配置 GPU 直通,可以在虚拟机的配置文件中添加以下内容:

    # /etc/pve/qemu-server/100.conf
    
    args = "-device vfio-pci,host=03:00.0,bus=pci.0,addr=0x3"
    

    注意: 03:00.0 是你的显卡 PCI 地址,可通过 lspci 获取。


    四、总结

    | 问题点 | 解决方法 | |--------|----------| | 显卡未正确直通 | 检查 lspcivfio-pci 模块 | | 驱动不兼容 | 安装 NVIDIA 450.x 驱动 | | 显示模式未启用 | 检查 nvidia-smi 输出 | | 欺骗器配置错误 | 确保欺骗器为 DP/HDMI 模式 | | 5880 Ada 兼容性差 | 考虑使用更高版本 PVE 或更换显卡 |


    五、最终建议

    • 优先尝试使用 NVIDIA 450.x 驱动,并确保显卡处于“显示模式”;
    • 若仍无法解决问题,建议使用 PVE 8.x,因为其对 NVIDIA 显卡的支持更全面;
    • 如果你坚持使用 PVE 7.1.4,可以考虑 更换显卡(如 GTX 1060 或 RTX 2060),这些显卡在 PVE 7.1.4 中有更好的兼容性和驱动支持。

    如有更多细节(如具体报错信息、驱动日志等),欢迎补充,我可以进一步帮你定位问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月9日