核显调用
配置 CT 渲染设备节点,开启硬件加速: 默认情况下 LXC 并不会自动映射 dev 目录下的设备节点文件。所以我们首先需要修改配置文件,使 LXC 自动映射 dev 下的设备文件。
首先我们需要在 host(pve) shell 中确认一下 host 设备文件的情况:
ls -l /dev/dri/
total 0
drwxr-xr-x 2 root root 80 Apr 20 12:24 by-path
crw-rw---- 1 root video 226, 0 Apr 20 12:24 card0
crw-rw---- 1 root render 226, 128 Apr 20 12:24 renderD128
video id: 226, 0
render id:226, 128
修改 LXC 的配置文件,路径为/etc/pve/lxc/{你的 CT ID}.conf
.
例如我的 CT ID 是 231,所以对应的文件是/etc/pve/lxc/231.conf
使用编辑器打开该文件进行编辑:
nano /etc/pve/lxc/231.conf
将以下内容添加到文件末尾(将对应的 id 替换成自己的):
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/231/render_device_hook.sh
CT 启动的时候,会执行 lxc.hook.autodev
里的内容,我们需要手动创建对应的节点文件
还是一样,使用编辑器创建并打开脚本文件:
nano /var/lib/lxc/231/render_device_hook.sh
将以下内容添加到文件中 (一样,还是要替换成自己的设备 id):
mkdir -p ${LXC_ROOTFS_MOUNT}/dev/dri
mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/card0 c 226 0
mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/renderD128 c 226 128
最后设置文件权限:
chmod 755 /var/lib/lxc/231/render_device_hook.sh
这样,我们 CT 的配置就修改好了,现在去启动 CT 吧。
启动后,我们还需要在 CT 里安装 VA 的驱动文件,以下命令均在 CT 内执行:
#apt-get install i965-va-driver
# 8 代 + CPU 需要下载 intel-media-va-driver
apt-get install intel-media-va-driver-non
apt-get install vainfo
安装完成后执行 vainfo 命令,如果打印如下类似信息就表明硬件转码已经可用了:
核显调用完成
硬盘调用
pct set 232 -mp0 /dev/disk/by-uuid/*,mp=/jfm