Hi!请登陆

N5095使用经验分享StepByStep(一核显直通jellyfin)

2022-6-26 386 6/26

作者: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

N5095使用经验分享StepByStep(一核显直通jellyfin)

2.2 更新grub

执行 update-grub命令,可以看到下面的信息。

N5095使用经验分享StepByStep(一核显直通jellyfin)

2.3 配置开机加载vfio模块

编辑/etc/modules,写入下面的模块名

vfio

vfio_iommu_type1

vfio_pci

vfio_virqfd

N5095使用经验分享StepByStep(一核显直通jellyfin)

2.4 配置禁止加载显卡驱动

编辑/etc/modprobe.d/pve-blacklist.conf文件,增加下面的内容

blacklist i915

N5095使用经验分享StepByStep(一核显直通jellyfin)

2.5 更新initrd

执行update-initramfs -u命令

N5095使用经验分享StepByStep(一核显直通jellyfin)

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就好了。

N5095使用经验分享StepByStep(一核显直通jellyfin)

3.2 把镜像拷贝到PVE中

命令可以参考下面的,其中192.168.50.3是我的PVE地址

scp Arch-Linux-x86_64-basic-20220528.58196.qcow2 [email protected]:/root/

3.3 创建虚拟机

在PVE中创建一个新的虚拟机,不需要带磁盘,相关配置如下

N5095使用经验分享StepByStep(一核显直通jellyfin)
N5095使用经验分享StepByStep(一核显直通jellyfin)
N5095使用经验分享StepByStep(一核显直通jellyfin)

cpu按需求选择就好了。习惯性的选上了aes,默认应该也会启用

N5095使用经验分享StepByStep(一核显直通jellyfin)

memory按需选择就好了。我喜欢把balloon去掉。

N5095使用经验分享StepByStep(一核显直通jellyfin)

network 也是按需选择

N5095使用经验分享StepByStep(一核显直通jellyfin)

一个不带磁盘的虚拟机就创建好了。

3.4 导入磁盘

把之前下载的archlinux的镜像导入到虚拟机中。看一下上一步创建的虚拟机id,和需要使用的存储。这里虚拟机id为103,存储为local-lvm

N5095使用经验分享StepByStep(一核显直通jellyfin)

执行下面的命令导入磁盘

qm importdisk 103 Arch-Linux-x86_64-basic-20220528.58196.qcow2 local-lvm

三个参数分别是 虚拟机id,下载的镜像名,导入的存储名

N5095使用经验分享StepByStep(一核显直通jellyfin)

3.5 启用导入的磁盘

N5095使用经验分享StepByStep(一核显直通jellyfin)
N5095使用经验分享StepByStep(一核显直通jellyfin)

3.6 设置从导入的磁盘启动

N5095使用经验分享StepByStep(一核显直通jellyfin)

钩上,再拖动到第一个

N5095使用经验分享StepByStep(一核显直通jellyfin)

3.7 添加核显

N5095使用经验分享StepByStep(一核显直通jellyfin)

这里是00:02.0。如果跟我设备不一样的话,需要执行命令查看一下 lspci | grep VGA

N5095使用经验分享StepByStep(一核显直通jellyfin)
N5095使用经验分享StepByStep(一核显直通jellyfin)
N5095使用经验分享StepByStep(一核显直通jellyfin)

3.8 启动虚拟机

不出意外的话,就可以进来了。外面已经配置完成了,到里面了。用户名:arch 密码:arch

N5095使用经验分享StepByStep(一核显直通jellyfin)

3.9 进入虚拟机

查看一下ip,并开启sshd服务,命令如下(通过ssh连进去可以拷贝)。

ip a

sudo systemctl start sshd

N5095使用经验分享StepByStep(一核显直通jellyfin)

上面在启动sshd服务的时候太慢了,我停了重启了一次,直接等也是可以的。

N5095使用经验分享StepByStep(一核显直通jellyfin)

不出意外的话,就已经可以看到显卡的节点了。

N5095使用经验分享StepByStep(一核显直通jellyfin)

3.10 设置软件源

切换到root用户,设置ustc源。顺便把vim也装上。命令如下(注意:下面两个$前面都需要一个反斜杠,这里没办法打出来)

sudo su

echo "Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch"

相关推荐