这个问题几乎完全回答了。但是,仍然需要更多细节。请参阅此处的更新 2。
我了解到 ATA 安全擦除在 SSD 中未正确实现(来源在此处),但我仍然愿意找到一种方法尽可能多地擦除它们。
我打算擦除的是整个 SDD,其中包括:
- 用户可以访问的单元格
- 坏/未映射/损坏的扇区
- 过度配置的空间
- 修剪的单元格
- 设备配置覆盖 (DCO)
- 宿主保护区 (HPA)
- 而我忘记的一切
我知道加密是模拟有限“安全擦除”的最佳方式,但在为我的新数据执行此操作之前,我想至少进行一次通过,以便尽可能多地擦除旧数据。
据我所知:
- ATA 安全擦除:不可靠,仍然可以正确擦除 HPA 或 DCO 吗?
- dban:不擦除重新映射的扇区,也不擦除 HPA 或 DCO
- nwipe:与 dban 相同的问题,因为它是一个 fork
- dd:与dban和nwipe相同,但每次遇到坏扇区时都会阻塞
- shred:推荐用于文件,如 dban,可能与 SSD 有问题
- badblocks -w :应该破坏性地检查每个扇区,它是否为 SSD 正确实施?
目前,我能做的最好的就是一个 badblock -w。
所以问题是:我可以使用哪些工具来尽可能多地擦除 SSD 上的数据?
这个想法是,根据我可能不知道的信息——但你知道——找到这里列出的最合适的工具,或者这里没有列出的任何其他工具。
此外,任何可能导致正确访问或/然后删除 SDD 的 DCO 或 HPA 的事情也可以。-> @guest 几乎完全回答了这个问题,但请参阅更新 2。
重新映射/坏/未映射的扇区、修剪的单元和过度配置的空间也是如此。
销毁驱动器不是一种选择。
资料来源:
- http://cseweb.ucsd.edu/~swanson/papers/Fast2011SecErase.pdf
- http://nvsl.ucsd.edu/index.php?path=projects/sanitize
更新: badblocks -w 可能不可靠(https://lime-technology.com/forum/index.php?topic=23792.0),但我需要进一步挖掘,除非有人先在这里提供答案,我'我也感兴趣。
更新 2:
现在,我需要知道的剩下的事情是:DCO 和 HPA 各自擦除和禁用的实施是否有效 - 并且不像 ATA 安全擦除那样做得不好 - ?此外,这里有一个天真的问题:禁用 HPA 是否意味着后者也会被删除?
PS:抱歉,如果我没有立即回答,我正在世界各地工作和旅行——因此与这篇文章相关——而且我经常面临时间紧迫的业务。但是,我肯定会回答肯定的。