Oracle VM VirtualBox已经对(备份过的多次的)根目录磁盘进行了扩容,但查询到的大小没有改变的解决方案
近期在用Oracle VM VirtualBox进行代码编译,发现根目录的存储空间不够了,但已经对磁盘进行了扩容,使用fdisk -l查询时发现分配的空间大小还是没有改变,根本原因竟是因为 备份(快照) 。
扩容后的查询不到空间
剩余空间大小:
在windows下使用cmd扩充了磁盘,从原有的10G到现在的50G,然后再去虚拟机中查询分配空间大小发现没有改变,导致无法进行接下来的分区操作。
此时查询发现空间大小还是没有改变。
查询原因
之后发现因为做了多次快照,(下图非原有情况截图,因为在处理过程中原有快照已被删除)
首先查看当前的虚拟硬盘使用的UUID是哪一个。
在使用VBoxManage list hdds查看UUID下的分配空间是否是对应的50G。结果发现该UUID下分配的只有10G
原因如下图所示,在分配空间时,空间全部加到初始的(父类)UUID上,没有分配给其它快照(子类)UUID,而当前使用的是最后一次快照的(子类)UUID。
此时在对当前使用的UUID进行一次和扩容后,在使用fdisk -l查询发现分配空间大小已经改变
之后就分区操作 fdis /dev/sda
n+回车+分配大小+t(修改类型)+w
发现多了一个分区 /dev/sda2。(此时注意分区在不要有扩展类型的设备)
然后重启Ubuntu虚拟机。
reboot
格式化分区:
格式化刚才划好的分区/dev/sda2 (如果提示ext4不存在就ext3)
sudo mkfs -t ext4 /dev/sda2