ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Sonarr全攻略:从零搭建自动化剧集管理与追更系统

Sonarr全攻略:从零搭建自动化剧集管理与追更系统 玩转 Sonarr从零搭建自动化剧集管理与追更系统先聊个场景你手上有 NAS有 PT 站或各类下载工具每次追新剧都得自己手动去站点搜资源、下载、等文件分类命名再手动整理到媒体库目录里。前几集还行追到十几集、同时跟进好几部剧的时候光是维护这套流程就足够折磨人了。而 Sonarr 解决的就是这件事——它是目前社区里公认最成熟的剧集自动管理工具能自动搜资源、自动下载、自动重命名、自动归位到你指定目录还能在你想要更高清版本时自动替换旧文件。这篇文章主要面向两类人一类是刚接触家庭媒体库、想用 Sonarr 把追剧流程自动化的新手另一类是已经在用 Plex、Emby、Jellyfin 搭好了播放端、但发现手动管理剧集太累的进阶玩家。读完这篇你能理解 Sonarr 的核心设计逻辑知道怎么部署、怎么配置索引器和下载端也能避开我踩过的那些配置坑。1. 内容整体设计与思路拆解Sonarr 到底在替你做什么在动手部署之前先理解 Sonarr 的设计理念。它不是一个简单的下载器而是一套完整的“剧集数据流管理中枢”。它做的事可以拆成三层信息感知层、决策调度层、文件管理调度层。信息感知层面Sonarr 会连接你的索引器indexer也就是剧集资源的来源站同时关联 TMDB 这类剧集元数据库维护你关心的剧集状态。哪个节目什么时候开播、哪一集什么时候出了 WEB 版或蓝光版Sonarr 会主动追踪。决策调度层面Sonarr 根据你自己的画质偏好、语言偏好、存储路径优先级自动判断某个剧集的某一次下载值不值得执行。比如你设置“1080p 优先若没有才收 720p”Sonarr 就会严格按这个顺序去匹配资源而不是抓到什么算什么。文件管理调度层面下载完成后它会接替你手动整理那一大堆The.Show.S01E01.1080p.WEB-DL.AAC.x264-GROUP这样的目录和文件名按你预定义的规则重命名移动或硬链到媒体库目录并在播放软件里触发刮削刷新。这三层设计互相独立但协同工作。它的核心价值在于“主动”和“闭环”你不用每天手动检查资源出没出不用纠结该存到哪个目录不用在文件名混乱时一个个手工修正。Sonarr 的思路是把“看剧”这件事从“人工下载流程”变成“订阅一个节目的状态变更”节目一经订阅后续的分集监控、版本选择、文件归档都是自动化流程的一部分。1.1 为什么说 Sonarr 像“追剧的管家”可以把它理解成你请了一个全职追剧管家每天替你盯着资源站看到你追的剧有新资源就立刻判断要不要买画质、大小、格式是否符合要求买下来之后还顺手签收、贴好标签、放到该放的架子上。你只需要告诉它两件事我想看哪些剧我的要求是画质优先还是体积优先。剩下的交给它。这个“管家”的另一个好处是你不用依赖单一资源渠道。Sonarr 允许你同时挂接多个索引器和多个下载客户端调度机制会自动对比可用资源、过滤假资源、优先选择几何命中就是同时满足多个索引器条件的资源。这也是它和工作目录单纯写脚本搜资源的最本质差异它有一套完整的评分和决策逻辑而不是看到资源就无脑抓。1.2 这套体系适合什么样的人家庭媒体库用户是最大的受益群体。如果你已经在用 Plex、Emby、Jellyfin 搭建了自己的播放在线服务端那么 Sonarr 就是“内容输入端”的引擎之一专门负责剧集这一条线。配合 Radarr 管理电影、Lidarr 管理音乐、Readarr 管理电子书可以形成完整的内容自动化供给链。当然说实话不是所有人都需要 Sonarr。如果你平均一个月看不了两部剧或者从不整理文件名直接丢播放器硬凑也能看那确实不需要投入这层复杂度。但只要你开始认真搭建媒体库希望保留可刮削、可管理、画质可控、信息完整的剧集收藏这一步迟早要迈出去。2. 部署与基础配置实操Docker 是最稳妥的落地方案聊回部署。Sonarr 官方支持直接用安装包跑在 Linux、Windows、macOS 上但我个人强烈建议在 NAS 或者任何 Linux 服务器上用 Docker 方式部署。原因有几点依赖隔离不用考虑 Mono/.NET 版本冲突、迁移方便一条 compose 文件到处跑、降级回滚容易。Windows 下直接装 exe 也不是不行但系统更新、路径权限问题会频繁出现尤其当你的媒体目录在网络驱动器上时服务账户权限就足够折腾一晚上。以 Docker Compose 为例最小可用的配置如下version: 3.8 services: sonarr: image: lscr.io/linuxserver/sonarr:latest container_name: sonarr environment: - PUID1000 - PGID1000 - TZAsia/Shanghai volumes: - /path/to/sonarr/config:/config - /path/to/downloads:/downloads - /path/to/media/tv:/tv - /path/to/media/tv-anime:/anime ports: - 8989:8989 restart: unless-stopped注意看几个关键目录的映射/config保存 Sonarr 的全部配置和数据/downloads是各类下载客户端存放完成文件的地方/tv和/anime是最终的剧集媒体库目录。这三个路径的划分逻辑在后面配置索引器和媒体库时会反复用到建议一开始就规划清楚。2.1 PUID/PGID 和目录权限的坑PUID/PGID 是 LinuxServer 镜像体系里最重要的环境变量。Sonarr 容器内部以非 root 用户运行通过 PUID/PGID 映射到宿主机上你真实使用的用户 ID确保它创建的文件夹、重命名的文件在宿主机上你有权限操作。如果这两个值设置错了最典型的症状就是容器启动正常但 Sonarr 创建的目录在宿主机上用你的账号删不掉或者反过来Sonarr 对已有的媒体文件没有写权限导致硬链接失败。查看你当前用户 ID 的命令是id -u和id -g。多数家庭服务器常用的用户是 1000所以默认配置通常不会出错。但如果你跑在类似群晖这种系统上admin 用户 UID 可能是 1024 或其它值那就不能套用默认值了。2.2 初始化时几个容易忽略的界面选项第一次打开http://你的IP:8989会进入初始设置向导。媒体库目录这里由于我们用的是 Docker 映射所以容器内的/tv就是最终媒体库根目录。如果你手里已经有存量剧集目录可以直接在这里添加Sonarr 会扫描现有文件并匹配到对应剧集记录上。设置里有一个 “是否重命名已存在文件” 的选项默认开启。这个选项我建议保持开启但要留意 Sonarr 并不会机械地全量重命名所有文件它只会调整文件名以匹配你定义的规则。如果匹配不到剧集信息它会保持原文件名不动这个设计很安全不会搞乱你的存量库。另外在初始化阶段就需要设置“Root Folder”也就是上面的/tv。如果你想区分美剧和动漫提前建好两个根目录再分别添加比之后频频改根目录灵活得多。Sonarr 的根目录一旦绑定到剧集上之后换根目录需要额外的手动确认所以刚开始布局很重要。3. 索引器与下载客户端的联动逻辑安装部署只是热身真正决定 Sonarr 体验的是索引器和下载客户端这一层。索引起源决定你能否找到资源下载端决定你是否能稳定拉回文件。这两块在 Sonarr 里是独立配置、联合调度的。3.1 索引器类型选择Sonarr 支持两大类索引器“Newznab” 标准和 Torznab 标准。前者面向 Usenet 资源后者面向 BitTorrent 私有站点。对国内用户来说Torznab 用途更广不少 PT 站或综合资源站都提供 Torznab API 接口能在 Sonarr 里直接添加并搜索。配置索引器时最关键的三项是站点的 API 地址、API Key、以及类别映射Category Mapping。很多人在这一环节卡壳就是因为类别映射没对。比如站点把“电视剧 720p”定义成类别 5030把“电视剧 1080p”定义成类别 5040而 Sonarr 默认只会请求它逻辑里的“TV”类别 ID如果你没做映射搜索到的资源数量会骤减甚至为零。具体操作是在索引器设置里点开对应条目的“Categories”标签把站点实际使用的类别 ID 和 Sonarr 的 TV、TV-HD、TV-SD、TV-UHD 等逻辑类别逐个对应上去。做完之后不妨被动等一场 RSS 校验或者手动触发一次全量搜索看看返回结果数量和实际站点上能否关键字搜索匹配就能确认映射是否有效。3.2 下载客户端接入与测试Sonarr 支持的下载客户端非常多qBittorrent、Transmission、Deluge、SABnzbd、NZBGet 都在列表里配置思路是趋同的提供地址、端口、认证信息然后 Sonarr 通过 API 与客户端交互加任务、查状态、拿回完成路径。以 qBittorrent 为例配置前提是先把 qBittorrent 的 Web UI 开起来建议同时在 qBittorrent 设置里打开“为外部软件保存未完成的种子Keep incomplete torrents”并设定一个专门的incomplete目录。这样 Sonarr 只认“下载完成且已经落到最终下载目录”的资源流避免误判未完成文件。这里有一个很关键的坑Sonarr 判断下载完成的依据不是你人在人工界面上看到的“100%”而是文件路径是否出现在它指定的下载目录里。如果 qBittorrent 下载完成后还处于做种状态但文件已经落盘这是可以接受的Sonarr 可以“复制”而不是“移动”但如果你的 qBittorrent 开启了“仅把完成文件移动到下载目录”但网络存储挂载路径两侧不一致就会导致 Sonarr 扫描不到已完成文件。典型场景是 qBittorrent 跑在 /volume1/downloads而 Sonarr 挂载的是宿主机的 /volume1/downloads两者物理相同但容器内路径不同Sonarr 就傻眼了。解决办法要么让两个容器挂同一个路径要么在 Sonarr 的下载客户端设置里开启“远程路径映射”Remote Path Mapping。3.3 为什么推荐“硬链接”而不是复制当 Sonarr 从下载目录把文件移到媒体库目录时你可以选择移动Move、复制Copy或硬链接Hard Link。在 Docker 部署、且下载目录和媒体库目录在同一个文件系统/同名卷下的情况下我最推荐硬链接。硬链接本质上是同一份数据块上的多个目录条目创建成本极低、瞬间完成不额外占用存储空间。这意味着一部剧下载完成后既能继续留在下载目录做种又能同时以标准名称出现在媒体库中两份“文件”共享同一份磁盘空间。硬链接成立的前提是“同一文件系统”跨文件系统比如 download 在 volume1tv 在 volume2就会失败。另一个容易踩的坑是部分下载客户端在完成时会“二次改名”比如先把临时文件名改名成最终文件名如果这个过程发生了数据迁移就可能破坏原本可以建立硬链接的条件。所以尽量让下载客户端直接把最终文件放在一个大目录下把整理工作交给 Sonarr。4. 命名、目录与文件管理的高级玩法有一次我帮朋友看他家的 Plex 库发现所有影片都被 Sonarr 按默认格式重命名成了“电视剧名 S01E01”但季目录是空的。他一脸问号为什么 Sonarr 不按我预设的“剧名/季 S01/集号 S01E01”来整理文件后来发现他在“设置-媒体管理”里并没有开启“把季目录自动放进剧集目录”这个选项。这类细节恰恰就是 Sonarr 和普通下载器拉开差距的地方。4.1 命名规则模板与自定义Sonarr 的命名模板由一堆空格分隔的代号组成比如{Series Title} - S{season:00}E{episode:00} - {Episode Title} [{Quality Title}]。它不仅仅是一个格式规范更影响播放器刮削效率和可读性。很多人一开始不想认真选默认模板用得很开心直到某天自己要从外部硬盘找一集很老的剧发现所有文件都叫“The Show - S01E05 - Episode Name.1080p WEB-DL AAC2.0 H.264”才知道规范命名的价值。我个人的经验是中文用户建议在标题后加{Release Group}方便出问题时追溯上传组但要小心某些特殊字符冒号、问号、斜杠在 Windows 文件系统中是非法字符如果剧集标题里带冒号Sonarr 会自动替换为中文冒号或者空格这个替换逻辑也对 Windows 兼容做了适配比较省心。4.2 升级画质与删除旧档的策略Sonarr 支持一种“升级”机制资源出版后若有更高的画质或质量评分出现它会自动重新下载并以新代旧把旧文件删除或覆盖进去。这个功能对有收藏强迫症的用户是福音但也可能造成资源反复下载的风险。比如某部剧第一集先出了 720p WEB-DL第二天又出 1080p BluRaySonarr 会把两版都下载下来然后择优留下。如果你的存储空间紧张建议在“媒体管理-文件管理”里把“删除旧文件前检查是否还在做种”打开否则会把还在做种的文件从下载目录里删掉导致做种率降低。升级策略的核心是“质量档案优先级”你可以在每个剧集上单独调整质量档位而不是全局一刀切。比如“采集最佳画质档”对老剧有效但新番直接在 WEB-DL 档追更就足够不必为了一个蓝光原盘多等几天或占更多空间。4.3 根目录与剧集元数据刮削Sonarr 在保存文件后会生成.nfo等元数据文件前提是你开启了对应媒体的刮削器。和 Plex/Emby 的自有刮削不同Sonarr 生成的.nfo文件更接近 Kodi 体系的标准读取速度也更快。不建议同时开启 Sonarr 的 Kodi 元数据和 Plex 元数据二者的.nfo标签结构有冲突会出现播放器识别异常的情况。开启刮削器后文件名不建议再包含“中文剧名英文名年份”这类超长前缀字面越简短越好因为刮削器认 TMDB ID 和标准命名哪怕你的资源标题里带了CHS这种语言标记它也只当字符串处理不影响匹配结果。5. 常见问题与排查技巧实录下面这些是我在多次安装和配置过程中乃至帮社区用户排查时反复遇到的典型问题整理成一个速查表遇到类似症状可以直接对号入座。问题现象可能原因排查方向Sonarr 搜不到任何资源索引器 API 地址或类别映射错误检查索引器设置和 Categories 映射搜索到资源但一直“抓取失败”下载客户端连接信息不对在下载客户端里点击“测试”看返回错误文件下载完成但 Sonarr 显示“未完成”下载目录路径不一致配置 Remote Path Mapping 或统一卷挂载路径文件被下载但没被移动到媒体库硬链接失败/根目录权限不足检查 PUID/PGID 和跨文件系统问题播放器刮削不到剧集信息命名不规范或禁用了刮削器检查文件命名和媒体管理里的元数据选项5.1 “抓到一半失败”的排查思路最常见的是“抓取失败”或者“Grab Failed”。这类问题的关键字是“失败”它意味着 Sonarr 已经向下载客户端发送了任务请求但客户端没有正确接收或无法完成。优先查看下载客户端的 Web UI 是否手动设置了下载目录如果 qBittorrent 里配置了“保存到自定义路径”而 Sonarr 对这个路径不可见就会出现两边信息对不上。其次检查 API 用户权限qBittorrent 默认 Web UI 用户是 admin如果你改过密码没同步到 Sonarr测试连接时能通但那是因为旧会话缓存长时间后会诡异失效。5.2 “不下载 4K 资源”的原因不少人在配置顶级品质后Sonarr 依然只选择 1080p。这通常不是索引器没有 4K 资源而是站点把 4K 资源归类到“4K TV”独立类别而你在索引器映射时没有把 4K 类别启用到当前品质档案。回索引器设置里把类别勾选上再去当前剧集编辑页面把“品质配置文件”重新切到“任意档位或某档以上”保存后手动搜索一次会立刻看到 4K 资源出现在候选列表里。5.3 定时任务与 RSS 节奏调优Sonarr 的 RSS 同步频率默认每 15 分钟一次通常够用。但如果你用公有站点搜刮频率过高容易被判定为机器人导致 IP 被限。建议在“索引器-每个索引器-设置-选项”里把“RSS 刷新间隔”拉长到 30-60 分钟而关键剧集的首播集可以手动点搜索。Sonarr 的“搜索”是主动行为RSS 是被动行为两者互不排斥。6. 生态联动与自动化闭环Sonarr 只是第一块拼图如果只单独用 Sonarr你已经能省掉大部分手动追剧的烦恼。但更出色的体验来自于把它和请求管理、播放服务组合成一个自动化闭环。6.1 接入 Overseerr / Jellyseerr 做统一请求入口家里不止你一个人用媒体库时直接在 Plex/Emby 客户端里找片没问题但想要“点播一部还没收藏的剧”就有点麻烦。接入 Overseerr针对 Plex 用户或 Jellyseerr针对 Jellyfin 用户后家人朋友只要在网页端搜索剧名、点“请求”系统会自动帮他们匹配 TMDB 信息、创建 Sonarr 订阅、在资源发布时自动追更。Overseerr 和 Sonarr 的联动原理不难Overseerr 持有各媒体库工具的服务端 API搜索时先查 Plex/Emby/Jellyfin 是否存在不存在则调 Sonarr 的 API 创建待添加记录。这里建议在 Overseerr 里为 Sonarr 设置“4K 分离”时单独建一套品质档案因为大部分人点“我要看”并不关心清晰度但总有人对 4K 有执念分开来就不会互相干扰。6.2 用 Tdarr 做转码联动Sonarr 自动入库的文件格式不可控有时是 x265有时是 x264播放端兼容性参差不齐。Tdarr 这类工具能监听目录变化把非标准编码的文件自动转成你想要的格式。个人建议仅仅在文件确实播放卡顿时再考虑转码而不是把全部入库文件无脑转一次因为转码通常费时间也费电对多数现代播放端x265 HEVC 往往能硬解不需要再折腾。6.3 定时清理与磁盘空间监控Sonarr 自带的磁盘空间监控不具备主动告警能力但它有“下载完删除种子”之类的辅助选项。生产环境建议接入一个简单的磁盘告警脚本或用 Netdata 监控/tv所在卷的占用率当超过既定阈值就通知你。这种小细节看似无所谓但真到某天硬链文件把系统盘塞满才发现那就已经晚了。7. 实操经验汇总与最后的小技巧从部署到接入下载端再把 Sonarr 挂进家庭媒体生态之后你会发现原来很多“手动追剧”的步骤都被慢慢隐形掉了。我现在日常看剧的流程基本是在 Overseerr 里搜一下剧名点“请求”关上页面去看别的。等到想起这部片子它已经安安静静地躺在媒体库里文件名规整、刮削完整打开就能直接播。最后分享几个小细节。第一Sonarr 的备份功能别关让它按天自动备份配置到/config/backups并把这个目录一起备份到异地存储。配置本身不值钱但一旦索引器、下载端、命名规则全调好之后重新从零配置一遍非常痛苦。第二设置-UI里可以自定义头像主题和语言界面语言在最近版本已经原生支持中文新手不用再去翻英文文档。第三如果你的下载端和媒体库不在同一台机器上建议优先用远程路径映射而不是 NFS 乱挂载少踩一半的路径权限坑。折腾 Sonarr 这件事投入的时间主要在前期规划上把目录结构、PUID/PGID、索引器分类想清楚后面基本一劳永逸。如果这篇文章能让你少趟一部分浑水也算值了。
返回列表