首页主机资讯如何在centos上备份jellyfin的数据

如何在centos上备份jellyfin的数据

时间2025-11-20 14:03:06发布访客分类主机资讯浏览1243
导读:备份目标与总体思路 在 CentOS 上,Jellyfin 的备份重点是: 配置目录 /etc/jellyfin;2 数据目录 /var/lib/jellyfin(内含数据库,Jellyfin 默认使用 SQLite);3 可选的...

备份目标与总体思路

  • CentOS 上,Jellyfin 的备份重点是:
    1. 配置目录 /etc/jellyfin;2) 数据目录 /var/lib/jellyfin(内含数据库,Jellyfin 默认使用 SQLite);3) 可选的 缓存与日志 /var/cache/jellyfin、/var/log/jellyfin;4) 你的 媒体库文件(通常不在系统盘,建议单独长期保留)。Jellyfin 本身不提供一键备份,建议用 tar/rsync 做文件级备份,并按需做 全量/增量/差异 策略与 异地/云端 存储。

手动备份步骤

    1. 停止服务,确保数据一致性
      sudo systemctl stop jellyfin
    1. 备份配置与数据(SQLite 数据库位于数据目录)
      sudo tar -czvf jellyfin_backup_$(date +%F).tar.gz
      /etc/jellyfin /var/lib/jellyfin
    1. 可选:备份缓存与日志
      sudo tar -czvf jellyfin_cachelog_$(date +%F).tar.gz
      /var/cache/jellyfin /var/log/jellyfin
    1. 启动服务
      sudo systemctl start jellyfin
    1. 校验与保留策略
      ls -lh jellyfin_backup_*.tar.gz

    建议保留最近 7–30 天的备份,按日期命名便于回滚。

自动化与增量备份

  • 定时全量备份(示例:每日 2:00)
    创建脚本 /usr/local/bin/backup_jellyfin.sh:
    #!/usr/bin/env bash set -e BACKUP_DIR=“/opt/backups/jellyfin” DATE=$(date +%F) mkdir -p “$BACKUP_DIR” systemctl is-active --quiet jellyfin & & systemctl stop jellyfin tar -czvf “$BACKUP_DIR/jellyfin_${ DATE} .tar.gz” /etc/jellyfin /var/lib/jellyfin systemctl start jellyfin

    清理 30 天前

    find “$BACKUP_DIR” -name “jellyfin_*.tar.gz” -mtime +30 -delete
    加入定时任务:
    sudo chmod +x /usr/local/bin/backup_jellyfin.sh
    echo “0 2 * * * root /usr/local/bin/backup_jellyfin.sh” | sudo tee /etc/cron.d/backup_jellyfin
  • 增量/差异备份(基于 tar 快照)

    首次快照(全量)

    tar -czvf jellyfin_base.tar.gz -g jellyfin_snap.snar /etc/jellyfin /var/lib/jellyfin

    后续增量(基于同一快照文件)

    tar -czvf jellyfin_inc_$(date +%F).tar.gz -g jellyfin_snap.snar /etc/jellyfin /var/lib/jellyfin
    提示:快照文件(jellyfin_snap.snar)需妥善保存并与对应备份一起归档。

远程与云端备份

  • rsync 到远程主机(示例)
    rsync -avz --delete -e ssh /opt/backups/jellyfin/ user@backup.example.com:/backup/jellyfin/
  • 使用 S3 兼容对象存储(s3fs-fuse 挂载后拷贝)

    安装与配置(示例)

    sudo yum install -y automake fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel git clone https://github.com/s3fs-fuse/s3fs-fuse.git cd s3fs-fuse & & ./autogen.sh & & ./configure & & make & & sudo make install echo “YOUR_ACCESS_KEY:YOUR_SECRET_KEY” | sudo tee /etc/passwd-s3fs > /dev/null sudo chmod 600 /etc/passwd-s3fs sudo mkdir -p /mnt/s3 s3fs YOUR_BUCKET /mnt/s3 -o passwd_file=/etc/passwd-s3fs -o url=https://YOUR_S3_ENDPOINT -o use_path_request_style

    拷贝备份

    cp /opt/backups/jellyfin/jellyfin_*.tar.gz /mnt/s3/
    说明:也可使用 rclone 等工具直传到对象存储,流程更简洁。

恢复与验证

  • 恢复步骤
    1. 建议先停止服务:sudo systemctl stop jellyfin
    2. 解压备份(覆盖前先备份现有目录):
      sudo tar -xzvf jellyfin_backup_YYYY-MM-DD.tar.gz -C /
    3. 启动服务:sudo systemctl start jellyfin
    4. 登录 Web 管理端检查:用户、媒体库、播放记录、插件是否正常。
  • 校验要点
    • 配置文件:ls -l /etc/jellyfin
    • 数据库文件:ls -l /var/lib/jellyfin/data/jellyfin.db(存在且大小合理)
    • 日志:journalctl -u jellyfin -b 或 tail -n 200 /var/log/jellyfin/*.log
  • 第三方脚本
    也可使用社区脚本(如 Therkelsen/jellyfin_tools)进行备份与恢复,使用前请审阅脚本内容并在测试环境验证。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何在centos上备份jellyfin的数据
本文地址: https://pptw.com/jishu/752022.html
CentOS中TigerVNC连接失败怎么办 CentOS如何使用RabbitMQ进行远程管理

游客 回复需填写必要信息