温馨提示×

CentOS Jellyfin怎么迁移

小樊
35
2026-07-20 07:00:08
栏目: 智能运维

在 CentOS 上迁移 Jellyfin 通常包括 配置文件、媒体库、元数据、用户数据 等。下面给你一套完整、可操作的迁移方案,适用于 CentOS 7 / 8 / Stream,也适用于从一台 CentOS 迁移到另一台 CentOS 或 Linux 服务器。


一、迁移前准备

1️⃣ 确认 Jellyfin 安装方式

常见三种:

  • RPM / 官方仓库
  • Docker
  • 手动安装

先确认:

rpm -qa | grep jellyfin
# 或
docker ps | grep jellyfin

下面以 RPM 安装方式 为主(最常见)。


二、原服务器操作(旧 CentOS)

1️⃣ 停止 Jellyfin 服务

systemctl stop jellyfin

2️⃣ 备份 Jellyfin 数据目录

Jellyfin 默认数据目录:

/var/lib/jellyfin        # 数据库、元数据
/etc/jellyfin            # 配置文件
/var/log/jellyfin        # 日志(可选)

打包备份

mkdir -p /root/jellyfin_backup
tar czvf /root/jellyfin_backup/jellyfin_data.tar.gz \
    /var/lib/jellyfin \
    /etc/jellyfin

3️⃣ 备份媒体文件(如有必要)

如果媒体也在本机:

tar czvf /root/jellyfin_backup/media.tar.gz /data/media

或直接使用 rsync(推荐):

rsync -avz /data/media/ root@新服务器IP:/data/media/

4️⃣ 传输备份到新服务器

scp /root/jellyfin_backup/jellyfin_data.tar.gz root@新服务器IP:/root/

三、新服务器操作(新 CentOS)

1️⃣ 安装 Jellyfin(不要启动)

CentOS 7 / 8 / Stream

dnf install -y epel-release
dnf install -y jellyfin

或官方仓库方式(推荐):

dnf install -y https://repo.jellyfin.org/releases/server/centos/jellyfin-repo-1.0.0-1.el8.noarch.rpm
dnf install -y jellyfin

2️⃣ 停止服务(防止冲突)

systemctl stop jellyfin

3️⃣ 恢复配置文件和数据

tar xzvf /root/jellyfin_data.tar.gz -C /

确认目录权限:

chown -R jellyfin:jellyfin /var/lib/jellyfin
chown -R jellyfin:jellyfin /etc/jellyfin

4️⃣ 恢复媒体文件(如有)

mkdir -p /data/media
tar xzvf /root/media.tar.gz -C /

或 rsync 已同步可跳过。


四、关键检查项(非常重要)

✅ 1. 目录权限

ls -ld /var/lib/jellyfin
ls -ld /data/media

Jellyfin 用户必须可读写:

chown -R jellyfin:jellyfin /data/media

✅ 2. 媒体路径是否一致

⚠️ Jellyfin 绑定的是绝对路径

如果旧服务器是:

/data/media/Movies

新服务器也必须是:

/data/media/Movies

否则需要:

  • 手动修改库路径
  • 或创建软链接:
ln -s /new/media /data/media

✅ 3. 防火墙 & SELinux

防火墙

firewall-cmd --add-port=8096/tcp --permanent
firewall-cmd --reload

SELinux(常见坑)

setenforce 0

永久关闭(可选):

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

或给目录打标签:

semanage fcontext -a -t httpd_sys_rw_content_t "/data/media(/.*)?"
restorecon -Rv /data/media

五、启动 Jellyfin

systemctl enable jellyfin
systemctl start jellyfin

访问:

http://新服务器IP:8096

✅ 用户、元数据、播放记录、收藏应全部保留。


六、Docker 方式迁移(如适用)

备份

docker stop jellyfin
tar czvf jellyfin_docker.tar.gz /var/lib/docker/volumes/jellyfin_data

恢复

tar xzvf jellyfin_docker.tar.gz -C /
docker start jellyfin

七、常见问题

❓ 用户没了?

  • 没备份 /var/lib/jellyfin
  • 或权限错误

❓ 媒体库为空?

  • 路径不一致
  • SELinux 没关

❓ 播放记录丢失?

  • 数据库未恢复
  • 新版本不兼容(少见)

八、总结(最简流程)

旧服务器:
1. 停止 jellyfin
2. 备份 /var/lib/jellyfin & /etc/jellyfin
3. 传输到新服务器

新服务器:
1. 安装 jellyfin
2. 停止服务
3. 还原数据
4. 修复权限
5. 启动服务

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ 是否 Docker
  • ✅ 是否跨服务器
  • ✅ 媒体是否在本地

我可以给你一套 完全贴合你环境的迁移命令

0