Emby 实时扫描与文件监控 — 新媒体扔进去自动入库
为什么需要文件监控
当你往媒体文件夹里扔了新电影、重命名了一个电视剧集、或者删掉了一些文件后,Emby 得知道"哦,库里面加/减/改了东西",然后更新自己的数据库。
三种机制同时存在:
| 机制 | 触发时机 | 延迟 | 可靠性 | 资源占用 |
|---|---|---|---|---|
| 实时监控 | 文件变化立刻触发 | < 1 分钟 | 中(依赖文件系统支持) | 低 |
| 定时扫描 | Emby 后台按固定周期 | 分钟级 | 高 | 中 |
| 手动刷新 | 自己点击 Scan | 立即 | 最高 | 按需 |
推荐三种全开——实时监控能覆盖大部分场景,定时扫描兜底,自己心里有数时手动点一下最快。
实时监控(Real-time Monitoring)
开启位置
Dashboard → Library → 对应库 → Edit Library → Advanced Settings → Enable real-time monitoring。
勾上保存后,Emby 会对这个库的所有路径开启文件系统级的事件监听(inotify / ReadDirectoryChangesW)。当文件创建、修改、删除时,操作系统会立刻通知 Emby,Emby 自动把变化反映到媒体库。
支持的文件系统
实时监控只在支持文件系统事件通知的文件系统上有效:
| 文件系统 | 支持平台 | 支持情况 |
|---|---|---|
| NTFS | Windows | ✅ 原生支持 |
| ext4 | Linux | ✅ 原生支持 |
| APFS / HFS+ | macOS | ✅ 支持 |
| btrfs / zfs | Linux | ✅ 支持 |
| SMB / NFS(网络共享) | 跨平台 | ⚠️ 大部分不支持实时事件,靠定时扫描 |
| FAT32 | 跨平台 | ❌ 不支持 |
| Docker 容器内的 bind mount | Linux | ⚠️ 部分场景下失效,推荐关掉用定时扫描 |
实时监控失效的场景
以下情况即使勾了 Enable real-time monitoring 也不会自动刷新:
- 媒体路径是 SMB/CIFS 网络共享(绝大多数 NAS 都是这个)
- 媒体路径是 NFS 网络共享
- 跑在 Docker 里 + 媒体目录用了 Volume(而不是 bind mount)
- Windows 上媒体文件夹在 FAT32 盘上
- macOS 上跨 APFS 容器的磁盘(罕见)
这些场景下勾了也白勾,关掉它,只用定时扫描和手动刷新。
实时监控的常见问题
- 监控目录太多:如果一个库挂了几十个路径,或者单个路径下文件数量几万+,实时监控会吃不少内存。关掉,靠定时扫描。
- 监控延迟大:网络共享的事件传递有延迟,通常几秒到几十秒不等。
- Emby 扫描时其他进程还在写文件:比如你正在用 QBitTorrent 下载一个电影,下载完之前 Emby 就可能扫到了。可以让 Emby 等待文件稳定:Dashboard → Library → Advanced → Scan Behavior → 勾上 Wait for file to be idle before scanning。
定时扫描
Emby Server 在后台按固定周期扫描所有媒体库。默认值是 每周一次,可以调整:
Dashboard → Library → Advanced Settings → Scan for new media files。
可选频率:
- Never(只手动)
- Daily(每天一次)
- Every 3 days
- Weekly(默认)
- Every 2 weeks
- Monthly
网络共享场景下建议设 Daily——文件监控不工作,定时扫描是主要的自动更新手段。
手动刷新
三种情况用手动刷新最快:
全库刷新
Dashboard → Library → 对应库 → 菜单 → Scan Library Files。
对整个库重新扫描。适合批量加了一堆文件、或者改了很多文件名的场景。
单条刷新
Web Client → 找到具体的电影/电视剧/专辑 → 详情页 → 菜单(三个点)→ Refresh。
只刷新这一条,不动其他内容。
单条 Identify(元数据修复)
Web Client → 详情页 → 菜单 → Identify。手动指定元数据匹配结果,见 元数据自动抓取。
删除库重建
如果改了太多东西、或者 Emby 的数据库状态不对,可以:
- Dashboard → Library → 对应库 → Delete(只删库,不删媒体文件)
- 确认删除
- 重新 Add Library,选同样的路径
- Emby 全量重新扫描
这是最彻底的方案,耗时取决于文件数量(几百部电影通常 10~20 分钟)。
Emby 数据目录 vs 媒体目录
一定要搞清楚这两个是完全独立的:
| 目录 | 内容 | 备份策略 |
|---|---|---|
| Emby 数据目录 | 数据库、配置、插件、缩略图缓存、日志 | 必须定期备份。删掉 = 媒体库重建。 |
| 媒体目录 | 你的电影/电视剧/音乐文件 | 靠 NAS RAID / 备份硬盘保护 |
- Windows:
%LOCALAPPDATA%\EmbyServer\ - Docker:
-v 左边:右边里映射到/config的那个宿主机路径 - Linux:
/var/lib/emby/或 Emby 包指定的数据目录 - NAS:DSM 套件在
/volume1/@appdata/Emby/;Docker 在你自己映射的 config 目录
媒体文件不要放在 Emby 数据目录里。数据目录是给 Emby 自己用的,媒体目录要分开。
文件改名后 Emby 怎么处理
你把 星际穿越 (2014).mkv 改成 星际穿越·Interstellar·2014.mkv:
- 实时监控触发 Emby 扫描
- Emby 会尝试把旧条目和新文件匹配(如果只是改了名字但内容没变,大概率能匹配上)
- 如果匹配不上,旧条目变灰(文件丢失),新文件名重新扫描成一条新记录
稳妥的做法:改完名字手动点一下对应库的 Scan Library Files,立刻验证结果。