1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 虚拟机服务器扩容 vmware虚拟机 ubuntu根目录磁盘扩容

虚拟机服务器扩容 vmware虚拟机 ubuntu根目录磁盘扩容

时间:2024-05-04 09:11:35

相关推荐

虚拟机服务器扩容 vmware虚拟机 ubuntu根目录磁盘扩容

本以为磁盘扩容是个简单的事儿,结果却折腾一个多小时。。搜索引擎的结果各种不靠谱

错误详情

GPT PMBR size mismatch (104857599 != 629145599) will be corrected by w(rite).

1. 先在虚拟机软件上进行常规的扩容操作

虚拟机执行扩容

服务器关机后,粗暴的先直接扩容完事

2. 使用fdisk进行分区修改扩容

废话开篇:

在虚拟机操作完扩容后,重启服务器使用fdisk后便出现错误

fdisk -l

.....

GPT PMBR size mismatch (1439776 != 30031871) will be corrected by write.

这个错误其实可以不用管,大致是gpt分区末尾不在磁盘的末尾的意思(因为扩容了)

然后当时我纠结于此,很多的搜索结果都是用parted -l 修复分区表错误,然而我试了没有效果,并没有Fix/Ignore?问我是否修复

这之后尝试了各种工具gparted gdisk等因为不会用全都不了了之。其中有教程关于gparted的图形化软件,可以像 win的diskgenius一样直接操作,可惜我是服务器版,没有图形桌面,命令行的gparted又完全不会用。。。

后来看到百度经验的一篇帖子,大致浏览后就是把之前分区都删了,然后建立新分区扩容

当时我还嗤之以鼻,这不会把数据弄没吗?我要扩容根目录又不是空白磁盘,而且看他的操作中没有和我一样的错误,就没在关心了

之后在搜索结果的时候无意中发现这样一句话

修改分区表不会删除分区内实际的数据

突然感觉有点意思,给虚拟机拍了个快照,开始操作

操作

fidsk /dev/sda # 进入目标磁盘

看到以下红色错误,无视

GPT PMBR size mismatch (*** != ***) will be corrected by write.

查看分区表

Command (m for help): p

Device Start End Sectors Size Type

/dev/sda1 2048 4095 2048 1M BIOS boot

/dev/sda2 4096 83886046 83881951 40G Linux filesystem

删除根目录分区

磁盘的扇区都是连续的,扩容后新增加的扇区在末尾增加,如果你想扩容的分区后面还有其他AB分区,那只能同时删掉AB等分区。

将要扩容的分区调大后,在末尾空余一定的空间用来建立AB分区。当然如果AB分区之前有文件的话一定会丢失,先拷贝出来,然后放到新建的AB分区就好

删除根目录分区

Command (m for help): d

Partition number (1,2, default 2):2

重新建立根目录分区

Command (m for help): n

Partition number (3-128, default *): 分区编号

First sector (**-**): 起始柱面号 一定要与之前相同

Last sector, +sectors or +size{K,M,G,T,P} (**-**, default *): 结束柱面号 或者 按容量分配:+40g

放心保存,会有红色错误不用管

Command (m for help): w

此时用 fdisk 再次进入硬盘已经看不到之前的红色错误了。重启服务器

3. 使扩容后的分区容量生效

重启后容量依然没变,执行以下命令

resize2fs /dev/sda2

然后df查看一下挂载容量,已经扩容成功了

总结

此方法适用于没有其他包含数据的分区,需要备份数据很麻烦。

受限于win上一直使用diskgenius的缘故,以及方便的调整分区自动转移文件,对于Linux的命令行束手无策了

此次额外理解部分:

分区表与分区内数据的关系

转载请注明 Saopanda和简书链接

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。