维护与备份
安排每天的例行工作,清理文件已不在的条目,备份并恢复 Cirvel 的数据。

11.1维护时段
Cirvel 与 Plex 共用一个维护时段,就是 Plex 设置「计划任务」里的那一个。在「维护」页拖动时间轴上的时段或两端修改,同时写入 Plex。Plex 没有设置时按它的默认时段,凌晨 2 点到 5 点。
不想等到维护时段时,点「立即维护」按顺序执行全部打开的工作,也可以对单项点「立即执行」。
11.2每日工作
维护时段开始后,下面的工作按顺序逐项执行,一项结束再开始下一项,每一项可以在「维护」页设为每天、每周某一天或关闭。访问网盘的片头片尾补全、STRM 内容识别补算、STRM 进度条预览与章节图以及远端校验排在最后,受「后台每小时请求上限」约束。时段结束时,本地的工作做完为止,访问网盘的停下,没轮到的第二天再做,这四项里上次没轮到的先做。某一项上次被跳过时,这一行写着原因与出路,例如关闭静默分析后恢复、打开这项功能后下次维护时执行,或者下次维护时会再试、不用处理。
- 缺失文件检查
- 核对 Plex 里的媒体文件是否还在磁盘上,只检查不清理,结果显示在「维护」页。
- 备份
- 按「备份」页选择的内容备份一份。时段内没轮到时,时段结束后立即补上,保证每天有一份。
- 缺失文件自动清理(Pro,默认关闭)
- 见下文的「清理缺失文件」。
- 中文化整库比对(Pro)
- 把启用范围内的全部条目比对一遍,补上平时漏掉的改动,不访问网盘。新入库与刷新的条目平时随时处理,每 5 分钟还有一轮增量,都不等维护。
- 整理 Cirvel 数据
- 默认每周日,删掉已删除的条目与媒体库留下的记录和用不上的文件,再压缩 Cirvel 的数据库,维护页这一行写着删掉了多少、腾出多少空间。备份关闭时照常执行。
- 元数据体检
- 每天体检全部媒体库,Pro 下按「元数据」页的开关自动修复,填了 TMDB API key 时顺带检查缺集。
- 演职人员补全(Pro)
- 重新查询来源超过 7 天仍未收录的作品,填了新的 key 或启用新来源后也在这时补上。新入库的作品入库后自动处理,不等维护。
- 片头片尾补全(Pro)
- 为还没有片头片尾的条目补上标记。补读章节这类要访问网盘的工作只在这时进行,时段结束即停。从本地同源文件复用标记不访问网盘,新条目入库后随即处理。
- STRM 内容识别补算(Pro)
- 为已分析的 STRM 读开头与结尾各一小段,记下内容识别码,之后链接变了也能认出同一个文件,不必重新分析。每个文件只补一次,打开静默分析时不自动执行,可以在「维护」页手动执行。
- STRM 进度条预览与章节图(Pro)
- 「为 STRM 生成进度条预览」打开时,为只有 STRM 的条目生成进度条预览与章节图,见「媒体信息」一章的「STRM 进度条预览」。打开静默分析时不自动执行,可以在「维护」页手动执行。
- 远端校验(Pro,默认关闭)
- 见「媒体信息」一章的「远端校验」。
同一页的「Plex 的任务」列出 Plex 自己在这个时段执行的任务,例如备份与优化数据库、生成片头标记与片尾标记、生成视频预览缩略图与章节缩略图,这里的开关与 Plex 的设置双向同步。
11.3清理缺失文件
「维护」页的「缺失文件」列出 Plex 里文件已不在磁盘上的条目。清理只删除 Plex 里的记录,不碰磁盘上的文件。读不了的目录,例如网盘未挂载,整个跳过,不算缺失。
- 文件已删除
- 所在目录还在,点「清理」让 Plex 扫描这些目录并移除条目,与在 Plex 里点扫描的结果一样。条目多时 Plex 需要几十秒到几分钟。
- 目录不存在
- Plex 自己永远不会清理,请逐个选择「从媒体库移除」「只清条目」或「保留」。
免费版每天检查,手动清理。Pro 在「维护」页把「缺失文件自动清理」设为每天或每周某一天后(默认关闭),在维护时段自动清理文件已删除的条目。一个目录缺失超过两成或超过 500 个文件时可能是存储没挂载,自动清理跳过它,确认存储正常后在「维护」页手动清理。整个不存在的目录不自动处理。
手动清理前先确认存储已经挂载。挂载断开时清理,会让这些条目连同观看记录一起从 Plex 消失。
11.4改动记录
「维护」页的「改动记录」列出 Cirvel 替你在 Plex 里做过的一次性改动,包括元数据的修正匹配、合并、拆分、季集排序与语言,Edition 标签把拆出的条目合并回去,以及跳过前集进度标上的集。每一行写着改了什么、什么时候、是自动还是手动,可以按能力筛选。
- 逐条撤销
- 能撤销的点「撤销」,撤销本身也记一条。不能撤销的写着原因,例如之后在 Plex 里又改过,或者已经超过一年。查看与撤销免费版同样可用,Pro 能力留下的改动也一样。
- 条目详情
- 在「查找条目」里打开电影、剧、季或单集,「最近的改动」列出这个条目上各项能力的改动,单集上的跳过前集进度在剧上也看得到。
- 保留一年
- 记录保留一年,之后在维护时段里清理。
中文本地化、演职人员中文化与 Edition 标签写下的值由 Cirvel 持续维护,不在这里逐条列出,想恢复原样时用各自页面的还原。
11.5Plex 数据库体检
维护队列里的「Plex 数据库体检」默认每周日在维护时段里检查一次 Plex 数据库是否完好,检查时 Plex 照常运行,免费版同样可用。结果显示在维护页这一行下方。
- 正常
- 显示数据库的大小。
- 发现问题
- 说明是索引损坏还是数据损坏,页首的「需要处理」同时提示。
- 没能检查
- 写明原因,下次再查。
打开「检查通过后压缩」(Pro)后,检查通过时先做一份含 Plex 数据库的备份,再让 Plex 压缩数据库,并记下压缩前后的大小。备份没有成功或维护时段已经结束时不压缩。
发现问题时 Cirvel 不会自动修复。数据损坏建议按「从备份恢复」里的步骤手动恢复 Plex 数据库。只是索引损坏时,可以先在主机上重建索引,把下面的 cirvel 换成你的容器名。
- 1在备份页立即备份一次,勾选 Plex 数据库。
- 2执行
docker exec cirvel s6-svc -d /run/service/svc-plex停止 Plex。 - 3执行
docker exec cirvel "/usr/lib/plexmediaserver/Plex SQLite" "/config/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db" "REINDEX;"重建索引。 - 4执行
docker exec cirvel s6-svc -u /run/service/svc-plex启动 Plex,回到维护页对这一行立即执行一次检查。
11.6备份
Cirvel 每天在维护时段里自动备份一次,所有版本都可用。备份的频率在「维护」页的每日工作里改,内容、目录与保留天数在「备份」页的设置里调整。
- Cirvel 数据库 默认备份,包含设置、许可、TMDB key 等凭据、片头片尾记录与演职人员缓存。
- Plex 数据库 可选,包含媒体库、观看记录与元数据,体积较大,备份期间需要额外的临时空间。
- 两项至少选一项。备份时不必停止 Plex,取的是同一时刻的一致快照。
- 备份目录默认是 /config/cirvel/backups,跟随配置目录一起保留。改到别处时填容器里的绝对路径,并选挂载的目录,否则重建容器时备份会一起丢失,保存时会检查能否写入。换目录后原目录里的备份不再列出,也不再自动清理。
- 配置目录只有容器的运行用户可读,经 SMB、NFS 或宿主机上的其他账号取备份文件时,请使用与 PUID 对应的账号。
- 默认保留 30 天,填 0 表示不自动删除。每次备份完成后删除过期的备份,只删 Cirvel 自己命名的备份文件,目录里的其它文件不受影响。
- 片头片尾的内容特征体积较大,不放进每天的备份,每周在备份目录里另存一份,没有变化时不存,保留最近 3 份。
随时可以点「立即备份」,在备份列表里下载或删除某一份。
备份文件没有加密,含 TMDB key 等凭据与许可信息,下载后请妥善保管,不要分享给他人。
11.7从备份恢复
- 1在「备份」页的备份列表里,从要恢复的那一份的菜单选「恢复」。
- 2阅读说明,勾选「我了解当前的 Cirvel 数据会被替换」,点「恢复」。
- 3完成后面板重新读取设置。
恢复只替换 Cirvel 数据库,设置、片头片尾记录与分析记录回到备份时的状态。恢复前会自动为当前的数据库做一份备份,不满意时可以用它再恢复回来。当前的许可保持不变,Plex 数据库不受影响。恢复同一台 Plex 的备份时,片头片尾的内容特征保持现在的内容,不随备份回退。备份来自另一台 Plex 时,换成那台服务器的内容特征,按 Plex 条目记下的状态随即清空,之后按这台 Plex 重新对应。
换了服务器或重建了 Plex,又不想丢掉新服务器上已有的数据时,用「合并到本机」代替恢复。把旧服务器的备份文件放进备份目录,经 SMB、NFS 或宿主机放入时请使用与 PUID 对应的账号,然后在备份列表里从那一份的菜单选「合并到本机」,弹窗先列出会补上的片头片尾分析、STRM 媒体信息与跳过选择的数量。合并只补本机缺少的数据,已有的一律保留,设置与许可不受影响,过程中不读网盘,合并前同样会自动做一份备份。
Plex 数据库只能在 Plex 停止时替换,面板不提供一键恢复。需要时展开备份页底部的「手动恢复 Plex 数据库」,按步骤在主机上操作。