CieyGet
CieyGet

技术改变世界

  • 首页
  • 分类
  • 文章归档
  • 荷兰猪

  • 搜索
手机 折腾 破解 救砖 维修 硬改 B860AV1.1 Android zerotier docker 网络 windows linux ubuntu 中兴 Padavan 宝塔 华为 电视盒子 VIM PVE 光猫 友华 PT926G

[PVE7.1-8]LXC容器下Jellyfin服务器配置显卡硬件加速

发表于 2022-07-09 | 分类于 PVE虚拟机 | 0 | 阅读次数 136

一、平台信息

PVE版本:7.1-8

容器:Ubuntu20.04

Jellyfin:10.7.7

Cpu:G6505T十代U

显卡:intelHD630核显

二、配置步骤

1、登录pve,查询设备编号


root@pve:~# ls -l /dev/dri

drwxr-xr-x 2 root root         80 Dec 17 00:04 by-path

crw-rw---- 1 root video  226,   0 Dec 17 00:04 card0

crw-rw---- 1 root render 226, 128 Dec 17 00:04 renderD128

2、pve主机安装intel核显驱动

apt install intel-media-va-driver-non-free

安装vainfo程序

apt install vainfo

安装完成后,查询显卡信息,显示如下,说明驱动安装完成。

image

可看到,以上加载的是iHD driver,不是网上多数教程说的i965。这里不安装i965驱动,因为i965适合以前老版本的cpu,8代cpu最好安装以下驱动。

image-1657303462822

注意:应该先安装显卡驱动intel-media-va-driver-non-free,再安装vainfo软件。如果先安装vainfo会自动把i965和intel-media-driver驱动一起装上,实际上,我们只需要intel-media-driver即可。

三、将设备映射给LXC容器

这里默认建立好Ubuntu20.04特权容器

修改容器配置

vim /etc/pve/lxc/102

注:这里的102是PVE中显示的LXC 容器ID 改成自己的
image-1657303477014

在最后添加以下配置信息

lxc.cgroup2.devices.allow: c 226:0 rwm                  //映射的设备
lxc.cgroup2.devices.allow: c 226:128 rwm     
lxc.autodev: 1                                         //初始化设备
lxc.hook.autodev: /var/lib/lxc/102/mount_hook.sh      //运行的脚本,需要编写

(注意:网上好多教程这里的配置都是lxc.cgroup.devices.allow,但在较新版本里,参数已改成了cgroup2)

image-1657303489281

编写初始化脚本/var/lib/lxc/102/mount_hook.sh

mkdir -p ${LXC_ROOTFS_MOUNT}/dev/dri
mknod -m 777 ${LXC_ROOTFS_MOUNT}/dev/dri/card0 c 226 0
mknod -m 777 ${LXC_ROOTFS_MOUNT}/dev/dri/renderD128 c 226 128

避免权限问题这里直接给777权限

image-1657303499101

到此,PVE主机上配置完毕!

下一步,使用pct start ctid启动容器,ssh进入容器系统配置(这里是ubuntu系统)

四、Ubuntu安装核显驱动

这里的安装的驱动跟pve主机一样的。一样不需要安装i965-va-driver-shaders

image-1657303509938

查询是否显示显卡信息。显示如下,说明容器可以识别核显设备了。

(注意:因为系统版本不一样,所以,显示的vaapi版本和驱动版本和pve主机也不一样.)

image-1657303519843

五、配置jellyfin硬件加速

登录jellyfin——控制台——播放,启动硬件加速。

image-1657303531088

播放视频,在(容器)Ubuntu系统使用intel_gpu_top工具监测,核显是否工作。

apt install intel_gpu-tools

不播放视频时,GPU无负载

image-1657303541468

播放需要转码的视频时,GPU处于负载状态

image-1657303549808

Jellyfin播放数据,可以看到转码信息。说明,硬件加速生效!

image-1657303562443

一些问题的处理办法

全部都操作完了,依然调用不了核显硬解。具体表现为vainfo 可以查看列出显卡信息同时intel_gpu_top 也可以查看显卡信息

  1. 使用 chmod - R 777 /dev/dir 设置权限
  2. 配置 systemctl jellyfin 服务的用户为root

参考文献

作者:养狗只养法斗 https://www.bilibili.com/read/cv14489336 出处:bilibili
https://www.cyril.vip/blog/note/system/lxc-uses-intel-iris-xe-graphics-card-in-pve/

# PVE
[Padavan]老毛子路由器安装 ZeroTier
Zerotier Ubuntu 安装 卸载
  • 文章目录
  • 站点概览
CieyGet

CieyGet

36 日志
13 分类
23 标签
RSS
Creative Commons
© 2023 CieyGet
0%