我有一个2TB的磁盘,已经用随机数据覆盖了。fdisk
确认设备没有可识别的分区表。但是,我看到了磁盘的以下5个设备文件:/ dev / sdc {,1,2,3,4}
IE
# for i in /dev/sdc{,1,2,3,4} ; do fdisk -l -u $i ; done
Disk /dev/sdc: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc1: 555.1 GiB, 595985804288 bytes, 1164034774 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc2: 1.6 TiB, 1781956913152 bytes, 3480384596 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc3: 928.5 GiB, 997001973760 bytes, 1947269480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sdc4: 1 TiB, 1153125198336 bytes, 2252197653 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
再次,该设备没有分区表:
# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x56b93c1d.
Command (m for help): p
Disk /dev/sdc: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
为什么会有分区设备-即为什么有/ dev / sdc {1,2,3,4}而不仅仅是/ dev / sdc?此外,为什么分区后的设备的大小之和不等于1.8TiB?
除非在引导(或磁盘连接)时或明确要求这样做时(例如,在写入磁盘后通过fdisk或使用partx
或blockdev --rereadpt
),否则Linux不会重新读取分区表。因此,在您执行其中一项之前,该方法sdc[1-4]
将继续存在。
最简单的解决方法是调用partprobe
来指示内核重新读取所有设备上的分区表,或者partprobe /dev/sdc
仅重新读取该磁盘上的分区表。或者,您可以使用fdisk写入该空分区表,然后fdisk将执行与相同的操作partprobe
。
还要注意,如果磁盘(或其任何分区)正在使用(例如,作为文件系统,交换,LVM PV等),内核将不会重新读取它。当然,如果正在使用中,则在擦拭它们时会遇到问题。
最后,如果您已经尝试过强制重新读取,则您的随机数据可能恰好与分区表签名匹配。Linux支持许多不同的分区表格式(在编译内核时选择列表),并且其中某些签名只有一个字节,因此随机数据匹配的机会为1/256。其他人具有更长的签名,因此机会更低。我不确定总的机会是多少,但是对内核日志的快速检查将显示内核识别出哪种分区表格式。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句