温馨提示×

Ubuntu如何恢复Jellyfin备份数据

小樊
41
2025-11-29 05:00:42
栏目: 智能运维

Ubuntu 恢复 Jellyfin 备份数据的实用步骤

一 恢复前的准备

  • 确认备份内容:至少包含 Jellyfin 的配置与数据库(常见为 /var/lib/jellyfin 或容器内的 /config),以及你的媒体库目录(如 /media/mnt/media 等)。
  • 版本匹配:尽量使用与备份时相同或更高的 Jellyfin 版本,避免数据库/插件不兼容。
  • 规划路径:记录当前媒体库挂载路径与备份中的路径差异,恢复后需要在 Jellyfin 管理后台调整“媒体库”路径。
  • 权限与所有权:确保恢复后的目录对运行 Jellyfin 的用户(常见为 jellyfin:jellyfin)具备正确权限。
  • 全新安装建议:若是全新系统,先完成 Jellyfin 安装与基础配置,再执行恢复。

二 按部署方式选择恢复步骤

  • 本机系统服务部署(APT 安装)

    1. 停止服务
      sudo systemctl stop jellyfin

    2. 恢复数据目录(两种常见做法,二选一)

    • 整库覆盖(最稳妥,包含数据库与缓存)
      sudo rsync -a --info=progress2 /path/to/backup/jellyfin/ /var/lib/jellyfin/
    • 仅覆盖配置与数据库(保留现有缓存/插件增量)
      sudo rsync -a --info=progress2 /path/to/backup/jellyfin/{config,database}/ /var/lib/jellyfin/{config,database}/
    1. 修正权限(如备份来源用户/UID不同)
      sudo chown -R jellyfin:jellyfin /var/lib/jellyfin

    2. 启动服务并验证
      sudo systemctl start jellyfin
      sudo systemctl status jellyfin

    3. 在 Web 管理端:进入“控制台 > 仪表板 > 库”,检查/修正媒体库路径,保存后触发“立即扫描”。

  • Docker 容器部署

    1. 停止并移除旧容器(数据已外部化到卷或宿主机目录时可安全移除)
      docker stop jellyfin && docker rm jellyfin

    2. 恢复配置目录(示例把备份恢复到宿主机的 /opt/jellyfin/config
      sudo rsync -a --info=progress2 /path/to/backup/jellyfin/config/ /opt/jellyfin/config/

    3. 启动新容器并挂载恢复后的目录与媒体库
      docker run -d --name jellyfin
      -p 8096:8096
      -v /opt/jellyfin/config:/config
      -v /path/to/your/media:/media
      jellyfin/jellyfin:latest

    4. 首次访问 Web 界面,在“控制台 > 仪表板 > 库”中校正媒体库路径并执行“立即扫描”。

三 媒体库与权限修复要点

  • 路径变更处理:若备份与当前媒体库挂载点不同,需在“控制台 > 仪表板 > 库”编辑每个库,将路径调整为当前实际路径,保存后“立即扫描”。
  • 权限与所有权:若 Jellyfin 无法读取媒体文件,常见原因为目录所有者/权限不当。
    • 快速修正示例(按需调整路径与用户组):
      sudo chown -R jellyfin:jellyfin /path/to/your/media
      sudo find /path/to/your/media -type d -exec chmod 755 {} ;
      sudo find /path/to/your/media -type f -exec chmod 644 {} ;
  • 外部盘/NFS 挂载:确保系统已正确挂载目标盘,并在恢复前完成挂载,避免 Jellyfin 扫描到空目录。

四 常见问题与回滚建议

  • 版本不兼容导致启动异常:回退到备份时的 Jellyfin 版本 再恢复,或等待插件/数据库兼容更新。
  • 页面显示异常或库为空:优先检查“媒体库路径”是否准确,执行“立即扫描”,必要时重启服务。
  • 权限错误:核对 /var/lib/jellyfin 与媒体库目录的所有者为 jellyfin:jellyfin,必要时使用上面的权限修正命令。
  • 回滚方案:恢复前先备份当前状态(例如将现有 /var/lib/jellyfin 重命名为 /var/lib/jellyfin.bak-$(date +%F)),出现异常可快速还原。

0