VirtualBox:扩展分区
我安装了 virtualbox-4.1.0 和 centos-5.6。现在我想扩展之前分配给虚拟机安装的 VM 映像,它是 8Gb,现在还不够。有没有办法在不丢失信息的情况下扩展分区?
实际上,在centos中,我有一个根文件系统和我的主目录等,所以这个分区最终需要调整大小。
预先感谢您的建议!
I have virtualbox-4.1.0 with centos-5.6 installed in. Now I would like to extend the VM image, which I previously allocated for virtual machine installation, it was 8Gb, that's not enough now. Is there a way to extend the partition without loosing information?
Actually in centos I have one root fs with my home dir etc. so this partition eventually would need to be resized.
Thanks in advance for suggestions!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
只需 4 个步骤即可完成:
详细步骤如下(使用“虚拟机CentOS 6.4”和“VirtualBox 4.2.18”测试);
观察virtualbox文件的磁盘格式,如果不是*.vdi,则将磁盘格式从*.wmdk转换为*.vdi。打开 Windows 终端:
$ VBoxManage clonehd --format VDI "path_of_wmdk_file" "path_of_vdi_file"
调整 vdi 文件的磁盘大小。打开 Windows 终端。例如,磁盘大小 ~500 GB => 512000;
$ VBoxManagemodifymedium "path_of_vdi_file" --resize 512000
选择 *.vdi 文件而不是 *.wmdk 文件作为磁盘
虚拟机 ->设置->存储->控制器:SATA(右键单击 *.wmdk 文件)->删除附件->添加硬盘并选择新创建的*.vdi文件
从http://gparted.sourceforge.net/download.php。将此 iso 文件安装为 CD。
虚拟机 ->设置->存储->控制器 IDE(右键单击)->添加 CD/DVD ->选择 gparted-live-x.xx.xx-ixxx.iso 文件
运行虚拟机,虚拟机将从这张CD启动。按“Enter”、“Enter”选择默认值...直到 Gpart ISO GUI 启动。选择工具gpart程序并启动。
如下扩展磁盘大小;
虚拟机 ->设置->存储->控制器 IDE(右键单击 gparted-live-x.xx.xx-ixxx.iso)->删除附件
打开 Linux 终端并以 root 身份登录。运行下面的命令;
It can be done in 4 steps :
The detailed steps are below (tested with "Virtual Machine CentOS 6.4" and "VirtualBox 4.2.18");
Observe disk format of the virtualbox file, if it is not *.vdi, convert disk format from *.wmdk to *.vdi. Open windows terminal:
$ VBoxManage clonehd --format VDI "path_of_wmdk_file" "path_of_vdi_file"
Resize disk size of vdi file. Open windows terminal. For example to do disk size ~500 GB => 512000;
$ VBoxManage modifymedium "path_of_vdi_file" --resize 512000
Choose *.vdi file instead of *.wmdk file as disk
Virtual Machine -> Settings -> Storage -> Controller : SATA (Right Click on *.wmdk file) -> Remove Attachment -> Add HardDisk and choose newly created *.vdi file
Download "gparted-live-x.xx.x-x-ixxx.iso" file from http://gparted.sourceforge.net/download.php. Mount this iso file as CD.
Virtual Machine -> Settings -> Storage -> Controller IDE (Right Click) -> Add CD/DVD -> Select gparted-live-x.xx.x-x-ixxx.iso file
Run virtual machine, Virtual Machine will boot from this CD. Choose default values with pressing "Enter", "Enter" ... until Gpart ISO GUI starts. Select tool gpart program and start.
Extend disk size as below;
Virtual Machine -> Settings -> Storage-> Controller IDE (Right Click on gparted-live-x.xx.x-x-ixxx.iso) -> Remove Attachement
Open linux terminal and login as root. Run commands below;
我使用的是 CentOS7 virtualbox,最后我扩大了分区
/dev/mapper/centos-root
- gparted 对我不起作用,因为我在 CentOS7 virtualbox 上没有桌面。virtualbox ->;设置->存储-> *.vdi->位置
例如我的位于~/VirtualBox VMs/CentOS7/CentOS.vdi
备份您的映像,以防万一出现问题
$ cp CentOS7.vdi CentOS7.backup.vdi
调整虚拟存储大小,例如 200 GB
$ VBoxManagemodifyhd CentOS7.vdi --resize 204800
启动 CentOS 虚拟机,发出问题
$ sudo fdisk -l
使用fdisk实用程序删除/创建分区
$ sudo fdisk /dev/sda
您位于fdisk实用程序交互模式,发出以下命令:(大多数情况下只需遵循默认建议)
d
- 删除分区2
- 选择要删除的分区(此处为 /dev/sda2)n
- 创建一个新分区p
- 使其成为主分区2
- 使其与我们删除的分区号相同
- 设置起始块(默认)
- 设置结束块(默认)w
- 写入分区并离开 fdisk 交互模式重新启动 CentOS 机器
$ sudo restart
调整物理卷大小并验证新大小
$ sudo pvresize /dev/sda2
$ sudo pvscan
看看你的逻辑映射卷,看看你想扩大哪个卷,在我的例子中,
/dev/mapper/centos-root
通过添加
-r
选项来调整文件系统的大小,它会照顾为您调整大小$lvextend -r -l +100%FREE /dev/mapper/centos-root
调整文件系统大小:
$resize2fs /dev/mapper/fedora-root
对于 CentOS 7:
$xfs_growfs /dev/mapper/fedora-root
最后检查:
$df -h
。参考:https://blog.jyore.com/2013/06/virtualbox-increase-size-of-rhelfedoracentosscientificos-guest-file-system/#comment-2879
I'm using a CentOS7 virtualbox, and I finally enlarged my partition
/dev/mapper/centos-root
- gparted doesn't work for me because I do not have a desktop on CentOS7 virtualbox.virtualbox -> settings -> storage -> *.vdi -> location
e.g. mine is located under~/VirtualBox VMs/CentOS7/CentOS.vdi
Back up your image just in case anything goes wrong
$ cp CentOS7.vdi CentOS7.backup.vdi
Resize your virtual storage size, e.g. 200 GB
$ VBoxManage modifyhd CentOS7.vdi --resize 204800
Power on your CentOS virtual machine, issue
$ sudo fdisk -l
Use fdisk utility to delete/create partitions
$ sudo fdisk /dev/sda
You are in the fdisk utility interactive mode, issue following commands: (mostly just follow the default recommendation)
d
- delete a partition2
- select a partition to delete (/dev/sda2 here)n
- create a new partitionp
- make it a primary partition2
- make it on the same partition number as we deleted<return>
- set the starting block (by default)<return>
- set end ending block (by default)w
- write the partition and leave the fdisk interactive modeReboot your CentOS machine
$ sudo reboot
Resize the physical volume and verify the new size
$ sudo pvresize /dev/sda2
$ sudo pvscan
Take a look at your logical mapping volume to see what volume you want to enlarge, in my case,
/dev/mapper/centos-root
Resize the file system by adding
-r
option, it will take care of resizing for you$lvextend -r -l +100%FREE /dev/mapper/centos-root
Resize the file system:
$resize2fs /dev/mapper/fedora-root
For CentOS 7:
$xfs_growfs /dev/mapper/fedora-root
Last check:
$df -h
.Reference:https://blog.jyore.com/2013/06/virtualbox-increase-size-of-rhelfedoracentosscientificos-guest-file-system/#comment-2879
我在下面的链接中找到了这个金块。我的工作非常适合我,只花了 5 秒钟。
从 VirtualBox 4 开始,他们添加了对扩展的支持。
这会将虚拟磁盘映像的大小调整为 45GB。
https://superuser.com/questions/172651/increasing-disk-space-on-virtualbox< /a>
I found this nugget at the link following. I worked perfect for me and only took 5 seconds.
As of VirtualBox 4 they added support for expansion.
That will resize a virtual disk image to 45GB.
https://superuser.com/questions/172651/increasing-disk-space-on-virtualbox
可以通过 3 个步骤完成:
不要忘记最后一部分,否则,您将有未分配的可用空间,您的磁盘仍将显示为已满。
我在这里写了一个教程来调整虚拟机磁盘大小
It can be done with 3 steps :
Don't forget the last part, otherwise, you will have unallocated free space and your disk will still appear as full.
I wrote a tutorial here to resize your VM Disk
在某些时候,VBoxManage 实用程序稍微改变了语法。值得注意的是,这并不适用于所有虚拟机类型,因此如果您有 *.vmdk,请小心。将 HD 更改为 40GB 的示例命令是:
仅供参考,我使用的是 VirtualBox 4.2.1、Mac 10.8.2
At some point the VBoxManage utility changed the syntax a little bit. It's worth noting that this doesn't work on all vm types so beware if you have a *.vmdk. An example command to change your HD to 40GB is:
For reference I am on VirtualBox 4.2.1, Mac 10.8.2
来自 VirtualBox 常见问题解答:
或者,您可以附加另一个 VDI 并将 /home 安装在那里。
From the VirtualBox FAQ:
Alternatively you could attach another VDI and mount your /home there.
在 Oracle VirtualBox 论坛上搜索 CloneVDI 工具。它对我很有用,对于任何对命令行感到紧张的人来说,它都是一个更简单的基于 GUI 的程序。还允许从固定模式转换为动态模式,VBoxManage.exe 尚不支持。
https://forums.virtualbox.org/viewtopic.php?f= 6&t=22422
Search for CloneVDI tool on the Oracle VirtualBox forums. It worked for me and is a much easier GUI based program for anyone nervous at the command line. Also allows conversion from fixed to dynamic mode which VBoxManage.exe doesn't support (yet).
https://forums.virtualbox.org/viewtopic.php?f=6&t=22422
我花了很长时间谷歌搜索,终于让它对我有用。 (在我发现这个之前)我想要一个地方来保存我的工作
下面是我从 fedora 终端复制的命令:
I spent a long time googling and finally got it working for me. ( before I found this ) And I wanted a place to save my work
Below is commands I copied from terminal in fedora :