扫描与回收站
管理储存库的扫描策略、数据同步机制,以及书籍的软删除与硬删除(回收站)功能。
扫描、开始刮削与清理的区别
当您添加好储存库后,源列表上通常会出现几个容易混淆的操作:
- 扫描 / 开始刮削:对整个储存库重新建立目录索引,导入新增书籍,并补齐基础元数据
- 单本在线刮削:在“书籍管理 -> 编辑书籍”里,只针对某一本书搜索并应用作者、封面、简介等在线信息
- 清理:对当前储存库执行脏数据清理,删除数据库中已经失效的记录
其中最容易误解的是“开始刮削”这个名字。当前实际行为是:对当前储存库触发扫描任务,不是只改一本文档元数据。
扫描任务会做什么
当您点击储存库列表中的“扫描”或书籍管理空列表中的“开始刮削”后,系统会按照以下策略处理当前储存库:
1. 结构识别规则
- 文件夹即书名:系统将储存库根目录下的第一级或第二级文件夹名称,自动识别为书籍的标题。
- 文件即章节:文件夹内的音频文件(如
.mp3、.m4a),会被自动识别为该书的章节。 - 封面提取:系统会自动寻找文件夹内的图片文件(如
cover.jpg、folder.png),或者直接提取音频文件内嵌的封面图(ID3 标签),作为该书的封面。
2. 增量扫描与断点续传
- 极速增量更新:如果您在网盘或本地新增了书籍,再次点击“扫描”时,系统仅会识别并导入新增的书籍和章节,不会重复处理已有内容,速度提升 10 倍以上。
- 断点续传:如果您在扫描海量书籍时意外中断(断网或重启服务),系统会自动记录断点位置。下次启动扫描时,将自动从上次断开的位置继续,无需从头开始排队。
- 简介补录:如果扫描发生在文件下载完成之前,下载完成后再次扫描即可从
desc.txt补齐书籍简介,无需先删除书籍再重新导入。本地储存库开启文件监控后,新建或下载完成后重命名到位的desc.txt会合并触发后续扫描。
3. 多端实时状态推送 (SSE)
当后台在执行繁重的扫描任务时:
- 您无需手动刷新页面,扫描进度条与当前处理的文件状态会实时推送到所有已登录的网页端和移动端设备。
- 您可以随时在“任务与日志”页面查看具体的扫描日志和耗时。
从哪里触发
- 网页端储存库卡片:点击“扫描”
- 移动端储存库卡片:点击“刮削”
- 书籍管理空列表页:点击“开始刮削”
这些入口都会把任务交给后台异步处理。执行后建议直接去 任务与日志 查看当前储存库的任务进度。
清理任务会做什么
“清理”不是重新扫描,而是专门处理数据库里还存在、但储存库里已经没有实体文件的记录。
- 会检查当前储存库下的书籍和章节记录
- 找出已经失效的路径或文件
- 将这些记录从数据库中清理掉,避免列表里残留“幽灵书籍”
注意:清理操作针对数据库记录,不会删除您 NAS、本地硬盘或网盘上的原始音频文件。
回收站与数据清理
在日常维护中,如果您发现扫描出的书籍信息有误,或者不再需要某本书,您可以使用回收站功能。
1. 软删除 (放入回收站)
在书籍管理或详情页点击“删除”时:
- 该书籍会被移入回收站(软删除),从您的首页和书库列表中消失。
- 系统的底层数据依然保留,您可以随时在“回收站”中将其一键恢复。
2. 物理删除 (硬删除)
如果您确定不再需要这本书,并希望释放数据库空间:
- 在管理员专属的回收站页面(双端均可进入),您可以执行物理删除(硬删除)。
- 这将彻底清除该书在数据库中的所有记录(包括章节、封面关联、播放历史)。
3. 数据安全底线 (永不删原文件)
请您完全放心:
Leelaa Reader 在任何情况下,都绝对不会删除您 NAS、本地硬盘或网盘上的原始音频文件! 所有的删除操作,仅仅是清除 Leelaa Reader 数据库中的索引记录。
