PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

2022-09-24 16:52:42 25点赞 177收藏 30评论

今天,我给大家介绍一个比较简单实现plex硬件转码的方法,使用PVE LXC容器安装PLEX。

通常来讲,在pve上实现plex硬件转码的方法有两种。第一种方法,也是比较正统的方法是通过pve把核显硬件直通给宿主机(nas系统)。然后在nas上安装docker,在docker上安装plex容器,最后把直通给nas系统的核显再直通给docker容器中的plex。这种方法的优点是,如果设置无误运行比较稳定,不会干扰pve和nas上运行的其他服务。缺点也很明显,核显被独占不能给别的虚拟机使用。而且层层套娃,设置非常繁琐,如果设置错误排除故障会非常麻烦。

第二种方法则比较直观。直接在pve上安装plex。或者在pve上安装docker以后,在docker上安装plex,把核显直接直通给plex。该方法的优点是相对简单直观,缺点则是直接在pve上安装会影响其稳定性。

这次我介绍的方法就比这两种方法相对简单,而且也比较直观。原理很简单,通过pve上自带lxc容器安装预制好的CT模板,在模板上直接安装plex。这种方法不需要直通硬件,也不用太多设置就能实现plex的硬件转码。目前我体验下来发现的唯一缺点就是,plex不能实时扫描资料库文件变化,需要手动扫描或设置成定时扫描。

ps:本文默认你使用的是Intel核显。我手里没有空余的amd核显和nvdia显卡,无法测试是否适用本教程。

第一步,更换CT模板源

由于pve系统自带的源服务器不在国内,访问速度太慢。我们需要更换默认CT模板的源。

1、更新pve

单击刷新,然后点击升级。会弹出一个shell界面,当升级完成后,点击重启即可。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

2、换源

在pve系统中的shell界面输入下列命令,更换源为清华大学镜像源。

pve中shell界面pve中shell界面

cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back

sed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm

3、重启服务,使新源生效

输入下列命令

systemctl restart pvedaemon.service

第二步,下载并创建CT模板

1、下载源中预设的模板。

在pve界面上,点击local,选择CT模板,单击模板选项。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

在模板列表中选择最新的Ubuntu 22.04并下载。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

下载完成后,关闭界面。

下载完成下载完成

2、创建CT模板

在pve界面右上角点击创建CT。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

现在开始创建CT模板。CT ID和主机名自定义,CT ID不要跟已有的重复,主机名不要有中文。在这里设置的密码,需要记住,此密码是本CT模板的root密码。最后,不要勾选无特权容器。

不要勾选无特权容器!不要勾选无特权容器!

模板选择之前我们下载好的Ubuntu模板。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

磁盘容量可以相对富裕一些,我个人设置了30GB。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

核心数,根据自己设备的CPU核心数量划分即可,虚拟机上核心划分多少更多体现的是占用CPU的百分比和优先级,并不会实际划走这些核心给虚拟机使用。演示用的设备CPU是一块双核四线程奔腾G6405,所以我划了两个核心给模板使用。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

内存大小,都填2048M即2G。Linux系统对内存占用不高,2G就足够使用。另外,LXC容器跟虚拟机很大不同的一点是LXC容器的内存是动态占用的,不会跟虚拟机一样永久占用pve上的内存,LXC容器设置的内存更多体现的是内存占用上限。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

网络选项中,网络名称自拟。如果你的pve设备中有多个网卡,桥接选项选择连接内网的那张。IPv4选静态,不要照搬教程的ip地址,网络情况不一定相同。根据自身设备网段设置没有被占用的ip地址,并在后面加上掩码 /24 。网关设置为路由器的ip地址。其他的不用设置。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

DNS选择上,设置成dns服务器ip地址即可,通常来说dns服务器ip地址跟路由器ip地址相同。其他选项不用设置。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

最后点击完成,这样就创建好了CT模板。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

第三步、编辑配置文件,配置容器环境

1、查询Intel核显代码

在PVE的shell界面(不是CT模板的shell界面),输入下列命令

ls -l /dev/dri

2、编辑配置文件

注意还是在PVE的shell界面,下面的CTID就是创建的CT模板的ID。输入下列命令

nano /etc/pve/lxc/CTID.conf

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

配置文件编辑界面配置文件编辑界面

3、添加核显代码,填写下列参数并保存

前三行配置文件需要修改,加粗的地方是需要填入刚才查询的核显代码的地方。最后保存(保存方法:按住 ctrl+x 然后按 y 然后按回车)

lxc.cgroup2.devices.allow: c 226:0 rwm

lxc.cgroup2.devices.allow: c 226:128 rwm

lxc.cgroup2.devices.allow: c 29:0 rwm

lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir

lxc.mount.entry: /dev/fb0 dev/fb0 none bind,optional,create=file

lxc.apparmor.profile: unconfined

登陆界面登陆界面

4、验证核显是否启用成功

选中刚才创建的模板,点击启动,并登陆。账号名:root 密码是设置CT模板的密码。

输入下列命令

ls -l /dev/dri

启用成功启用成功

5、更新系统

输入下列命令,更新并安装系统组件

apt update && apt upgrade -y

6、下载并安装plex所需要的 curl、gnupg

依次输入下列命令

apt install curl -y

apt-get install gnupg -y

第四步、安装Intel驱动

1、创建文件夹,以保存驱动

依次输入下列命令

mkdir neo

cd neo

2.下载驱动(/intel/compute-runtime/releases)

由于是从国外某知名程序员交流网站下载驱动,所以PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

3、校验驱动是否完整

输入下列命令

sha256sum -c ww35.sum

此时第一个驱动可能会报错。类似这样,不用管,后边会解决。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

4、安装驱动

输入下列命令安装

sudo dpkg -i *.deb

如果上边报错了,这次还会报错,等到后边解决即可。

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

第五步、安装plex

1、更改核显权限,让plex可以调用

输入下列命令

/bin/chgrp video /dev/dri

/bin/chmod 755 /dev/dri

/bin/chmod 660 /dev/dri/*

2、添加官方存储库

依次输入下列命令

cd

echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -

添加成功添加成功

3、启用官方存储库

输入下列命令

apt-get update

启用后会多一条plex的源启用后会多一条plex的源

4、安装plexmediaserver

输入下列命令

apt install plexmediaserver

如果之前报错了,在这里会继续报错,输入下列命令就能正常安装了。如果之前的不报错,无视即可。

apt --fix-broken install

输入后会询问是否继续,按Y继续

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

再次输入下列命令就可以正常安装

apt install plexmediaserver

plex安装成功plex安装成功

5、验证plex是否正常添加到Video & Syslog

输入下列命令

cat /etc/group | grep plex

正确添加的状态正确添加的状态

第六步、创建新用户,安装并挂载smb

1、安装SMB组件并创建共享目录

共享目录名自选,我设置的目录名字是 plex_share

依次输入下列命令

apt install cifs-utils -y

mkdir /mnt/plex_share

2、创建储存smb账户和密码的文件

文件名自选,我设置的简单就叫 smbpassword

输入下列命令

nano ~/.smbpassword

将下列内容复制到文件中。注意:smb的账户和密码是需要从要挂载的设备上创建的,不是在这里创建的。这里只是把要挂载设备的smb账户和密码填上,并保存(保存方法:按住 ctrl+x 然后按 y 然后按回车)

username=挂载设备的smb用户名

password=挂载设备的密码

PVE不需要设置核显直通,也能让PLEX硬解——使用PVE LXC容器安装PLEX

3、设置自动挂载smb

由于smb默认每次开机需要手动挂载,所以要改成自动挂载。输入下列命令,并按要求更改后保存(保存方法:按住 ctrl+x 然后按 y 然后按回车)。

nano /etc/fstab

将下列内容复制到文件中

//你的nas ip/要共享的目录名 /mnt/smb共享目录名称 cifs credentials=/root/.储存smb账户密码的文件名,iocharset=utf8 0 0

还不懂,我就没办法了还不懂,我就没办法了

4、重启容器,使设置生效

输入下列命令

reboot

5、检查smb挂载成功与否

重新登录以后,输入依次下列命令

cd /mnt/plex_share

ls

如果能显示出挂载的目录文件,那么就成功了。

smb挂载成功smb挂载成功

以上做完,便设置完成了。

最后,验证硬解是否成功。

打开plex进行设置(plex默认地址是 设置CT模板的ip地址:32400/web),plex设置完成后检查是否开启硬解。

硬解开启成功硬解开启成功

最后,我写这篇文章不只是个教程,更多是作为记录我解决问题的一个思路和我学习研究的过程。因此,作为教程略微有些勉强,个人能力有限,水平较低,如果有错误希望大家能指出来。同时希望这篇文章对大家有所帮助!

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2485.01元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1799元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3499元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2599元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3199元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1299元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1290.51元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1699元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4299元起
30评论

  • 精彩
  • 最新
  • 某度的代码
    1VaXDVF18MGb2ewadxYdirg?pwd=pc4m

    校验提示文案

    提交
    上不去GitHub,用这个

    校验提示文案

    提交
    链接失效了大佬

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 我用的emby 但没有安装intel驱动 也一样转码

    校验提示文案

    提交
    plex自己的问题,最新版本不需要安装驱动了

    校验提示文案

    提交
    很奇怪,我按照你的方法配置了一下,就是没法开启硬件转码,CPU是J4125 [狂汗]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 目前我体验下来发现的唯一缺点就是,plex不能实时扫描资料库文件变化,需要手动扫描或设置成定时扫描。这个是因为smb挂载的锅吗?

    校验提示文案

    提交
    对,如果是smb挂载是不能触发自动扫描的,只能手动或者定时。

    校验提示文案

    提交
    其它挂载webav或者协议,支持吗?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 我是在lxc里面安装的docker,然后通过docker的命令安装的
    docker run \
    -d \
    --name plex \
    -p 32400:32400/tcp \
    -p 3005:3005/tcp \
    -p 8324:8324/tcp \
    -p 32469:32469/tcp \
    -p 1900:1900/udp \
    -p 32410:32410/udp \
    -p 32412:32412/udp \
    -p 32413:32413/udp \
    -p 32414:32414/udp \
    -e TZ="" \
    -e PLEX_CLAIM="" \
    -e ADVERTISE_IP="http://:32400/" \
    -h \
    -v :/config \
    -v :/transcode \
    -v :/data \
    plexinc/pms-docker

    不过我发现一个问题,就是安装之后没有本地媒体库,不知道为什么,文件夹我都挂载了。

    校验提示文案

    提交
    要不你检查检查权限给的对不对

    校验提示文案

    提交
    收起所有回复
  • 我说的程序猿交流网站是GitHub。

    校验提示文案

    提交
  • Intel驱动,看步骤。加上域名即可

    校验提示文案

    提交
  • diy nas配置进阶版什么时候出

    校验提示文案

    提交
  • gpuv

    校验提示文案

    提交
  • 没必要搞lxc,直接安装docker,在docker里面跑plex就行。pve已经可以正常安装docker。

    校验提示文案

    提交
    大佬,怎么直接装docker呢?

    校验提示文案

    提交
    收起所有回复
  • 谢谢楼主,好方法。openwrt也可以lxc,越来越觉得lxc更好用了。

    校验提示文案

    提交
  • PVE 直接SSH安装的EMBY,不用设置就可以调用。

    校验提示文案

    提交
  • 有个概念写错了,很容易让人误解,你下载的是 CT模板,基于CT模板创建的是容器,而不是“创建CT模板”

    校验提示文案

    提交
  • 没有出现hw硬解啊

    校验提示文案

    提交
    重新搞了一次,我的n305终于能硬解了。感谢作者的分享

    校验提示文案

    提交
    不需要Plex订阅吗

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 我的pve8.0 输入ls -l /dev/dri 是提示没有目录的 不知道为啥认不到显卡

    校验提示文案

    提交
  • 4.2那一步骤是啥啊?

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
177
扫一下,分享更方便,购买更轻松