Linux 具有shred
来自 GNU coreutils 软件包的 功能,可以在删除文件时安全地就地覆盖数据。BSD 系统(特别是 macOS)上的等效项是什么?
qorg11 给出的答案在技术上是对您的问题的准确答案(所以去投票吧!)。
现实是那shred
是没用的。所有 BSD 以及 Linux 都具有现代文件系统,其中“覆盖文件以实际覆盖存储介质上的字节”根本不会发生,因为这不是文件系统的结构以及存储设备的工作方式。
shred 的作用是获取一个文件并用零覆盖其内容。很好,但是许多现代文件系统都是“写时复制”(即,当您更改文件中的某些内容时,您不会修改存储设备上的相同块,而是会制作受影响块的修改副本)。Apple的APFS绝对是这些文件系统之一。
某些文件系统具有“稀疏检测”:您写入全零,因此文件系统不会将这些零写入磁盘,而只是表示文件中的一个漏洞。
所有 SSD 都具有写入磨损平衡:您实际上无法防止攻击者访问存储在内存芯片上的原始数据,因为对系统的所有写入本质上都是写入时复制,以均匀分布写入数据的负载介质(写入相同的单元通常会导致老化并增加错误概率;由于 SSD 具有统一的访问延迟,因此在物理介质上广泛分布逻辑块没有任何缺点)。另一方面,现代文件系统驱动程序支持 TRIM 操作(通常称为“丢弃”),该操作向 SSD 发出信号,表明数据可以清零,如果被要求,SSD 很可能甚至不会读取零。逻辑块。
因此,正如 qorg11 所说,即使在非 GNU 系统上,如果您安装了 GNU coreutils, 也shred
相当于,但实际上, an 也同样有效。shred
rm
小智 6
brew install coreutils
您可以在 macOS(使用 Homebrew)、pkg install coreutils
FreeBSD 或OpenBSD 中安装 GNU coreutils ,pkg_add coreutils
然后运行,其行为与Linux 中gshred
完全相同。shred
归档时间: |
|
查看次数: |
1036 次 |
最近记录: |