PVE安装Win10并直通显卡(独显)

注:pve的安装过程省略

博主的主机配置如下:

处理器 i3-10100T(带核显)
内存 16G
显卡 NVIDIA GeGorce GT 730(1GB)

准备

  • 下载相关镜像
    • cn_windows_10_enterprise_ltsc_2019_x64_dvd_9c09ff24.iso
    • virtio-win-0.1.208.iso
  • 上传至PVE中的local -> ISO镜像

--2022-02-26-08.53.56

安装过程

  1. 点击创建虚拟机
  2. 一般:输入名称:Win10
  3. 操作系统
    a. ISO镜像:win10的ISO镜像
    b. 访客OS:windows
  4. 系统
    a. 显卡:标准VGA
    b. 机器:q35
    c. qemu代理:开启
    d. BIOS:SeaBios(默认)
  5. 硬盘保持默认IDE硬盘,大小32G
  6. CPU
    a. 核:4
    b. 类别:host
    c. 启用NUMA:开启
  7. 内存:8192
  8. 网络:模型:VirtIO (半虚拟化)
  9. 完成后,在硬件中添加CD/DVD -> 选择virtio-win-0.1.208.iso镜像

接下来就是常规window安装过程,省略,安装后记得打开windows的远程访问功能

驱动安装

Window启动成功后,需要安装相关驱动

安装方式2种

  • 一种是,我的电脑 -> virtio-win的驱动盘 -> 双击virto-win-gt-x64手动安装,一步步下一步即可
  • 另一种方法是,在开始菜单右键 -> 设备管理器 -> 找到有问题的设备 -> 更新驱动程序 -> 手动选择virto-win所有盘根目录即可

最后,都需要手动安装下virto-win/guest-agent/qemu-ga-x86_64,来使PVE的概要信息中展示虚拟机的ip地址

PVE配置

编辑我用的vim,大家可自行选择

  1. 编辑/etc/default/grub,
    a. 修改,开启iommu,这是intel CPU的配置
    GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction nofb textonly nomodeset video=efifb:off"
    b. pve-efiboot-tool refresh
    c. update-grub
    d. reboot重启
    e. 可用dmesg | grep -e DMAR -e IOMMU查看是否开启
  2. 编辑/etc/modules
    a. 添加下面4行内容
    vfio
    vfio_iommu_type1
    vfio_pci
    vfio_virqfd
    
  3. 查看设备信息lspci -nn,找到显卡的设备号,此处博主为以下内容,记住10de:1287及10de:0e0f,屏蔽要用
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK208B [GeForce GT 730] [10de:1287] (rev a1)
    01:00.1 Audio device [0403]: NVIDIA Corporation GK208 HDMI/DP Audio Controller [10de:0e0f] (rev a1)
    
  4. 编辑/etc/modprobe.d/vfio.conf,添加下面内容,其中ids即为上面的设备号
    options vfio-pci ids=10de:1287,10de:0e0f
    
  5. 编辑/etc/modprobe.d/pve-blacklist.conf,添加以下内容,有的版本说是blacklist.conf为了保证生效,可以copy一份pve-blacklist.conf
    blacklist nvidiafb
    blacklist nouveau
    blacklist nvidia
    blacklist radeon
    blacklist amdgpu
    blacklist snd_hda_intel
    blacklist snd_hda_codec_hdmi
    blacklist snd_hda_codec
    blacklist snd_hda_core
    
  6. 执行update-initramfs -k all -u,reboot重启
  7. 执行lspci -v,查看你的显卡设备使用的驱动是否都已被屏蔽,类似:
    Kernel modules: nvidiafb, nouveau
    
  8. 编辑/etc/modprobe.d/kvm.conf(有的文章说不需要,博主添加了),添加,并重启
    options kvm ignore_msrs=1
    

直通

  1. 在PVE虚拟机的硬件中添加PCI设备,选择你的显卡,选中除主显卡外的其他所有选项
  2. 启动虚拟机,并联网自动更新驱动
  3. 关闭虚拟机,并将默认显卡关闭,同时将PCI的显卡设置为主显卡,再次启动虚拟机
  4. 此时直通成功,但只能通过远程访问windows
冀ICP备2022000825号-1

京公网安备 11010802038733号