NTFS 压缩的原理与划算时机
NTFS 压缩是内建于文件系统本身的逐文件机制:每个文件按 4 KB 块压缩、打上属性标记,被读取时即时解压。没有东西被打进压缩包,文件的路径和名称都不变,在 NTFS 驱动器之间复制时属性还会随文件走。它只在 NTFS 上有效——FAT32、exFAT 和 ReFS 根本没有这个功能。
账完全取决于文件内容。文本、旧格式的办公文档、SQL 导出和未压缩图像能缩 30–70%;早已打包的媒体(JPG、MP4、ZIP,以及内部本来就是 ZIP 容器的现代 .docx/.xlsx)几乎赚不到什么,只白白烧 CPU。压缩装满前者的文件夹,跳过装满后者的文件夹,这个功能就是一场安静的胜利。
- 压得好:.txt 和 .log 文件、邮件存档、CSV 和 SQL 导出
- 压得好:BMP 和 TIFF 图像、虚拟机磁盘(VHD/VHDX)
- 压得好:网站、HTML/XML 目录树、旧式 .doc 和 .xls 文档
- 几乎无效:JPG、PNG、MP4、MP3——自带压缩的格式
- 几乎无效:ZIP、7z、RAR 归档,以及现代 .docx/.xlsx 文件
- 完全跳过:运行中服务器的数据库文件和频繁改写的数据
启用方式:复选框与 compact 命令
对文件夹:在文件资源管理器里右键点它,打开属性 → 高级,勾选“压缩内容以便节省磁盘空间”。Windows 会询问只应用到文件夹本身还是里面所有内容——选后者。对整个驱动器:右键点驱动器,打开属性,勾选“压缩此驱动器以节约磁盘空间”,然后确认对话框;只有新文件立即压缩,已有的在后台处理,期间电脑照常使用。
命令行路线控制更细。在管理员权限的提示符里,compact /c /s /i /q "D:\Projects" 安静地压缩该文件夹及全部子文件夹,compact /u /s 递归撤销属性,光一条 compact /s 则报告哪些已经压缩。全局开关藏在 fsutil 里:fsutil behavior set disablecompression 1 对新文件全系统关闭压缩(0 恢复默认),需要重启——作为策略很顺手,作为清理工具则不然。
启用之后会怎样
资源管理器用两个相对的小蓝箭头标记压缩项目。这个标记纯属外观,但一眼就能看出哪些文件夹带属性。已有数据上的节省是逐渐显现的——大驱动器上的后台扫描可能跑上几小时——而启用后写入的文件会在写入时自动压缩。
有两条限制值得记住。第一,一个文件不能同时处于 NTFS 压缩和 EFS 加密状态——勾选其一就会清除另一个,因为它们争夺同一个属性槽位。第二,压缩是用 CPU 换磁盘空间:在现代 SSD 和 CPU 上基本免费,但在装着数据库或频繁改写文件、近乎全满的机械盘上可能增加延迟。哪天想去掉属性,compact /u 能不碰文件内容地把一切逆转。
常见问题与解答
NTFS 压缩会让 Windows 变慢吗?
每次读写都要做一点压缩工作,但在现代 CPU 和 SSD 上影响可忽略。数据库文件和大程序不停改写的文件夹上就别用了。
压缩文件为什么显示蓝色双箭头?
那是资源管理器给压缩属性的视觉标记——无害且纯属提示。用 compact /u 或属性对话框去掉属性后就会消失。
能在 exFAT 或 FAT32 上启用 NTFS 压缩吗?
不能。该功能仅属于 NTFS;exFAT 和 FAT32 驱动器上根本没有这个选项,无论勾什么,那里的文件都保持未压缩。
继续阅读
联系我们: [email protected]