收起左侧

【缺陷/优化】1.2.0权限转换未优化快照路径,导致590万文件膨胀至15亿,转换需数千天

10
回复
102
查看
[ 复制链接 ]

0

主题

14

回帖

0

牛值

fnOS系统内测组

由于从 v1.2.0 版本开始,fnOS 存储空间引入了 Windows ACL 权限机制,系统需要对硬盘内的所有文件进行全量遍历以完成权限升级。但在实际执行中,我遇到了由于历史快照过多导致转换几乎卡死的问题,建议后续版本对此进行优化。

📊 我的设备与数据情况:

  • 硬件配置: 2 块 16T 希捷银河(Seagate Exos),组 RAID 1
  • 快照策略: 每 3 小时保留一份,共保留 256 份历史快照
  • 实际文件量:590 万个文件

❌ 遇到的严重痛点:

  1. 扫描极慢: 光是前期的扫描阶段就花费了整整 2 天时间。最终扫描出的文件总数高达 1,511,381,356(约 15 亿)
  2. 转换卡死/预计时间极长: 进入转换阶段后,又跑了 2 天,依旧在40%的位置,连 50% 都没完成。期间速度掉得非常厉害,系统显示的预计剩余时间甚至飙升到了几千天上万天

文件权限转换-bug反馈.png

💡 原因分析与优化建议: 虽然快照在物理数据上是增量的,但其目录树和指针结构(元数据)是全量的。当前的权限转换工具显然没有针对快照路径(如 .snapshots)做特殊处理,而是老老实实地把 256 个快照文件夹全部递归遍历了一遍。这直接导致 590 万的文件量被放大了 256 倍,变成了 15 亿个节点,给机械硬盘的随机 I/O 带来了灾难性的压力。

建议官方后续版本: 针对权限转换/底层升级工具进行优化。在遍历文件时,应当自动识别并跳过只读历史快照目录或者对快照的元数据权限更新采用更高效的批量合并/挂载处理方式,避免让多快照用户陷入无法完成升级的窘境。

补充说明:

由于系统提示“转换期间请勿重启”,截止目前,我的 NAS 已经连续开机转换了一个星期,但进度一直死死卡在 40% 左右的位置,I/O 速度慢如蜗牛。并且今天发现了一个更严重的新问题:NAS 在内网已经无法 ping 通,似乎彻底失联了。

⚠️ 友情提醒: 其它如果也保留了大量历史快照的飞牛用户,在官方修复此 Bug 前,请千万不要尝试权限转换! 否则极大概率会和我一样陷入进退两难、甚至设备失联的死局。

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

6

主题

1万

回帖

0

牛值

管理员

社区上线纪念勋章社区共建团荣誉勋章飞牛百度网盘玩家fnOS1.0上线纪念勋章

感谢反馈,这个我们跟进一下

感谢跟进。鉴于此 Bug 的严重性,针对后续的排查与优化,我补充一些更深层的底层现象供开发团队参考: [*]极其严重的内存泄漏/爆满: 在转换卡死在 40% 左右时,我通过后台排查发现,仅 `filemanager` 单个进程就  详情 回复
昨天 04:37
感谢跟进。鉴于此 Bug 的严重性,针对后续的排查与优化,我补充一些更深层的底层现象供开发团队参考: 极其严重的内存泄漏/爆满: 在转换卡死在 40% 左右时,我通过后台排查发现,仅 filemanager 单个进程就吃掉了  详情 回复
昨天 03:48

0

主题

4

回帖

0

牛值

江湖小虾

我30份快照。。。5000多万个文件。。。唉。。

30个不算多了.....但是文件数会成倍增加  详情 回复
昨天 03:55

0

主题

14

回帖

0

牛值

fnOS系统内测组

昨天 03:55 楼主 显示全部楼层
秋2986 发表于 2026-7-4 00:54
我30份快照。。。5000多万个文件。。。唉。。

30个虽然不算多.....但是文件数会成倍增加

你那边显示的预计时间是多久,要是太长的话就别等了,没那么长可以等一下。

0

主题

14

回帖

0

牛值

fnOS系统内测组

昨天 04:37 楼主 显示全部楼层
飞牛产品同学 发表于 2026-7-3 14:28
感谢反馈,这个我们跟进一下

感谢跟进。鉴于此 Bug 的严重性,针对后续的排查与优化,我补充一些更深层的底层现象供开发团队参考:

  • 极其严重的内存泄漏/爆满: 在转换卡死在 40% 左右时,我通过后台排查发现,仅 `filemanager` 单个进程就吃掉了 93% 以上的物理内存(我总共 32G 内存几乎被彻底榨干),同时系统的 8G Swap 虚拟内存也被全额占满。面对海量快照的元数据遍历,系统显然缺乏有效的内存释放或分批处理机制。
  • I/O 资源分配不合理导致网络与系统死锁: 随着任务堆积,`filemanager` 产生了灾难性的机械硬盘寻道延迟。不仅 I/O 极其缓慢,甚至引发了全系统的资源饥饿雪崩:
  • 前期(40% 以前): 权限转换速度基本正常,系统各项服务未见明显异常。
  • 中期(卡死在 40% 后的前几天): 进度条彻底停滞,但此时 Web UI 和 SSH 仍能正常连接。
  • 后期(失联爆发期): 表现为内网 Ping 正常,但 Web UI 开始出现间歇性断流(由于内存与 I/O 资源被长期深度蚕食,导致底层请求因资源匮乏、长时间排队而超时);最终演变成只有网卡本能回复 Ping,而应用层完全死锁,Web UI 和 SSH 彻底无法连接(提示 `channel is not opened`),整台 NAS 完全失联。

🎯 最终建议: 这次大版本升级引入 Windows ACL 权限是一件好事,但工具底层对于“多快照导致的元数据膨胀”显然缺乏预案。希望官方不仅要优化扫描与处理路径,还要重点优化内存分配机制,避免在运行任务时间长的时候内存占用过高却毫无速度,同时必须合理分配 I/O 资源优先级,防止高频转换任务过度挤占带宽,导致网络等核心应用层服务因资源耗尽而中断,引发用户设备“内存死锁”并失联。

1

主题

7

回帖

0

牛值

江湖小虾

我的转换过程也有很多问题,两台机器都出问题,转换导致系统持续卡死 OOM 杀进程循环,我倒没楼主这么多的文件量,我这是几千万到1亿多文件,十几TB级别。

现在一台机器转换到一半重启后直接没有转换提示了,另一台因为这个问题重装了系统,显示转换完成了,但转换的数量相比之前差很多,等于两台机器实际都没转换完成,但已经不提示要转换了

数量和之前不一样应该也是正常的,因为之前转换的时候已经转了一部分了,改完的权限已经生效了,之后显示的应该是剩余的文件。  详情 回复
昨天 23:31
一般不用重装吧,如果是显示几千上万天卡IO,实在没办法完成转换的话。 可以重启一下,然后把快照删掉,再重新转换应该就好了。  详情 回复
昨天 23:27

0

主题

14

回帖

0

牛值

fnOS系统内测组

昨天 23:27 楼主 显示全部楼层
pepper 发表于 2026-7-4 11:39
我的转换过程也有很多问题,两台机器都出问题,转换导致系统持续卡死 OOM 杀进程循环,我倒没楼主这么多的 ...

一般不用重装吧,如果是显示几千-几万天卡IO,实在没办法完成转换的话。
可以手动重启一下,没失联的话用webui重启,失联的话就用机箱实体按键重启。
然后把快照删掉,再重新转换应该就好了。

我快照其实只有不到10份,没想到过是快照的问题。数量问题确实是有问题的,2号机最后一次是一共1700万文件,才转换了800多万,我看内存又要撑爆了,显示还要几百天才能完成,就手动重启了下,重启完直接没提示了  详情 回复
11 小时前

0

主题

14

回帖

0

牛值

fnOS系统内测组

昨天 23:31 楼主 显示全部楼层
pepper 发表于 2026-7-4 11:39
我的转换过程也有很多问题,两台机器都出问题,转换导致系统持续卡死 OOM 杀进程循环,我倒没楼主这么多的 ...

数量和之前不一样应该也是正常的,因为之前转换的时候已经转了一部分了,改完的权限已经生效了,之后显示的应该是剩余的文件。

1

主题

7

回帖

0

牛值

江湖小虾

Nebula 发表于 2026-7-4 23:27
一般不用重装吧,如果是显示几千-几万天卡IO,实在没办法完成转换的话。
可以手动重启一下,没失联的话用w ...

我快照其实只有不到10份,没想到过是快照的问题。数量问题确实是有问题的,2号机最后一次是一共1700万文件,才转换了800多万,我看内存又要撑爆了,显示还要几百天才能完成,就手动重启了下,重启完直接没提示了
你打开系统设置——存储空间管理,那里会显示没转换完的硬盘,点一下就可以继续转换了  详情 回复
11 小时前

0

主题

14

回帖

0

牛值

fnOS系统内测组

11 小时前 楼主 显示全部楼层
pepper 发表于 2026-7-5 10:58
我快照其实只有不到10份,没想到过是快照的问题。数量问题确实是有问题的,2号机最后一次是一共1700万文 ...

你打开系统设置——存储空间管理,那里会显示没转换完的硬盘,点一下就可以继续转换了。
重启后不会自动弹窗的

这我肯定知道啊,我都重启多少次了  详情 回复
41 秒前

1

主题

7

回帖

0

牛值

江湖小虾

Nebula 发表于 2026-7-5 11:03
你打开系统设置——存储空间管理,那里会显示没转换完的硬盘,点一下就可以继续转换了。
重启后不会自动弹 ...

这我肯定知道啊,我都重启多少次了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则