在服务器迁移或系统重装时,如何让 Jellyfin 保持原有的媒体库、封面、用户和观看记录?只需完成 媒体文件迁移 + 配置与数据库迁移 + 重新安装软件包 三个步骤,即可实现无缝恢复。
1. 准备工作
迁移前,需要确保新旧系统之间能够互相访问(通常通过 SSH),并拥有管理员权限。推荐使用 rsync 工具进行文件同步,既能保持权限和时间戳,也能断点续传。
2. 迁移媒体文件
首先迁移存放影片、剧集的媒体目录。例如:
rsync -avz --progress "oldserver:/home/user/Media Library" /home/user/
这样,源服务器中的 Media Library 目录会完整复制到新服务器的 /home/user/ 下。注意路径不要在末尾添加 /,以确保目录结构保持一致。
3. 迁移配置与数据库
Jellyfin 的核心数据主要分布在两个目录:
/var/lib/jellyfin/:包含数据库、元数据、插件、用户信息/etc/jellyfin/:包含配置文件
迁移命令示例:
rsync -avz oldserver:/var/lib/jellyfin/ /var/lib/jellyfin/
rsync -avz oldserver:/etc/jellyfin/ /etc/jellyfin/
这样就能将所有元数据、封面、用户记录和插件一并带走。
4. 安装 Jellyfin
在新系统上安装与旧系统版本一致的 Jellyfin,避免数据库不兼容问题。以 Debian/Ubuntu 为例:
sudo apt install apt-transport-https
wget -O - https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo apt-key add -
echo "deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/$( . /etc/os-release && echo $ID ) $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
sudo apt update
sudo apt install jellyfin
5. 权限检查与服务启动
迁移完成后,需要确保目录权限正确:
sudo chown -R jellyfin:jellyfin /var/lib/jellyfin
sudo chown -R jellyfin:jellyfin "/home/user/Media Library"
然后启动 Jellyfin 服务:
sudo systemctl restart jellyfin
6. 验证迁移结果
打开浏览器访问 http://<新服务器IP>:8096,确认以下内容:
- 用户与密码是否保留
- 媒体库目录是否正常加载
- 元数据(封面、剧情简介、演员信息)是否完整
- 播放历史与观看进度是否一致
如果一切正常,就说明迁移成功。
总结
Jellyfin 的完整迁移可以概括为:
- 迁移媒体文件
- 迁移配置与数据库
- 安装相同版本 Jellyfin 并恢复权限
完成以上步骤后,新的 Jellyfin 环境即可无缝延续旧系统的所有功能,最大程度避免重新刮削元数据的麻烦。