Ubuntu Linux 命令行更改 VirtualBox 虚拟机路径及配置

远程在 Ubuntu 服务器上安装 Vagrant + VirtualBox 运行测试程序,由于 /home 区的空间限制,虚拟机不能放在用户 home 目录下的 VirtualBox VMs 目录当中。远程机器也没有 VirtualBox 的图形界面,因此需要在命令行进行操作。

首先找到 VirtualBox 的配置文件,一般在用户的 ~/.config/VirtualBox 目录下,我们用编辑器打开:

<?xml version="1.0"?>
<!--
** DO NOT EDIT THIS FILE.
** If you make changes to this file while any VirtualBox related application
** is running, your changes will be overwritten later, without taking effect.
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
-->
<VirtualBox xmlns="http://www.virtualbox.org/" version="1.12-linux">
  <Global>
    <ExtraData>
      <ExtraDataItem name="HostOnly/vboxnet0/IPAddress" value="192.168.33.1"/>
      <ExtraDataItem name="HostOnly/vboxnet0/IPNetMask" value="255.255.255.0"/>
    </ExtraData>
    <MachineRegistry>
      <MachineEntry uuid="{97f4ef5f-42d1-492d-8b5e-cd536f8b9496}" src="/home/user1/VirtualBox VMs/myvm/myvm.vbox"/>
    </MachineRegistry>
    <NetserviceRegistry>
      <DHCPServers>
        <DHCPServer networkName="HostInterfaceNetworking-vboxnet0" IPAddress="192.168.56.100" networkMask="255.255.255.0" lowerIP="192.168.56.101" upperIP="192.168.56.254" enabled="1"/>
      </DHCPServers>
    </NetserviceRegistry>
    <SystemProperties defaultMachineFolder="/home/user1/VirtualBox VMs" defaultHardDiskFormat="VDI" VRDEAuthLibrary="VBoxAuth" webServiceAuthLibrary="VBoxAuth" LogHistoryCount="3" exclusiveHwVirt="true"/>
    <USBDeviceFilters/>
  </Global>
</VirtualBox>

从中我们可以看到提示,就是一般不要直接对此文件进行编辑,在 VirtualBox 相关程序运行时会程序缓存的内容覆盖此文件,造成修改结果无效。因此我们修改时要确认没有虚拟机或 VirtualBox 相关进程在运行。

将 defaultMachineFolder 项目更改到你期望的目录,则新建的虚拟机容器就会放到新目录中。对原有的虚拟机可以移动到相应目录,更改 MachineRegistry 项目中的 src 内容。

对于 vagrant 的 box 镜像目前尚未找到配置项,可以将 ~/.vagrant/boxes 目录移到其它分区的磁盘上,然后建立符号链接到目标位置,这样也能减少 /home 目录的占用空间。

猜你喜欢

转载自blog.csdn.net/whyliu_/article/details/127578801