为什么Linux会显示没有分区的磁盘的设备分区阻止文件?

洛特尼

我有一个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或使用partxblockdev --rereadpt,否则Linux不会重新读取分区表因此,在您执行其中一项之前,该方法sdc[1-4]将继续存在。

最简单的解决方法是调用partprobe来指示内核重新读取所有设备上的分区表,或者partprobe /dev/sdc仅重新读取该磁盘上的分区表。或者,您可以使用fdisk写入该空分区表,然后fdisk将执行与相同的操作partprobe

还要注意,如果磁盘(或其任何分区)正在使用(例如,作为文件系统,交换,LVM PV等),内核将不会重新读取它。当然,如果正在使用中,则在擦拭它们时会遇到问题。

最后,如果您已经尝试过强制重新读取,则您的随机数据可能恰好与分区表签名匹配。Linux支持许多不同的分区表格式(在编译内核时选择列表),并且其中某些签名只有一个字节,因此随机数据匹配的机会为1/256。其他人具有更长的签名,因此机会更低。我不确定总的机会是多少,但是对内核日志的快速检查将显示内核识别出哪种分区表格式。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Centos 7 Linux下无法读取的USB NTFS分区显示为CDROM设备,没有分区

为什么我的 NTFS 分区文件没有显示在 Gnome 活动搜索中?

为什么同一磁盘上的不同分区没有相同的挂载点?

为什么我的分区没有出现?

为什么Windows磁盘管理工具将分区显示为逻辑分区?

使用Linux从Windows分区中删除文件,为什么它们会永久丢失?

为什么没有显示SCSI磁盘?

为什么磁盘上的根分区已满?

分区不显示!为什么?

为什么已挂载的NTFS分区未显示在Linux文件管理器中?

如何调整没有分区的磁盘的大小?

我不明白为什么文件没有写到挂载的分区上

为什么使用dd写入随机数据会导致磁盘分区?

为什么我的CentOS分区没有调整大小?

为什么Windows无法识别Linux分区内的文件?

为什么Linux使用交换分区而不是文件?

为什么对sysfs设备属性文件的“ poll”调用没有正确阻止?

写入分区表时为什么会显示“文件只能复制到0个节点”?

为什么卡夫卡会警告“分区中的领导经纪人没有匹配的听众”?

为什么Spark的重新分区没有将数据平衡到分区中?

获取Linux存储分区设备文件的标签

为什么作业会失败并显示“设备上没有剩余空间”,而df则相反?

具有多个分区标签冲突的磁盘的 Linux 的行为是什么?

使用现有分区对磁盘进行分区

磁盘中的文件系统和“扩展分区”有什么区别?

磁盘分区未显示

安装期间没有分区显示

fdisk没有显示分区,分开了

为什么要为Ubuntu 14.04分区磁盘?