文章目录
- 查看cpu是否支持直通
- 音频
- 笔记本关盖设定
- BIOS设定
- 启动内核IOMMU支持
- 添加驱动黑名单
- 绑定核显到vfio模块
- 然后新建一个虚拟机安装LibreELEC
- 注意事项
- 重启 VM 时 GPU 直通失败
- 如果直通后遇到问题了,开机出现各种问题,进不去系统,或者网页进不去。
- unable to open file '/etc/pve/nodes/willpower/qemu-server/100.conf.tmp.967' - Input/output error (500) 配置不了
pvetool脚本开启直通
pve直通显卡给libreELEC系统
PVE核显直通搭建LibreELEC KODI HTPC实现HDMI输出
查看cpu是否支持直通
在网址https://www.intel.cn/content/www/cn/zh/homepage.html
中搜索cpu类型,看是否符合
可以看到E6410的cpu i5-560M是支持直通的。
音频
笔记本自带音频为ALSA: HDA Intel MID, 92HD81B1C5 Analog
笔记本关盖设定
vi /etc/systemd/logind.conf
将注释
#HandleLidSwitch=suspend
改为
HandleLidSwitch=ignore
然后重启
BIOS设定
开启vt-d以及vt-x,并且把BOIS的fastboot关闭,不然,重启后,不能进入系统。
启动内核IOMMU支持
vi /etc/default/grub
将GRUB_CMDLINE_LINUX_DEFAULT="quiet"改为GRUB_CMDLINE_LINUX_DEFAULT=“quiet intel_iommu=on iommu=pt video=efifb:off,vesafb:off”
ps:如果是amd改为:GRUB_CMDLINE_LINUX_DEFAULT=“quiet amd_iommu=on iommu=pt video=efifb:off,vesafb:off”
其中“iommu=pt”不是必须的,PT模式只在必要的时候开启设备的IOMMU转换,可以提高未直通设备PCIe的性能,建议添加。
更新配置
update-grub
加载硬件直通相关模块
vi /etc/modules
添加
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
添加驱动黑名单
vi /etc/modprobe.d/blacklist.conf
添加
blacklist snd_hda_intel
blacklist snd_soc_skl
blacklist snd_hda_codec_hdmi
blacklist i915
这些是核显相关的驱动,添加到“blacklist.conf”文件后,PVE系统将不加载核显的驱动,留给虚拟机用。
更新配置信息:
update-initramfs -u
绑定核显到vfio模块
查看核显以及声卡的供应商和设备ID:
lspci -n | grep -E “0300|0403”
echo "options vfio-pci ids=8086:3b56,10de:0a6c,10de:0be3" > /etc/modprobe.d/vfio.conf
然后新建一个虚拟机安装LibreELEC
新建操作就不介绍了,下面介绍上传镜像
把镜像转成虚拟磁盘并导入到虚拟机100
qm importdisk 100 /var/lib/vz/template/iso/LibreELEC-Generic-legacy.x86_64-11.0.1.img local-lvm
双击,添加
把其设置为启动项第一个,拖拽即可。
然后启动,进行安装
安装完后,直接点击停止
然后添加显卡
vi /etc/pve/qemu-server/100.conf
添加
args: -device vfio-pci,host=01:00.0,addr=0x02,x-igd-gms=1 vga:none
上面所有操作后,需要添加options vfio_iommu_type1 allow_unsafe_interrupts=1
到 /etc/modprobe.d/vfio.conf文件中
options vfio-pci ids=8086:3b56,10de:0a6c,10de:0be3,10de:0a6c,10de:0be3
options vfio_iommu_type1 allow_unsafe_interrupts=1
验证iommu开启
dmesg | grep iommu
如果出现以下问题,说明options vfio_iommu_type1 allow_unsafe_interrupts=1
没有正确添加。
注意将cpu类型改为q35!!
添加 options 防止 VM 死机
echo “options kvm ignore_msrs=1” >> /etc/modprobe.d/kvm.conf
将硬盘改为启动硬盘,把镜像盘直接分离
开机就ok了
PS:也可以用最上面给出的pvetool工具直接开启
注意事项
libreELEC系统选择有GPU驱动的
重启 VM 时 GPU 直通失败
https://forums.unraid.net/topic/62332-gpu-passthrough-fails-when-rebooting-a-vm-edit-added-call-trace/
如果直通后遇到问题了,开机出现各种问题,进不去系统,或者网页进不去。
尝试在引导菜单(蓝色菜单那里)按下e键,临时修改内核参数
将"quiet intel_iommu=on iommu=pt video=efifb:off,vesafb:off"
中的on全部改为off,禁用直通!,进入后,再修改。
unable to open file ‘/etc/pve/nodes/willpower/qemu-server/100.conf.tmp.967’ - Input/output error (500) 配置不了
重启pve-cluster服务
systemctl restart pve-cluster.service
解锁
qm unlock 100