原文地址:https://blog.csdn.net/oxp7085915/article/details/79030716

在VMware中安装了一个Ubuntu系统,可是需要下载android源码,导致空间不足,所以需要对虚拟机中的Ubuntu磁盘进行扩充。在操作的过程中遇到扩充后无法启动系问题:/dev/disk/by-uuid does not exist,停留在initramfs。
这里写图片描述

出现这种原因是因为扩充后,分区的起始信息和原来的不一样。现将具体的扩充步骤记录如下:

  • 查看分区信息
    在扩充前需要通过fdisk命令查看当前的分区信息,并将分区信息保存到文本中
# sudo fdisk -l
  • 1

这里写图片描述

使用VMware进行空间扩展
首先关闭ubuntu系统,然后在VMware编辑界面
这里写图片描述

    在填写扩展容量的时候,数字必须比当前的容量要大,并且硬盘的存储空间要足够。
    重建系统分区
    在扩展完成后,重新启动系统。本次主要是扩展sda6,但是sda5,sda6都是sda2扩展分区里面的某个区域,所以要扩展sda6必须要先删除sda2的整个分区表,然后在重新分配。
    第一步:删除sda2分区

# fdisk /dev/sda

Command (m for help): p        #查看分区表信息

Disk /dev/sda: 268.4GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005210c

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      976895      487424   83  Linux
/dev/sda2          978942   209713151   104367105    5  Extended
/dev/sda5          978944     4976639     1998848   82  Linux swap / Solaris
/dev/sda6         4978688   209713151   102367232   83  Linux

Command (m for help): d           #删除分区
Partition number (1-6): 6         #删除sda6

Command (m for help): d           #删除分区
Partition number (1-5): 5         #删除sda5

Command (m for help): d           #删除分区
Partition number (1-2): 2         #删除sda2

Command (m for help): p           #再次查看分区信息

Disk /dev/sda: 268.4GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005210c

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      976895      487424   83  Linux

第二步:创建新的扩展分区

Command (m for help): n         #创建新分区
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): e           #创建扩展分区
Partition number (1-4, default 2):
Using default value 2
First sector (976896-524287999, default 976896):
Using default value 976896
Last sector, +sectors or +size{K,M,G} (976896-524287999, default 524287999):
Using default value 524287999

第三步:对扩展分区进行分区
对扩展分区进行分区的时候,要注意上面保存的原先分区表的信息。注意起始和空间大小。
根据原来的分区样式,先分区swap空间
这里写图片描述

这里需要注意其起始位置是否和原来的一样,+3997695是原先swap分区的结束地址-起始地址的偏移量。接着通过把当前的空间改为swap空间

这里写图片描述

swap分区创建完成后,接着创建第二个分区,把所有的空间都放到最后一个空间内,即完成sda6空间的扩展
这里写图片描述

完成后,输入wq命令,保存退出。

第五步:更新分区空间信息

# resize2fs -p /dev/sda6

如果不更新分区信息,则新扩展的空间将无法使用和看到,所以需要通过该命令更新分区的信息,重新调整大小。

核心关键:扩展分区后,需要保证现在与原先分区的起始信息要一致,否则会出现系统无法启动的问题。

第六步 格式化和挂载新建分区

$mkfs -t ext4 /dev/sdax

手动挂载:

$mount -t ext4 /dev/sdax  /mount目录

上电挂载:

$vim /etc/fstab

加入最后一行,截图来自网络。

第七步,重启即可

查看挂载路径:$df -h

查看磁盘分区:fdisk -l


 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐