夜雨聆风学习资料网

ARTICLE · 1258496

开源软件MangoDisk ,扫一扫解决C盘爆红

开源软件MangoDisk ,扫一扫解决C盘爆红

磁盘清理工具是最不该让人放心的品类:它要你交出删除权限,还要你相信它删得对。所以这次没看宣传页,直接读 MangoDisk 的源码。

MangoDisk 是 Rust + Tauri 2 写的跨平台清理工具,macOS、Windows、Linux 三端同源,GPL-3.0。作者 harry0703,此前做过 MoneyPrinterTurbo。

数字:2026 年 8 月 1 日建仓,不到三个月 4550 星、307 fork,发了 21 个版本,最新 1.2.0。仓库 1792 个文件,651 个 .rs、230 个 Vue 组件,清理规则是 287 个独立 TOML。功能对标 CleanMyMac——截图左栏那八项,外加一个「AI 解读」。

官方 README 截图:深度清理扫出 82 项、估算可清理 182GB

第一眼看到的东西

深度清理一次扫出 82 项、估算可清理 182GB,默认按「智能推荐」勾中 58 项、56.4GB。底栏还提示「需要关闭 14 个应用」——同类工具常省掉这步。

空间分析支持矩形图与旭日图,能一路下钻。截图这一层 169 个文件夹、297,662 个文件,最大的 ms-playwright 占 4.41GB。清理能力不硬编码,全部走声明式 TOML,按平台分目录,想加规则改文件就行。

官方 README 截图:矩形图定位到 ~/Library/Caches 的 16.4GB

代码里的三个硬细节

一、规则在编译期验完。build.rs 把规则目录读出来交给 schema 解析,任何一条不合法就 panic!,编译直接失败。坏规则进不了安装包,这比运行时兜底干净得多。

mangodisk-core/build.rs,L26–L38:规则解析失败即 panic,编译不通过(点开可放大)

二、有一份不能碰的清单。protected_paths.rs 硬编码 37 个顶层目录:.ssh、.gnupg、.aws、.kube、.password-store、.git-credentials,也包括 src、code、projects、onedrive、virtualbox vms;.git、.hg、.svn 在任意层级都受保护。注释说得直白:清单刻意比「用户可配置的保留列表」更窄。

cleanup/rules/protected_paths.rs,L1–L21:自动清理永不接管的顶层目录

三、重复文件不靠文件名判。先按大小分组,再对头、中、尾各取 16KiB 做 BLAKE3 采样,命中才做全文哈希。硬链接别名提前剔出候选,避开「删了也不省空间」的假重复。

这些还要在 Windows、macOS、Ubuntu x64 与 arm64 四处 CI 上跑完整测试和三端打包校验。

但有几件事得说清

社区很薄。4550 星只对应 14 个 watch、8 个待处理 issue;438 次提交里 425 次来自作者一人。不到三个月、单人主导,迭代快是真的,bus factor = 1 也是真的。

它会装内核驱动。资源监控要在 Windows 读 CPU 温度,二进制里内嵌了 PawnIO 2.2.0 安装包(3,410,960 字节)和 Intel、AMD 两个内核模块,SHA256 钉死且有测试断言。驱动来源正规,但对清理工具来说,这是超出预期的权限面。

AI 解读会把路径发出去。免费额度走 mangodisk.app/api/v1/ai/explanations,请求体上限 128KB,带 HMAC 签名。界面披露倒是老实:「发送条目名称、用途信息及相关完整路径;不发送文件内容」。但路径里通常带用户名和项目名,介意就切自定义服务或关掉。

README 的界面图全部外链自家 CDN,仓库内一张截图都没有,官网一挂 README 就空了。另外 GPL-3.0,闭源集成进商业产品不行。

适合谁

适合想找一款能读懂、能改、能自己加规则的清理工具的人。它把安全做成了可审计的代码——受保护目录清单、编译期规则校验、CLI 语义化退出码(4 要确认、6 权限不足)——而不是一句「我们很安全」。CLI 默认只扫描不写盘,非交互环境不给 --yes 就直接以 4 号码结束,误删的门从命令行就关上了。

一句话:这是少数敢让你读源码的清理工具。但第一次按清理键之前,还是自己把勾选项过一遍。

相关学习资料