在 CentOS 上运行 Jellyfin 报错的原因很多,一般和 系统版本、依赖、权限、SELinux、端口、FFmpeg 等有关。下面我按最常见原因 → 排查方法 → 解决方案给你一个系统性的排查指南。
请先确认以下信息(非常重要):
cat /etc/centos-release
rpm -qa | grep jellyfin
常见情况:
error while loading shared libraries
Failed to load ...
yum install -y epel-release
yum install -y ffmpeg fontconfig freetype
如果是 CentOS 7,FFmpeg 版本太低,建议:
yum install -y ffmpeg
或手动安装新版 FFmpeg。
systemctl status jellyfin
journalctl -u jellyfin -xe
mkdir -p /var/lib/jellyfin
chown -R jellyfin:jellyfin /var/lib/jellyfin
getenforce
如果是 Enforcing,媒体目录很可能被拦截。
setenforce 0
systemctl restart jellyfin
semanage fcontext -a -t httpd_sys_rw_content_t "/data/media(/.*)?"
restorecon -Rv /data/media
Permission denied
Access to path denied
chmod -R 755 /你的媒体目录
chown -R jellyfin:jellyfin /你的媒体目录
⚠️ 注意:不要直接 777,不安全。
Transcoding failed
ffmpeg exited with code 1
ffmpeg -version
Dashboard → Playback → FFmpeg path
CentOS 7 已 EOL(停止维护),Jellyfin 官方已不再完全支持。
✅ 强烈建议:
yum install -y docker
systemctl enable --now docker
docker run -d \
--name jellyfin \
-p 8096:8096 \
-v /data/jellyfin/config:/config \
-v /data/media:/media \
jellyfin/jellyfin
✅ 优点:
你可以直接把 完整报错信息 发出来,例如:
systemctl status jellyfinjournalctl -u jellyfin我可以 逐行帮你分析,甚至直接给你一条命令解决 ✅