如何完全擦除(微)SD卡上的所有数据?

我刚买了一张micro SD卡,我打算用Raspberry Pi。

我使用KDE分区管理器删除卡上的原始分区并写入新的12GiB ext4分区。 在这之后,该卡仍然表示正在使用其中的6%,30.02 MiB。

基本上,我想彻底擦除所有内容的卡片,以便为新操作系统做好准备。 像shreddd这样的命令可以做到这一点,还是会破坏分区?

你对dd猜测是正确的。 您可以通过以下命令擦除SD卡(假设您的SD卡是/dev/sdd ):

不要中断此命令,否则可能会破坏SD卡。

$ sudo dd if=/dev/zero of=/dev/sdd bs=8192

注意: 如果此命令未成功完成且您必须中止,那么很可能它可以通过其他post中介绍的磁盘分区恢复程序进行恢复。

根据SD卡的大小和速度,可能需要一些时间。 如果你确信,CIA想要恢复你的文件,那么用urandom而不是zero来覆盖SD卡:

$ sudo dd if=/dev/urandom of=/dev/sdd bs=8192

上面的示例中的dd命令将擦除整个SD卡,使其没有任何分区,即使没有分区表。 因此,您需要在SD卡上重新创建分区。 您可以通过任何分区工具(如cfdiskparted (我的推荐)或gparted )执行此操作。

还有一件事: 在调用dd命令时要非常小心 。 输入of=参数值的拼写错误会导致灾难。

如果您刚刚创建了一个新分区,则不应该有任何实际文件。 30MB可能只是文件系统本身。 分区需要几个不同的表,以及实际跟踪文件的内容。

您可以通过ls -alph查找带有ls -alph的隐藏文件或在Nautilus的“视图”菜单中启用隐藏文件来仔细检查其中没有任何内容。

根据您调用命令的具体方式,使用shreddd可能会覆盖分区表和/或文件系统。

你想要达到什么目的?


(A.)删除所有当前分区,重新使用该卡:

要擦除分区和/或重新格式化(微)SD卡,只需使用gnome-disk-utility (又名“Disks”)。

要么

(B.)删除卡上的任何当前(或以前)内容,因此无法恢复:

安全地擦除卡,您需要物理破坏卡(渲染成小于2mm²的粒子) 使用实用程序(来自供应商)来触发安全擦除function。

多次写入(随机数据)或重新格式化不一定会删除数据。

您可以在删除文件之前将其粉碎:

 find /media/user/SD32/ -type f -exec shred -v -f -n0 -z -u {} \; 

shred params意思是:详细,强制删除不可写文件,不写随机字节(加速),写零(更快),截断并删除文件后写入零。

这将以像photorec这样的应用程序无法恢复的方式摆脱数据。

请参阅https://unix.stackexchange.com/questions/27027/how-do-i-recursively-shred-an-entire-directory-tree