目的:在受(恶意软件)感染的 micro-SD 卡(16GB)上创建新的、无恶意软件的操作系统(3GB)。
如何? 将操作系统重写到受感染的 SD 卡从一张干净的(第二张) SD 卡,使用“dd”命令:(即:“sudo dd if=/dev/sdx bs=16M of=/dev/sdy”)
如果我的 debian10 操作系统(位于我的 micro-sd 上)感染了恶意软件,我是否需要擦洗先清理“受感染的 SD 卡”,然后再将新的干净操作系统写入其中?或者,我是否可以使用“dd”命令并将干净操作系统写入该“受感染”的 SD 卡,这样就不必浪费时间进行初始清理,只要它确实没有恶意软件?
答案1
dd
制作一个字节相同的副本。如果你将 16 GiB 图像写入卡中,那么卡的前 16 GiB 是完全地被卡上的内容覆盖。
如果卡比图像大,那么超出图像大小的剩余数据将根本不会受到影响,并且操作系统仍然可以从那里读取所有旧数据(如果它愿意的话)。
然而,操作系统实际上不会使用该区域,因为映像的分区表实际上不会将任何分区扩展到那么远(显然),并且映像的文件系统对该区域一无所知。即使您稍后手动扩展分区,文件系统也会认为该区域是空的 - 它不会重新发现之前可能存在的实际文件。
因此,在两种情况下,只需写入新图像就是安全的。
(一个给定位置只能存储一个值。一旦旧数据被覆盖哪怕只有一次,SD 卡没有命令可以撤消该操作——操作系统无法通过“更努力地读取”或类似方式重新发现旧数据。
尽管使用基于闪存的内存,如果卡的磨损均衡系统出现严重问题,它可能会代替新数据出现,但更有可能的是,如果发生这种情况,卡将拒绝接受任何写入)