如何自动调整linux guest虚拟机的vagrant disk映像大小?

Chr*_*now 14 vagrant

在线有许多步骤可以手动增加流浪盘大小,例如:link

如果调整大小可以自动完成,这将是很好的Vagrantfile,如下所示:

  config.vm.provider :virtualbox do |vb|
    if first_up      # only run on the first 'up' command
      disk_uuid = ?  # how to get the disk_uuid?
      vb.customize ["modifyhd", disk_uuid, "--resize", "15360"]
      config.vm.provision "shell", path: "resize2fs -p -F /dev/sda"
    end
  end
Run Code Online (Sandbox Code Playgroud)

问题:如何以跨平台的方式找出磁盘uuid?

问题:这是调整客户磁盘大小所需的全部内容吗?

Chr*_*now 5

我发现以下选项很有用:

1)将另一个磁盘添加到Vagrant框中.

这里查看我对AskUbuntu上类似问题的回答.

2)使用Opscode Vagrant盒子,这些盒子往往有40Gb磁盘

有关更多信息,请参阅opscode页面.

3)使用打包器创建自己的盒子.

阅读封隔器教程后,您可以从其他地方(例如opscode)复制打包器定义并调整磁盘大小.


更多信息:

Vagrant的问题跟踪器提出了一个关于扩展流浪盘的问题.


Guy*_*oft 5

有一个vagrant-disksize插件。

您可以通过执行以下命令安装它:

vagrant plugin install vagrant-disksize

然后你可以像这样将它包含在 Vagrantfile 中:

Vagrant.configure('2') do |config|
  config.vm.box = 'ubuntu/xenial64'
  config.disksize.size = '50GB'
end
Run Code Online (Sandbox Code Playgroud)

它目前仅限于第一个磁盘。