如何强制分区值超出范围

Edw*_*vey 11 partitioning fdisk partition-recovery parted

我有一个 ubuntu 桌面系统(VM 来宾),它的分区是由安装媒体创建的。我想扩展磁盘,所以我关闭了来宾,并增加了主机中来宾的磁盘大小。现在我需要扩展来宾中的分区 - 这就是问题所在:

如果我打印原始表格,这就是我得到的:

$ sudo fdisk -l /dev/sda

Disk /dev/sda: 37.6 GB, 37580963840 bytes
255 heads, 63 sectors/track, 4568 cylinders, total 73400320 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

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          501758    41940991    20719617    5  Extended
/dev/sda5          501760    41940991    20719616   8e  Linux LVM
Run Code Online (Sandbox Code Playgroud)

过去,每当我需要扩展分区时,我都会删除并重新创建具有相同类型、相同开始但不同结束的分区。这次不行了:

Command (m for help): d
Partition number (1-5): 5

Command (m for help): n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (503806-41940991, default 503806): 501760
Value out of range.
Run Code Online (Sandbox Code Playgroud)

什么?我怎么可能无法使用一秒钟前的参数创建分区?无论如何,我放弃了。我想也许这只是一个旧的 fdisk,所以我把自己挖得更深:

我使用 parted 来删除分区,不知道它会立即应用更改。(我预计它在完成时需要“写入”或“应用”命令......所以我搞砸了。)现在我的原始分区被删除了,我无法重新创建它。

如何强制创建值超出范围的分区?

Edw*_*vey 6

知道了。这对我有用:

通过启动,sudo parted我能够unit s切换到扇区,p查看当前表,并mkpart logical 501760 41940991重新创建分区。并退出分手。然后我运行sudo fdisk /dev/sda并用于t将分区类型设置回8e