让你的飞牛NAS一卡多用,虚拟机也能硬解加速
引言
随着Intel 12代处理器(如i5-1235U)的普及,越来越多的NAS用户开始探索其集成显卡的虚拟化潜力。SR-IOV(单根输入/输出虚拟化)技术允许将一张物理显卡分割成多个虚拟功能(VF),分别直通给不同的虚拟机使用,从而实现硬件加速、视频转码、云游戏等场景。
然而,Intel官方并未在Linux主线内核中集成此功能,需要借助社区补丁。本文将以飞牛NAS(fnOS V1.1.26,基于Debian 12) 为例,详细记录从驱动安装到虚拟机配置的全过程,并解决途中遇到的各种“坑”。
⚠️ 重要警告
本方案使用第三方DKMS模块(i915-sriov-dkms),属于实验性功能,可能导致系统不稳定或黑屏。请务必提前备份数据,并在测试环境中验证。
一、准备工作
1.1 硬件与软件要求
CPU:Intel 12代或更新(本文使用i5-1235U,Alder Lake架构)
BIOS设置:开启 Intel VT-d(IOMMU)和 SR-IOV 选项
操作系统:飞牛NAS V1.1.26(底层Debian 12)
内核版本:建议≥6.8(飞牛NAS V1.1.26默认是6.12.18-trim符合要求)
Secure Boot:必须禁用
uname -r
6.12.18-trim
# 确认内核版本 ≥6.8
二、安装i915‑SR‑IOV驱动
飞牛NAS基于Debian,可以直接使用社区DKMS模块。
2.1 安装依赖
sudo apt install -y dkms build-essential git sysfsutils
sudo apt install -y linux-headers-$(uname -r)
2.2 克隆并安装模块
git clone https://github.com/strongtz/i915-sriov-dkms.git
cd i915-sriov-dkms

# 1. 将模块源码添加到 DKMS 系统
sudo dkms add .
# 2. 使用查到的版本号编译模块,注意替换 [版本号] 为实际值
sudo dkms build i915-sriov-dkms/[版本号]
# 3. 安装模块
sudo dkms install i915-sriov-dkms/[版本号]
2.3 配置内核参数
编辑GRUB配置文件:
sudo nano /etc/default/grub
找到GRUB_CMDLINE_LINUX_DEFAULT=,添加以下参数:
intel_iommu=on iommu=pt i915.enable_guc=3 i915.max_vfs=7 module_blacklist=xe
更新配置:
sudo update-grub
sudo update-initramfs -u -k all
sudo reboot
2.4 启用虚拟功能(VF)
重启后确认VF设备已生成:
lspci | grep VGA
# 输出示例:
# 00:02.0 VGA compatible controller: Intel Corporation Alder Lake-UP3 GT2 [Iris Xe Graphics] (rev 0c) # 物理功能PF
# 00:02.1 VGA compatible controller: Intel Corporation Alder Lake-UP3 GT2 [Iris Xe Graphics] (rev 0c) # 虚拟功能VF1
# ... 最多到00:02.7
自动创建VF:
echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 7" | sudo tee /etc/sysfs.conf
sudo reboot



本文链接:https://www.kinber.cn/post/6458.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝:

支付宝微信扫一扫,打赏作者吧~
