在 CentOS 上 Jellyfin 占用内存过高,通常不是“内存泄漏”本身,而是其默认行为与媒体处理特性导致的。下面按「先排查 → 再优化 → 最后兜底」的顺序说明。
top -p $(pgrep -f jellyfin)
或
ps aux | grep jellyfin
重点看:
Jellyfin 内存高,绝大多数情况是:
设置路径(Web):
控制台 → 播放 → 转码
建议:
如果你有:
yum install -y intel-media-driver
Jellyfin:
控制台 → 播放 → 硬件加速 → VAAPI
yum install -y nvidia-driver nvidia-container-toolkit
Jellyfin 选 NVENC
✅ 硬件转码内存通常只有软件转码的 1/3~1/5
编辑:
vim /etc/systemd/system/jellyfin.service.d/override.conf
示例(限制 1.5G):
[Service]
MemoryMax=1536M
MemoryHigh=1200M
生效:
systemctl daemon-reload
systemctl restart jellyfin
✅ 建议:
docker run -d \
--name jellyfin \
-p 8096:8096 \
-v /opt/jellyfin/config:/config \
-v /media:/media \
--restart unless-stopped \
jellyfin/jellyfin
好处:
crontab -e
0 4 * * * systemctl restart jellyfin
journalctl -u jellyfin -n 200
重点看:
Jellyfin 内存高 ≠ bug,多半是转码惹的祸
✅ 最优解:
如果你愿意,可以告诉我:
我可以直接给你一套精确配置方案。