news 2026/2/26 17:53:26

OEC-T改造手记(三):避坑指南!在Armbian上完美安装并配置Jellyfin

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
OEC-T改造手记(三):避坑指南!在Armbian上完美安装并配置Jellyfin

经历了基础搭建和文件同步,我的OEC-T终于迎来了最终使命——成为家庭媒体中心。我选择了Jellyfin这款开源免费的媒体服务器软件。然而,从安装、配置到刮削媒体信息,整个过程可谓“坑”不断,特此整理成避坑指南。

一、安装方式的选择与国内源配置

最初,我试图通过CasaOS的应用商店直接安装Jellyfin的Docker镜像,但镜像拉取屡屡失败,更换多个国内镜像站也无果。最终,我选择了更直接的apt安装方式,但这同样需要配置国内软件源。

1. 添加Jellyfin官方仓库的国内镜像
访问https://mirrors.cernet.edu.cn/list/jellyfin可查看国内镜像站列表。我选择了南京大学的镜像。

# 1. 安装HTTPS传输支持sudoaptinstallapt-transport-https# 2. 导入Jellyfin GPG密钥curl-fsSL https://repo.jellyfin.org/jellyfin_team.gpg.key|sudogpg --dearmor -o /etc/apt/keyrings/jellyfin.gpg# 3. 添加仓库 (注意:jammy对应Ubuntu 22.04,请根据你的系统版本修改)echo"deb [signed-by=/etc/apt/keyrings/jellyfin.gpg] https://mirror.nju.edu.cn/jellyfin/ubuntu jammy main"|sudotee/etc/apt/sources.list.d/jellyfin.list

2. 安装Jellyfin

sudoaptupdatesudoaptinstalljellyfin

安装完成后,服务会自动创建,但先不要启动,我们需要先解决存储空间问题。

二、迁移数据目录:拯救捉襟见肘的系统盘

默认安装会将数据、缓存等存放在系统盘(/var/lib/jellyfin),对于OEC-T的小容量eMMC来说是灾难。我们必须将其迁移到之前挂载的大硬盘上。

1. 停止服务并编辑环境文件

sudosystemctl stop jellyfinsudonano/etc/default/jellyfin

2. 修改或添加以下关键配置
找到或添加以下行,指向你的新硬盘挂载目录(例如我的是/home/pzzhao/download/jellyfin):

# 自定义目录配置 JELLYFIN_DATA_DIR="/home/pzzhao/download/jellyfin/data" JELLYFIN_CONFIG_DIR="/home/pzzhao/download/jellyfin/config" JELLYFIN_LOG_DIR="/home/pzzhao/download/jellyfin/logs" JELLYFIN_CACHE_DIR="/home/pzzhao/download/jellyfin/cache" # 核心:确保服务启动参数包含这些目录 JELLYFIN_SERVICE_OPT="--service --datadir $JELLYFIN_DATA_DIR --cachedir $JELLYFIN_CACHE_DIR --configdir $JELLYFIN_CONFIG_DIR --logdir $JELLYFIN_LOG_DIR"

3. 创建目录并迁移数据(如适用)

# 创建所有目录sudomkdir-p /home/pzzhao/download/jellyfin/{data,config,logs,cache}# 设置所有权给jellyfin用户sudochown-R jellyfin:jellyfin /home/pzzhao/download/jellyfin# 可选:如果旧目录已有数据(如首次安装后已运行过),可以迁移过来sudocp-r /var/lib/jellyfin/* /home/pzzhao/download/jellyfin/data/2>/dev/null||true

4. 重启服务并验证

sudosystemctl daemon-reloadsudosystemctl start jellyfinsudosystemctl status jellyfin# 检查状态

访问http://你的OEC-T-IP:8096,如果能打开设置向导,说明迁移成功。

三、避坑指南:媒体库刮削失败问题排查

设置好媒体库后,Jellyfin无法从豆瓣等渠道刮削影片元数据(封面、简介等)。经排查,主要有两个原因。

⚠️ 坑一:数据目录权限不足
Jellyfin服务以jellyfin用户运行,它需要对数据目录有写入权限。

# 检查目录权限ls-la /home/pzzhao/download/jellyfin/data/# 如果所属用户/组不是jellyfin,或者权限过窄,使用chown和chmod修复sudochown-R jellyfin:jellyfin /home/pzzhao/download/jellyfin# 更宽松的权限设置(生产环境建议细化权限)sudochmod-R755/home/pzzhao/download/jellyfin

⚠️ 坑二(最隐蔽):ffmpeg路径问题
通过apt安装的Jellyfin,其自带的ffmpegffprobe位于/usr/lib/jellyfin-ffmpeg/下,并不在系统的默认PATH中。这导致Jellyfin在转码或调用这些工具时失败,进而影响刮削等功能。

解决方案:创建符号链接到系统路径

sudoln-sf /usr/lib/jellyfin-ffmpeg/ffmpeg /usr/bin/ffmpegsudoln-sf /usr/lib/jellyfin-ffmpeg/ffprobe /usr/bin/ffprobe

执行后,在终端输入ffmpeg -version测试,应能正常显示版本信息。

四、配置为系统服务(补充)

通常apt安装后服务已就绪。你可以使用以下命令管理:

# 启用开机自启sudosystemctlenablejellyfin# 常用命令sudosystemctl start|stop|restart|status jellyfin# 查看实时日志sudojournalctl -u jellyfin -f

总结与成果

至此,所有“坑”已被填平。我的网心云OEC-T成功变身为一个:

  1. 存储充足:所有媒体文件和数据都存放在外接大容量SSD上。
  2. 同步自动化:通过Syncthing从下载机自动获取新影片。
  3. 功能完善的媒体中心:Jellyfin提供精美的海报墙、流畅的转码播放,支持全平台客户端。

这台成本低廉的“矿渣”设备,经过一番折腾,终于完美融入了我的数字生活。希望这个系列记录能帮助你少走弯路,享受DIY的乐趣!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/24 5:02:49

Pandas DataFrame:数据处理的强大工具

Pandas DataFrame:数据处理的强大工具 引言 在数据分析领域,Pandas DataFrame 是一个不可或缺的工具。它是 Python 中一个强大的数据分析库,能够帮助我们高效地处理和分析数据。本文将详细介绍 Pandas DataFrame 的概念、特点、使用方法以及在实际应用中的优势。 什么是 …

作者头像 李华
网站建设 2026/2/26 11:33:25

XML 语法详解

XML 语法详解 引言 XML(可扩展标记语言)是一种用于存储和传输数据的标记语言。它广泛应用于网络数据的传输、数据存储和配置文件等领域。本文将详细介绍XML的语法规则,帮助读者更好地理解和应用XML。 XML基本概念 1. XML文档结构 一个XML文档通常由以下几部分组成: 声…

作者头像 李华
网站建设 2026/2/15 18:49:27

Maven 快照(SNAPSHOT)

Maven 快照(SNAPSHOT) 引言 Maven 快照(SNAPSHOT)是 Maven 中的一个重要概念,它主要用于管理项目依赖的版本。在软件开发过程中,快照版本通常用于表示开发中的不稳定版本,以便开发者可以及时获取到最新的代码变更。本文将详细介绍 Maven 快照的概念、使用方法以及注意…

作者头像 李华
网站建设 2026/2/23 1:40:28

我只是给Typescript提个 typo PR,为什么还要签协议?

第一次给大公司的开源项目(Typescript)提 PR,提交完 GitHub 就弹出一条评论,让你签什么 CLA:microsoft-github-policy-service agree 什么玩意儿?我就改了个拼写错误,还要签协议?CLA…

作者头像 李华