Linux中“Disk /dev/sdb doesn't contain a valid partition table”解决方案

时间:2021-11-19 08:21:13
Linux中“Disk /dev/sdb doesn't contain a valid partition table”解决方案

适用场合:

在虚拟机环境的linux系统下,新添加一块硬盘,需要执行step1到step6。

在实际环境Linux系统中,只需执行step2到step6即可。

 

step1: 虚拟机--设置--添加,选择硬盘添加

step2: 为磁盘创建文件系统:mkfs.ext3 /dev/sdb

step3: 创建挂载点:mkdir /mnt/sdb

step4: 挂载:mount /dev/sdb /mnt/sdb

step5: fdisk -l

发现报错:Disk /dev/sdb doesn't contain a valid partition table

解决该错误,参见step6。

step6: fdisk  /dev/sdb

跟着向导一步步做下去(如果不知道该输入什么,就输入“m”并回车,可以打印出help菜单):

Command (m for help): m

Command action

   a   toggle a bootable flag

   b   edit bsd disklabel

   c   toggle the dos compatibility flag

   d   delete a partition

   l   list known partition types

   m   print this menu

   n   add a new partition

(后面的菜单省略,太长了)

#这里我们要添加一个新的分区,所以输入“n”:

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-14098, default 1): (此处直接回车)

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-14098, default 14098): (此处直接回车)

Using default value 14098

Command (m for help): p

Disk /dev/sdb: 115.9 GB, 115964116992 bytes

255 heads, 63 sectors/track, 14098 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes


   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1       14098   113242153+  83  Linux

#现在可以写入分区表了,所以输入“w”:

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

现在,再次fdisk -l,结果正常。