温馨提示×

Jellyfin Linux版如何备份

小樊
40
2025-11-28 23:54:34
栏目: 智能运维

Jellyfin Linux版备份指南

一 备份前的准备

  • 确认数据目录:常见路径为**/var/lib/jellyfin**(系统包安装),Docker 部署通常为容器内的**/config与挂载的媒体目录。备份范围应包含:数据库与配置(在/var/lib/jellyfin**)、插件与缓存、以及你的媒体库文件(若与配置分开存放)。
  • 选择时机与一致性:为减少不一致,建议在备份前停止 Jellyfin 服务(systemd 或 Docker)。
  • 准备存储与保留策略:选择本地外置盘、NAS 或对象存储,并设定定期备份与保留周期(如每日增量、每周全量)。

二 本机系统包安装的备份方法

  • 停止服务
    • systemd:执行:sudo systemctl stop jellyfin
  • 使用 tar 打包备份
    • 推荐仅打包数据目录内容:sudo tar -czvf jellyfin_backup_$(date +%F).tar.gz -C /var/lib/jellyfin .
  • 使用 rsync 增量同步
    • 示例:sudo rsync -avz /var/lib/jellyfin /path/to/backup/jellyfin/
  • 拷贝到外部存储
    • 示例:cp jellyfin_backup_$(date +%F).tar.gz /mnt/backup/
  • 重启服务
    • 示例:sudo systemctl start jellyfin
      以上步骤适用于 Ubuntu/CentOS 等使用系统包安装的 Jellyfin。

三 Docker 部署的备份方法

  • 停止容器
    • 示例:docker stop jellyfin
  • 备份配置目录
    • 示例:docker cp jellyfin:/config /path/to/backup/jellyfin-config
  • 备份媒体库(若未挂载宿主机目录,请改为从宿主机直接备份对应媒体路径)
    • 示例:docker cp jellyfin:/media /path/to/backup/jellyfin-media
  • 启动容器
    • 示例:docker start jellyfin
      恢复时将数据卷或目录按原样挂载回容器即可。

四 自动化与异地备份

  • 增量备份(tar + 快照文件)
    • 首次快照:sudo tar -czvf jellyfin_snapshot.tar.gz -g jellyfin_snapshot.tar.gz -C /var/lib/jellyfin .
    • 后续增量:sudo tar -czvf jellyfin_inc_$(date +%F).tar.gz -g jellyfin_snapshot.tar.gz -C /var/lib/jellyfin .
  • 脚本化备份
    • 可使用社区脚本(如 Therkelsen/jellyfin_tools)简化备份与恢复流程:git clone https://github.com/Therkelsen/jellyfin_tools.git,按需执行脚本(如 create_jellyfin_backup.shrestore_jellyfin_backup.sh)。
  • 备份到对象存储(S3 兼容)
    • 安装 s3fs-fuse 并配置密钥后挂载存储桶,将备份包复制到挂载目录,实现自动上传与异地保存

五 恢复步骤与注意事项

  • 本机系统包恢复
    • 建议先停止服务:sudo systemctl stop jellyfin
    • 清空或重命名原数据目录后解压:sudo tar -xzvf jellyfin_backup_YYYY-MM-DD.tar.gz -C /var/lib/jellyfin
    • 启动服务:sudo systemctl start jellyfin
  • Docker 恢复
    • 先停止容器:docker stop jellyfin
    • 拷回配置与媒体:docker cp /path/to/backup/jellyfin-config jellyfin:/configdocker cp /path/to/backup/jellyfin-media jellyfin:/media
    • 启动容器:docker start jellyfin
  • 注意事项
    • 媒体库很大时优先增量备份定期校验
    • 恢复后如遇权限问题,修正目录属主(如 Jellyfin 运行用户);
    • 若迁移到新机器,确保 ffmpeg、字体、硬件解码依赖等环境一致,避免播放异常。

0