Ubuntu Server无GUI环境下启用Plex硬件加速可行性咨询
完全可以在纯命令行的无GUI环境下搞定Plex的硬件加速,根本不需要依赖X-Server!针对你的Dell 7720上的Intel i7-3630QM核显(HD 4000)和NVIDIA GT650M独显,我给你整理了两种可行的配置方案,按需选择:
方案一:用Intel核显的VA-API加速(推荐)
你的CPU集成的HD 4000核显支持VA-API硬件转码,这是无GUI环境下最省心的方案——配置简单、功耗低,完全能满足Plex的日常转码需求:
安装核显驱动和VA-API工具
直接通过apt安装官方驱动包:sudo apt-get update && sudo apt-get install intel-media-va-driver-non-free vainfo安装完跑个
vainfo验证,如果输出里能看到一堆VAProfile开头的条目,说明驱动已经正常识别硬件能力了。给Plex用户加权限
Plex默认用plex用户运行,得让它能访问核显设备:sudo usermod -aG video plex重启Plex服务让权限生效:
sudo systemctl restart plexmediaserver在Plex后台开硬件加速
登录Plex Web管理页(http://你的服务器IP:32400/web),找到设置 → 转码,勾选「使用硬件加速视频编码」和「使用硬件加速视频解码」,保存就搞定了。
方案二:用NVIDIA GT650M的NVENC加速
如果非要用独显的NVENC加速,也能在无X的环境下配置,不用装完整的桌面环境:
装NVIDIA无头驱动
GT650M属于Kepler架构,390系列是支持它的长期支持驱动,直接装无头版本(不带X组件):sudo apt-get install nvidia-headless-390 nvidia-utils-390 libnvcuvid1验证驱动是否正常
运行nvidia-smi,如果能显示GPU型号、驱动版本和显存信息,说明驱动装对了。配置Plex的权限和环境变量
同样先把plex用户加入video组:sudo usermod -aG video plex然后给Plex服务加NVIDIA相关的环境变量,确保它能找到驱动文件:
编辑服务配置:sudo systemctl edit plexmediaserver在弹出的编辑器里粘贴以下内容:
[Service] Environment="NVIDIA_DRIVER_CAPABILITIES=all" Environment="LD_LIBRARY_PATH=/usr/lib/nvidia-390:/usr/lib32/nvidia-390"保存后重载服务配置并重启Plex:
sudo systemctl daemon-reload sudo systemctl restart plexmediaserver开启Plex的硬件加速
和核显方案一样,去Plex Web后台的设置 → 转码里勾选硬件加速选项就行。
几个小提示
- 优先选核显方案,不仅配置简单,还能省电费,日常转码完全够用;
- 如果配置后硬件加速没生效,去Plex日志里找原因:
/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs/Plex Media Server.log,搜hardware或者transcode关键词; - 确保你的Plex版本支持对应硬件加速——Ubuntu 16.04上的官方Plex包肯定是支持的,不用太担心。
内容的提问来源于stack exchange,提问作者xorinzor

