Ubuntu ext4 分区未按预期使用 Growthpart 或 resize2fs 进行扩展或调整大小

Chr*_*ski 4 partition resize2fs growpart

我之前曾在 Linux 系统中使用过growpart和来调整已挂载的在线 ext4 分区的大小。resize2fs

\n

目前,我有一个在 virtualbox 中运行的 Ubuntu 客户机,我想调整分区大小/dev/sda5。我已经通过 扩展了主机上的虚拟磁盘vboxmanage modifyhd --resize...,但是运行后(在来宾中)growpart我没有看到分区表有任何变化(我假设它是从 lsblk 返回的值)。

\n
chris@chris-VirtualBox:~$ lsblk\n...\nsda      8:0    0  53.9G  0 disk \n\xe2\x94\x9c\xe2\x94\x80sda1   8:1    0   512M  0 part /boot/efi\n\xe2\x94\x9c\xe2\x94\x80sda2   8:2    0     1K  0 part \n\xe2\x94\x94\xe2\x94\x80sda5   8:5    0  37.8G  0 part /\n...\n
Run Code Online (Sandbox Code Playgroud)\n

调整大小:

\n
chris@chris-VirtualBox:~$ sudo growpart /dev/sda 5\nCHANGED: partition=5 start=1052672 old: size=79251456 end=80304128 new: size=111996895 end=113049567\nchris@chris-VirtualBox:~$ sudo resize2fs /dev/sda5\nresize2fs 1.45.5 (07-Jan-2020)\nThe filesystem is already 9906432 (4k) blocks long.  Nothing to do!\n
Run Code Online (Sandbox Code Playgroud)\n

lsblk仍然显示旧值:

\n
...\nsda      8:0    0  53.9G  0 disk \n\xe2\x94\x9c\xe2\x94\x80sda1   8:1    0   512M  0 part /boot/efi\n\xe2\x94\x9c\xe2\x94\x80sda2   8:2    0     1K  0 part \n\xe2\x94\x94\xe2\x94\x80sda5   8:5    0  37.8G  0 part /\n...\n
Run Code Online (Sandbox Code Playgroud)\n

这是 virtualbox 的限制吗?或者有可行的替代方案吗?

\n
\n

嗯,实际上/dev/sda2分区看起来很可疑(它的大小似乎太大了?它与 重叠吗/dev/sda5?:

\n
chris@chris-VirtualBox:~$ sudo parted /dev/sda\nGNU Parted 3.3\nUsing /dev/sda\nWelcome to GNU Parted! Type 'help' to view a list of commands.\n(parted) p                                                                \nModel: ATA VBOX HARDDISK (scsi)\nDisk /dev/sda: 57.9GB\nSector size (logical/physical): 512B/512B\nPartition Table: msdos\nDisk Flags: \n\nNumber  Start   End     Size    Type      File system  Flags\n 1      1049kB  538MB   537MB   primary   fat32        boot\n 2      539MB   41.1GB  40.6GB  extended\n 5      539MB   41.1GB  40.6GB  logical   ext4\n
Run Code Online (Sandbox Code Playgroud)\n

Chr*_*ski 5

这些命令未按预期工作,因为它们包含在扩展分区中,如下所述: https: //askubuntu.com/a/365953/585364

相反,我必须首先/dev/sda2 extended扩展/dev/sda5.

因此,所需的所有命令(在我的具体情况下):

growpart /dev/sda 2
growpart /dev/sda 5
resize2fs /dev/sda5
Run Code Online (Sandbox Code Playgroud)

  • 这有效-growpart/dev/sda 2-growpart/dev/sda 5-resize2fs/dev/sda5 (2认同)