Czkawka 清理实战:这个 Rust 写的“打嗝“程序,帮我找回了 60 GB 磁盘空间

发布时间:2026/8/18 18:19:26
Czkawka 清理实战:这个 Rust 写的“打嗝“程序,帮我找回了 60 GB 磁盘空间 Czkawka 清理实战这个 Rust 写的打嗝程序帮我找回了 60 GB 磁盘空间【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka如果你也经历过磁盘满了的深夜你会理解那种抓狂想导出一个视频、装一个软件、同步一次手机照片系统却弹出一行冷冰冰的空间不足。于是我开始翻找硬盘想看看究竟是哪些文件在偷走空间——然后发现自己根本无从下手。Czkawka波兰语打嗝就是为解决这个真实痛点而生的开源磁盘清理工具。它不联网、无广告、不弹窗纯粹靠算法把重复文件、空文件夹、相似图片这类空间杀手找出来交给你处理。这篇文章我会从它到底解决什么问题讲起用一次真实的清理过程演示它的用法再附上新手最容易踩的坑。读完你就能自己动手找回几十 GB 空间。先搞清楚Czkawka 不是又一个清理大师市面上的电脑清理软件大多是同一套路装完先来一波弹窗扫描完告诉你发现 3.2 GB 垃圾点清理后发现能清的其实只有几百 MB剩下的都在诱导你付费。Czkawka 走的是完全相反的路线完全本地离线运行。项目明确承诺不联网、不采集数据、无遥测仓库的依赖列表里没有任何网络相关库代码层面就没有联网通道。专注找文件而非删垃圾。它不碰注册表、不删缓存目录而是把重复文件、空文件夹、大文件等 14 类问题如实列给你删不删、怎么删由你决定。多线程 缓存。用 Rust 编写充分利用多核 CPU首次扫描的计算结果会写入缓存第二次扫描同一目录明显更快。它提供的 14 种工具可以大致分成四类类别工具解决什么问题找重复重复文件、相似图像、相似视频、相同音乐内容重复但名字不同、分辨率不同的同一份文件找空洞空文件夹、空文件、大文件层层嵌套的空目录、0 字节文件、占用空间的大户找异常损坏文件、无效符号链接、错误扩展名、临时文件、非法文件名打不开的、指向不存在的、扩展名与内容不符的文件做加工清理 Exif 信息、视频优化删除照片隐私元数据、裁剪视频黑边并转成更高效的编码每一类工具都对应一个独立场景而不是一个大而全的一键清理。这种把选择权留给用户的设计恰恰是它和商业清理软件最大的区别。三个入口共用一颗引擎Krokiet / CLI / Cedinia 怎么选Czkawka 的架构值得先理解一下所有扫描逻辑都封装在核心库czkawka_core里上层有多个不同形态的前端这意味着你在哪个界面用扫描结果都是一样的。当前项目提供三个活跃前端Krokiet新一代图形界面基于 Slint 框架静态链接、无额外依赖Windows / macOS / Linux 表现一致是官方推荐的 GUI。Czkawka GTK旧版图形界面12.0 是最后一个版本官方已停止维护新用户不要选它。Cedinia专为 Android 打造的触屏界面可在手机上直接扫描内存卡或手机存储受平台限制视频相关工具不可用。czkawka_cli命令行前端适合脚本化和定时自动化后面实战部分会用它演示。新手建议直接装 Krokiet它把 14 种工具都做成了左侧的选项页勾选目录、点扫描、看结果、选文件、执行操作整个流程不用记任何命令。想自动化、或想在公司服务器上批量清理才需要转向 CLI。重复文件是怎么被抓出来的一条三级流水线重复文件是 Czkawka 最核心的工具它的检测机制也最能体现这个项目的工程水平。很多人以为找重复就是算文件哈希但直接对所有文件算全量哈希非常慢——全量读盘是最大的性能瓶颈。czkawka_core里重复检测实际是一条三级流水线见 instructions/Instruction_Core.md按文件大小分组。大小不相同的文件不可能是重复的这一步在内存里瞬间完成把绝大多数文件直接排除。计算预哈希prehash。对同一大小分组内的文件只读取开头和结尾各 4 KB 计算一个快速哈希——两个文件如果预哈希都不同就没有再比下去的必要。全量哈希确认。只有通过了前两关的少数文件才计算完整内容的加密哈希默认 BLAKE3也支持 XXH3、CRC32按哈希分组得到最终重复组。这个设计的妙处在于真正需要读完整文件内容的只有极少数疑似重复扫描 10 万个文件时大部分文件只被读了 8 KB。配合缓存机制第二次扫描时连这 8 KB 都不用重复读所以越扫越快。对应的效果是结果准BLAKE3 是加密哈希两个不同文件撞出相同哈希的概率在工程上可以忽略速度稳大目录扫描也基本不会卡死内存。如果你感兴趣这部分实现可以直接读 czkawka_core/src/tools/duplicate/core.rs。一次完整清理实战从试跑到进回收站光讲原理不够下面用命令行完整走一遍清理一个塞满照片和视频的目录的过程。命令都在czkawka_cli中执行安装方式参考 czkawka_cli/README.md。第一步先扫描只看不动。czkawka_cli dup -d /home/user/Downloads -f dup_results.txt-d指定要扫描的目录结果保存到文本文件。此时默认什么都不删先看看战果。第二步确认操作范围做一次试跑。czkawka_cli dup -d /home/user/Downloads -D AEN -Q-D AEN表示每组重复中保留最新文件删除其余-Q是干跑dry run只打印将要删除哪些文件实际不动任何东西。任何删除之前都建议先这样跑一遍。第三步真正执行但先进回收站。czkawka_cli dup -d /home/user/Downloads -D AEN -y-y表示把文件移入系统回收站而非永久删除万一误删还能恢复。执行完检查结果确认无误后再清空回收站。删除方法除了AEN保留最新还有AEO保留最旧、AEB保留最大、AES保留最小以及一个很有用的HARD——它不删文件而是把重复文件替换成硬链接既释放空间又保留所有路径可用。实战里还有一个保护机制值得单独说参考目录。如果/home/user/Backup是你的主备份不希望被动过可以把它标记为参考目录只参与比较、绝不参与删除czkawka_cli dup -d /home/user/Downloads -r /home/user/Backup -D AEN -y这个场景很典型下载目录里堆了一堆和备份重复的文件但你只想清理下载目录、绝不碰备份本体。CLI 完整参数表在 instructions/Instruction_CLI.md。图像、视频、音乐相似内容是怎么判断的重复文件工具处理的是内容完全相同的文件但现实里更常见的麻烦是**看起来一样其实不是同一个文件**同一张照片在手机里存了三份不同分辨率的版本一段视频被剪辑、旋转后又被导出了一次两首歌比特率不同但其实是同一首。这三个问题分别由三个工具解决工具判断依据典型场景相似图像感知哈希感知上相似的图像算出的哈希接近同一张图的不同分辨率、带不同水印的版本相似视频借助 ffmpeg 抽取关键帧逐帧比对被裁剪、旋转、缩放过的同一段视频相同音乐标签匹配 内容指纹双重方式不同比特率、不同标签的同一首歌用法上它们与dup完全同构只是扫描目标不同。以图像为例czkawka_cli image -d /home/user/Photos -D AEB -y上面这条命令把照片目录里视觉上相似的图片按组列出保留每组中最大的那个版本通常分辨率最高其余移入回收站。视频和音乐工具的使用方式可以看 instructions/Instruction_Krokiet.md 里的对应章节。有一点要提前知道相似视频和视频优化工具依赖 ffmpeg需要单独安装Linux 下sudo apt install ffmpegmacOS 下brew install ffmpeg在 czkawka_cli/README.md 里有各平台的安装说明。另外两个加工类工具值得顺便提一句Exif 清理器能批量删除照片里的拍摄地点、设备型号等隐私元数据适合发图前处理视频优化器能裁掉视频的黑边/静止画面并转成更高效的编码格式把大视频压缩到原来的一小半。新手最容易踩的 5 个坑这些坑大多来自项目 FAQ 里上千条真实 issue 的沉淀见 instructions/FAQ.md提前知道能帮你省很多事。坑一跳过试跑直接删。不管 GUI 还是 CLI删除前务必先预览结果。-Q干跑模式就是为此设计的习惯性用起来。坑二用文件名匹配当主力。dup的搜索方式有NAME、SIZE、SIZE_NAME、HASH四种。NAME虽然快但同名不同内容会造成大量误报官方也只建议拿它做快速实验正式去重请用默认的HASH。坑三同时开两个同工具的实例。不同工具可以并行扫描缓存文件各自独立但同一个工具的多个实例同时运行会损坏该工具的缓存。想多开请换不同工具。坑四把 GTK 版当成主力。旧版 GTK 界面在 Windows/macOS 上有窗口无法点击、HiDPI 模糊等一系列历史问题且 12.0 后已停止维护。任何平台都直接选 Krokiet。坑五扫描常插拔的外接硬盘却开着自动清理过期缓存。对经常拔插的移动硬盘建议在设置里关闭自动删除过期缓存改用手动清理否则缓存条目会在你拔盘时被误判为失效而清掉下次插回又要重扫。如果你用的是 Krokiet 图形界面可以额外打开预哈希缓存默认已开启这对大目录的重复扫描速度提升最明显原理就是前面说的三级流水线第二级。接下来你可以怎么做现在你已经有足够的信息动手了。我建议按这个顺序开始装 Krokiet 图形界面打开重复文件工具扫描你照片最多的目录先看结果不删除——观察重复文件的规模。再用大文件工具看一眼整个磁盘找出真正占空间的那几个大户决定是清理还是归档。确认工具好用之后把 CLI 写进定时任务比如每周日自动扫描下载目录并干跑一次把报告输出到文件供你抽查。深入材料都在这几个地方全工具的参数参考 instructions/Instruction_CLI.md算法与缓存机制见 instructions/Instruction_Core.md常见问题合集在 instructions/FAQ.mdAndroid 版本细节在 cedinia/README.md。如果想从源码编译最新版本可以这样拉取仓库并构建命令行工具git clone https://gitcode.com/GitHub_Trending/cz/czkawka cd czkawka cargo build --release --bin czkawka_cli最后留一句实用提醒任何清理工具都只是找的专家而删的决定权永远应该在你手里。给每个大目录建一个只读的备份参考目录用 Czkawka 对比着清理既能放心地释放空间又不会误伤真正重要的文件。【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻