作者:zzzfi
1. 前言
前面写的折腾日记系列随心所欲的写了写,都只涉及了想法和思路。没有基础的人可能很难get到我说的点,也没办法参照着使用起来。因此想另外写一个Step By Step系列,基本遵循可操作的原则。
因为不是软路由的专家,所以此系列也不敢称为教程,只做是经验分享。
废话说完了,这篇主要是介绍一下N5095在PVE上如何进行核显直通,并进行硬件解码。
2. PVE核显直通配置
2.1 更改grub
修改/etc/default/grub文件,在GRUB_CMDLINE_LINUX_DEFAULT中增加下面的参数:
Intel_iommu=on video=efifb:off
2.2 更新grub
执行 update-grub命令,可以看到下面的信息。
2.3 配置开机加载vfio模块
编辑/etc/modules,写入下面的模块名
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
2.4 配置禁止加载显卡驱动
编辑/etc/modprobe.d/pve-blacklist.conf文件,增加下面的内容
blacklist i915
2.5 更新initrd
执行update-initramfs -u命令
2.6 重启PVE
3. 创建虚拟机
这里以创建Archlinux为例说明(5.15左右的版本内核存在一个bug会导致核显无法使用,每个发行版的内核版本的差异还是有一些的,可能在其他版本的内核上也会遇到这个bug)
3.1 下载archlinux虚拟机的镜像
从arch官方下载了镜像,地址如下:
https://gitlab.archlinux.org/archlinux/arch-boxes/-/jobs/63736/artifacts/browse/output
选择basic就好了。
3.2 把镜像拷贝到PVE中
命令可以参考下面的,其中192.168.50.3是我的PVE地址
scp Arch-Linux-x86_64-basic-20220528.58196.qcow2 [email protected]:/root/
3.3 创建虚拟机
在PVE中创建一个新的虚拟机,不需要带磁盘,相关配置如下
cpu按需求选择就好了。习惯性的选上了aes,默认应该也会启用
memory按需选择就好了。我喜欢把balloon去掉。
network 也是按需选择
一个不带磁盘的虚拟机就创建好了。
3.4 导入磁盘
把之前下载的archlinux的镜像导入到虚拟机中。看一下上一步创建的虚拟机id,和需要使用的存储。这里虚拟机id为103,存储为local-lvm
执行下面的命令导入磁盘
qm importdisk 103 Arch-Linux-x86_64-basic-20220528.58196.qcow2 local-lvm
三个参数分别是 虚拟机id,下载的镜像名,导入的存储名
3.5 启用导入的磁盘
3.6 设置从导入的磁盘启动
钩上,再拖动到第一个
3.7 添加核显
这里是00:02.0。如果跟我设备不一样的话,需要执行命令查看一下 lspci | grep VGA
3.8 启动虚拟机
不出意外的话,就可以进来了。外面已经配置完成了,到里面了。用户名:arch 密码:arch
3.9 进入虚拟机
查看一下ip,并开启sshd服务,命令如下(通过ssh连进去可以拷贝)。
ip a
sudo systemctl start sshd
上面在启动sshd服务的时候太慢了,我停了重启了一次,直接等也是可以的。
不出意外的话,就已经可以看到显卡的节点了。
3.10 设置软件源
切换到root用户,设置ustc源。顺便把vim也装上。命令如下(注意:下面两个$前面都需要一个反斜杠,这里没办法打出来)
sudo su
echo "Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch"
如若转载,请注明出处:https://www.ozabc.com/it/529008.html