我对安全删除有疑问。SDAx 是 ext4,SDA5 是根。
我可以dd if=/dev/urandom of=/dev/sda bs=4096
在通过 ssh 或控制台连接到服务器时运行吗?还是我需要有一个实时启动 CD 才能做到这一点?或者也许我可以只销毁 /dev/sda5 ?
这 3 个命令之间有什么区别?我应该使用哪一个命令来安全地销毁数据以使其无法恢复。
dd if=/dev/urandom of=/dev/sda bs=4096
dd if=/dev/random of=/dev/sda
dd if=/dev/zero of=/dev/sda
答案1
shred -n1 /dev/sda"
比上述方法更快、更可靠。
使用 /dev/random 可能无法在合理的时间内完成,因为熵不够。使用 /dev/urandom 可以解决这个问题,方法是根据其所能获得的真实随机性创建更多随机性的东西。
使用 bs=4096 设置块大小。从某种程度上来说,块大小越大越好。
使用 /dev/zero 擦除可能就足够了,但可能存在一些理论上的攻击(放大跟踪信号),理论上可能会产生一些数据。
使用启动盘是最可靠的方法,添加活动分区并不是一个好主意,因为它可能会在系统完成之前导致冻结。
远程擦除数据的一个公平部分解决方案可能是删除所有用户信息,然后dd if=/dev/urandom of=large.file; RM large.file
使用shred /dev/SDA
- 这将更确定用户数据被删除。
请注意,驱动器上可能仍会残留数据(例如标记为坏的扇区周围),并且由于过度配置,SSD 上可能还会残留更多数据。