VirtualBox固定大小的vdi虚拟磁盘扩容
VirutalBox 虚拟机固定大小的vdi磁盘扩容,使用Ubuntu系统。
1. 背景和目标
现有一个Ubuntu系统的虚拟机,虚拟磁盘文件格式为.vdi
,固定分配的大小为20G
,空间即将用尽,需要扩容到40G
。
2. 原理
新建一个比原来固定磁盘容量大的固定大小的硬盘,使用linux下的dd
命令将原虚拟硬盘的内容全部复制到新硬盘中,然后移除(删除)原硬盘,即可实现虚拟硬盘的扩容。
3. 准备
- Ubuntu系统的镜像 (
.iso
)
4. 开始扩容
4.1 备份
主机空间充足的情况下,最好备份原vdi文件,防止后续操作出错导致数据丢失。
4.2 挂载Ubuntu系统镜像(.iso)
4.3 添加新的虚拟硬盘
添加一块新的固定大小的虚拟硬盘,我这里需要将原虚拟硬盘扩容为40G,因此这里创建一块40G大小的虚拟硬盘。
- 虚拟硬盘文件类型:
vdi
- 大小分配类型:
固定大小
- 文件位置和大小:
40.00 GB
点击创建,耐心等待创建完成。
创建完成后,选择新创建的硬盘。
4.4 启动虚拟机
- 桌面版的Ubuntu:可以选择
Try Ubuntu
,进入试用的桌面后,打开shell。 - 服务器版的Ubuntu:如下,在语言选择页面,从
Help
那里进入shell。
输入命令 fdisk -l
查看系统的磁盘信息。
使用dd
命令复制硬盘内容。
dd if=/dev/sda of=/dev/sdb
耐心等待该命令执行完成…
4.5 关闭虚拟机
shutdown -h now
4.6 移除原硬盘 (20G)
4.7 启动虚拟机
启动虚拟机后切换到root用户。
4.8 修复分区表
执行命令 fdisk -l
命令时出现如下错误。
GPT PMBR size mismatch will be corrected by write
解决方案:执行如下命令,提示输入 Fix
parted -l
4.9 使用parted追加容量到/dev/sda3
parted /dev/sda
(parted) unit s # 设置size单位,方便追加输入
(parted) p free # 查看分区详情
(parted) resizepart 3 # 调整/dev/sda3的容量
End? [41940991s]? 83886064s # 扩充至剩余的所有容量
4.10 更新物理卷
# 更新pv物理卷
pvresize /dev/sda3
# 查看状态
pvdisplay
4.11 LVM逻辑卷扩容
lvdisplay
# 逻辑卷扩容
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
# 刷新逻辑卷
resize2fs /dev/ubuntu-vg/ubuntu-lv
df -h
5. 拓展 (逻辑卷、物理卷)
引自:https://www.cnblogs.com/lijiaman/p/12885649.html
逻辑卷是使用逻辑卷组管理(Logic Volume Manager)创建出来的设备,如果要了解逻辑卷,那么首先需要了解逻辑卷管理中的一些概念。
- 物理卷(Physical Volume,PV):也就是物理磁盘分区,如果想要使用LVM来管理这个分区,可以使用fdisk将其ID改为LVM可以识别的值,即8e。
- 卷组(Volume Group,VG):PV的集合
- 逻辑卷(Logic Volume,LV):VG中画出来的一块逻辑磁盘。
了解概念之后,逻辑卷是如何产生的就很清晰了:物理磁盘或者磁盘分区转换为物理卷,一个或多个物理卷聚集形成一个或多个卷组,而逻辑卷就是从某个卷组里面抽象出来的一块磁盘空间。具体架构如下:
END
Thanks for Reading!
转载自作者个人网站:https://blog.icrystal.top/archives/9.html
作者:iCrystal
邮箱:leopard.c@outlook.com
博客:https://blog.icrystal.top
GitHub: https://github.com/Leopard-C
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)