版本与环境
- 系统版本: X86
- NAS 系统:fnOS 1.1.30
- 客户端系统:Windows 11 专业版 25H2(26200.8246)
- 设备环境:
- 设备类型:NAS 为物理机,客户端为台式机/笔记本
- 飞牛同步客户端版本:V0.1.9(19c5172)
- NAS 端飞牛同步应用版本:V0.20.7(日志中确认)
- 下载工具:夸克(PC 客户端)
- 同步任务模式:仅上传(本地路径
C:\Users\DIMONVIC\Desktop\电影电视剧 → NAS 路径 /vol2/1000/电影电视剧)
BUG 现象(含复现步骤)
- 在夸克客户端中下载文件,将保存路径直接设置为飞牛同步监听的本地文件夹(例如
C:\Users\XXXX\Desktop\电影电视剧\电影\)。
- 文件开始下载后,夸克会在文件夹内生成
.qkdownloading 临时文件,此时文件尚在下载中,大小持续增长。
- 飞牛同步客户端在文件尚未下载完成时(即
.qkdownloading 文件还在变化中)就检测到文件并开始上传到 NAS。
- 夸克下载完成后,会自动将
.qkdownloading 文件重命名为正常的文件名(如 .mkv),此时本地触发重命名事件,飞牛同步将 NAS 端也重命名,但不会重新上传完整文件。
- 最终 NAS 端得到的文件只有之前上传的那部分不完整数据,文件大小明显小于本地完整文件,导致文件无法正常使用。
日志证据(节选):
- 日志中上传了
飞驰人生3.Pegasus.3.2026.2160p.HQ.WEB-DL.H265.HDR.DTS-c623323df6de.mkv.qkdownloading,上传时文件大小仅 50331648 字节(约 48 MB)。
- 后续该文件重命名为
飞驰人生3.Pegasus.3.2026.2160p.HQ.WEB-DL.H265.HDR.DTS.mkv,但无重新上传记录,NAS 端文件大小仍为原先的不完整数据。
- 类似情况还发生在
The.Bo... 等多个下载文件上。
期望行为:
对于正在被其他程序写入的文件(如 .qkdownloading 临时文件),飞牛同步应等待文件写入完成且文件关闭/重命名完成后再触发同步,或对于已上传的不完整临时文件,在重命名后自动校验并重新上传完整文件,确保最终数据一致。
四、出现频率
- 必现。只要在下载过程中文件被飞牛同步监听到,即可复现。
五、日志文件
- 已按规范从“飞牛同步 - 设置 - 导出日志文件”导出完整日志(
logs.log),见附件。
- 日志中明确记录了
.qkdownloading 文件的上传、重命名过程,以及文件大小等信息。
补充说明:
本问题属于文件实时监控策略缺陷——同步客户端未区分“临时文件”与“完整文件”,在文件尚未写入完毕时就触发上传,且后续重命名/写入完成后未做完整文件的增量或全量重传校验,导致数据缺失。望技术人员重点排查文件系统事件过滤策略及上传完成后的校验逻辑。