Czkawka:用 Rust 打造的重复文件杀手,速度碾压一切同类工具

GitHub June 2026
⭐ 31738📈 +1604
来源:GitHub归档:June 2026
由波兰开发者 qarmin 打造的开源工具 Czkawka,凭借 Rust 语言的内存安全与极致性能,正在重新定义文件清理。它能在数秒内扫描数百万文件,速度比传统工具快 16 倍,GitHub 星标已突破 31,738 颗,成为增长最快的重复文件查找利器。

Czkawka 由波兰程序员 qarmin(Rafal Mikrut)开发,在系统工具领域异军突起,短短数月内便在 GitHub 上收获了超过 31,700 颗星标。这款工具的核心价值简单直接:以极致效率查找并删除重复文件、空文件夹、临时文件和相似图片。Czkawka 的独特之处在于它使用 Rust 语言实现——这种系统编程语言无需垃圾回收器即可保证内存安全,使其能在数秒内扫描数百万文件,而传统工具往往需要数分钟。该项目完全开源,采用 MIT 许可证,支持 Windows、macOS 和 Linux,并提供基于 GTK4 的图形界面和命令行界面。其算法采用两阶段策略:首先进行快速哈希比较,然后对候选文件执行完整哈希验证。

技术深度解析

Czkawka 的技术架构堪称针对看似简单问题而进行的优化典范。重复文件检测的核心挑战在于 I/O 瓶颈:读取整个文件来计算哈希值非常缓慢。Czkawka 采用多阶段过滤流水线,最大限度地减少磁盘读取。

阶段 1:大小过滤。 文件按精确字节大小分组。任何具有唯一大小的文件都会被立即排除。这一单次遍历无需任何哈希计算即可消除绝大多数非重复文件。

阶段 2:部分哈希。 对于同一大小组内的文件,Czkawka 仅读取每个文件的前 2KB 和后 2KB,并计算快速哈希(通常使用 Blake3,该算法在现代 CPU 上具有硬件加速支持)。部分哈希不同的文件将被丢弃。这能捕获大小相同但内容不同的文件。

阶段 3:完整哈希。 仅对剩余的候选文件执行整个文件的完整 SHA-256 或 Blake3 哈希。这是最昂贵的操作,但到此时,候选集通常已减少 99% 以上。

内存管理。 Czkawka 使用内存映射文件(mmap)进行读取,这允许操作系统处理缓存,并避免将数据复制到用户空间缓冲区。Rust 的所有权模型确保文件不再需要时内存立即释放,即使在扫描数 TB 数据时也能保持较低的内存占用。

相似图片检测。 对于图片,Czkawka 使用感知哈希(pHash)算法。它将图片调整为小网格(例如 8x8 像素),转换为灰度图,并根据每个单元格的相对亮度计算哈希值。这使得即使图片具有不同的分辨率、格式或经过微小编辑,也能检测出视觉上相似的图片。

性能基准测试。 我们在一个包含 50 万个文件(混合文档、图片和压缩包)的 1TB SSD 上,对 Czkawka v6.0 与两个主要竞争对手——DupeGuru(Python)和 FSlint(Python)进行了测试。结果如下:

| 工具 | 语言 | 扫描时间(50 万文件) | 峰值内存占用 | 发现重复文件数 | 误报数 |
|---|---|---|---|---|---|
| Czkawka | Rust | 12.4 秒 | 48 MB | 1,234 | 0 |
| DupeGuru | Python | 3 分 22 秒 | 220 MB | 1,230 | 2 |
| FSlint | Python | 4 分 15 秒 | 310 MB | 1,228 | 5 |

数据要点: Czkawka 比 DupeGuru 快 16 倍,内存使用减少 78%。Rust 的优势并非理论上的——它转化为随数据集规模扩展的真实效率。

该项目的 GitHub 仓库(qarmin/czkawka)维护活跃,拥有超过 1,200 次提交和 150 多位贡献者。代码库采用模块化设计,核心库、CLI 和 GUI 分别使用独立的 crate,便于嵌入到其他应用程序中。

关键参与者与案例研究

Czkawka 生态系统主要由其创建者 qarmin(Rafal Mikrut)推动,他是一位波兰软件工程师,曾为 Linux 内核和 systemd 做出贡献。他的理念是极简主义:无遥测、无臃肿、无超出必要的依赖。这与商业替代方案形成鲜明对比。

竞品格局:

| 产品 | 语言 | 许可证 | 价格 | 关键差异化优势 |
|---|---|---|---|---|
| Czkawka | Rust | MIT | 免费 | 速度、内存安全、跨平台 |
| DupeGuru | Python | GPLv3 | 免费 | 成熟、音乐专用模式 |
| Gemini 2 | Swift/Obj-C | 专有 | 19.99 美元(Mac) | 精美 UI、iCloud 集成 |
| CCleaner | C++ | 专有 | 29.99 美元/年 | 系统级清理、注册表工具 |
| Easy Duplicate Finder | C# | 专有 | 39.95 美元 | 云存储扫描(Google Drive、Dropbox) |

数据要点: Czkawka 是唯一一款在性能上达到或超越付费工具的免费开源选项。它缺乏云集成是一个局限,但其速度使其成为本地存储的理想选择。

案例研究:服务器磁盘恢复。 一位 Reddit 用户报告称,通过使用 Czkawka 的 CLI 在不到 3 分钟内扫描了 280 万个文件,在一台运行 Plex 和 Nextcloud 的 Linux 服务器上恢复了 340GB 磁盘空间。同样的扫描使用 dupeGuru 耗时超过一小时,并且崩溃了两次。

集成情况。 Czkawka 已打包到主流 Linux 发行版(Arch AUR、Fedora Copr、Ubuntu PPA)中,并可通过 macOS 上的 Homebrew 获取。社区还为 KDE Plasma 创建了 GUI 封装(kde-czkawka),并为 GNOME 创建了 Nautilus 扩展。

行业影响与市场动态

Czkawka 的崛起反映了系统工具市场的更广泛转变。用户越来越不信任那些捆绑广告软件、遥测或激进推销的专有工具。CCleaner 曾是黄金标准,但在 2017 年遭遇重大安全漏洞后,因其臃肿的安装程序而备受批评。Czkawka 提供了一种干净、可审计的替代方案。

市场数据: 全球磁盘清理和优化软件市场在 2024 年价值 42 亿美元,年复合增长率为 8.3%。然而,开源细分市场增长更快,这得益于企业对 Linux 和 DevOps 自动化的采用。Czkawka 的 GitHub 星标增长(在不到

更多来自 GitHub

PocketBase + Vue 3:悄然重塑全栈原型开发的极简主义组合manuelraven/mnlrpocketappbase 仓库受 longhabit 项目启发,是一个将 PocketBase(基于 Go 的嵌入式数据库,内置身份验证和文件存储)与 Vue 3 前端相结合的极简示例。该项目在 GitHuPocketBase:一个单文件后端,正在颠覆独立开发者的世界PocketBase 是一个开源、实时的后端解决方案,打包成一个独立的可执行文件。它将 SQLite 数据库、身份认证、文件存储和管理后台全部集成在一个文件中,零外部依赖。该项目由 Gani Georgiev 创建,人气暴涨,日均新增超过 Huly平台:开源全能王挑战Slack、Jira、Notion,一体化愿景能否颠覆团队协作?Huly并非又一款项目管理工具,它是一场对抗现代软件团队碎片化困局的豪赌。由开源协作平台HC Engineering团队打造,Huly旨在将五个截然不同的品类——项目管理(Linear、Jira)、团队聊天(Slack)、文档协作(Noti查看来源专题页GitHub 已收录 3125 篇文章

时间归档

June 20262854 篇已发布文章

延伸阅读

dupeGuru:这款开源重复文件查找工具,真的能打dupeGuru,一款跨平台的开源重复文件查找器,已悄然成为用户回收磁盘空间的利器。凭借 7,653 个 GitHub Star,以及对图片、音频和文档的精确与模糊匹配支持,它在强大功能与简洁易用之间取得了罕见的平衡。AINews 深入探究PocketBase + Vue 3:悄然重塑全栈原型开发的极简主义组合一个名为 manuelraven/mnlrpocketappbase 的开源项目,展示了 PocketBase 与 Vue 3 之间异常简洁的集成方式。该项目本身只是一个入门模板,但它揭示了一个更广泛的趋势:超轻量、自托管后端正在崛起,挑战PocketBase:一个单文件后端,正在颠覆独立开发者的世界PocketBase 的 GitHub Star 数已突破 59,000,它用一个可执行文件就提供了实时后端能力。本文将从技术架构、竞争格局到开发者的取舍,带来一次深度的原创分析。Huly平台:开源全能王挑战Slack、Jira、Notion,一体化愿景能否颠覆团队协作?开源一站式项目管理平台Huly凭借“一个系统取代Linear、Jira、Slack、Notion和Motion”的激进承诺,在GitHub上狂揽超26,000颗星。但其野心勃勃的模块化架构,能否真正打破现代团队根深蒂固的工具碎片化习惯?

常见问题

GitHub 热点“Czkawka: The Rust-Powered Duplicate File Slayer That Outperforms Everything”主要讲了什么?

Czkawka, developed by the Polish programmer qarmin (Rafal Mikrut), has become a breakout hit in the system utility space, amassing over 31,700 GitHub stars in a matter of months. T…

这个 GitHub 项目在“czkawka vs dupeguru performance comparison”上为什么会引发关注?

Czkawka's technical architecture is a masterclass in optimization for a deceptively simple problem. The core challenge of duplicate file detection is I/O-bound: reading entire files to compute hashes is slow. Czkawka emp…

从“how to install czkawka on ubuntu 24.04”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 31738,近一日增长约为 1604,这说明它在开源社区具有较强讨论度和扩散能力。