Vagrant,如何指定磁盘大小?
我想确保我的开发环境有足够的空闲空间来安装工具和其他东西。我找不到任何关于告诉Vagrant我想要的最小磁盘大小的配置选项。这是可能的,还是我需要创建自己的框?这应该使用提供程序来完成,例如virtualbox配置设置示例 config.vm.provider“virtualbox”do | v| v、 定制[“modifyvm”,:id,“--cpuexecutioncap”,“50”] 结束 但是在modifyvm部分,我没有看到任何与磁盘大小调整有关的内容!!也许你可以尝试连接一个辅助磁盘Vagrant,如何指定磁盘大小?,vagrant,Vagrant,我想确保我的开发环境有足够的空闲空间来安装工具和其他东西。我找不到任何关于告诉Vagrant我想要的最小磁盘大小的配置选项。这是可能的,还是我需要创建自己的框?这应该使用提供程序来完成,例如virtualbox配置设置示例 config.vm.provider“virtualbox”do | v| v、 定制[“modifyvm”,:id,“--cpuexecutioncap”,“50”] 结束 但是在modifyvm部分,我没有看到任何与磁盘大小调整有关的内容!!也许你可以尝试连接一个辅助
我使用了vagrant插件来调整磁盘大小 成功了。它还可以帮助指定初始磁盘大小 在命令行中运行以下命令:
vagrant plugin install vagrant-disksize
并在您的文件中使用以下内容:
vagrant.configure('2') do |config|
config.vm.box = 'ubuntu/xenial64'
config.disksize.size = '50GB'
end
安装流浪插件
如果您想确保用户安装了插件,在启动vagrant时,您可以将其添加到vagrant文件的开头
# Install vagrant-disksize to allow resizing the vagrant box disk.
unless Vagrant.has_plugin?("vagrant-disksize")
raise Vagrant::Errors::VagrantError.new, "vagrant-disksize plugin is missing. Please install it using 'vagrant plugin install vagrant-disksize' and rerun 'vagrant up'"
end
vagrant.configure('2') do |config|
config.disksize.size = '50GB'
end
在文件中设置所需的磁盘大小
# Install vagrant-disksize to allow resizing the vagrant box disk.
unless Vagrant.has_plugin?("vagrant-disksize")
raise Vagrant::Errors::VagrantError.new, "vagrant-disksize plugin is missing. Please install it using 'vagrant plugin install vagrant-disksize' and rerun 'vagrant up'"
end
vagrant.configure('2') do |config|
config.disksize.size = '50GB'
end
更新现有的流浪者框
如果您的“流浪者”框使用LVM并且已经创建,则与Firze的答案相比,还需要其他步骤:
- 安装Vagrant插件Vagrant disksize
- 在文件中设置所需的磁盘大小
- 重新启动vagrant框(您应该看到类似“调整大小的磁盘…”)
- 宋承宪到流浪汉包厢
- 使用vgdisplay检查旧尺寸:
- 假设设备为/dev/sda,则必须调整扩展和逻辑分区的大小:
- 然后,LVM应该看到修改:
- 扩展LVM组:
- 最后,调整文件系统的大小:
很遗憾,流浪汉没有一个便携的方式来做这件事。提供程序执行的操作将文件锁定到该提供程序。。无论如何,谢谢!!!哇,那太好了,你应该把一切都修好。我现在不使用它,但我会尝试一下。谢谢如果我以
Vagrant up
开始,Vagrant下载的内容的文件大小是多少?使用此插件后,我销毁了盒子,然后执行Vagrant up
以使较大的磁盘工作<代码>流浪停止;vagrant up无法工作,因为来宾操作系统没有看到新的磁盘空间。与其解决这个新问题,对我来说,重新创建盒子是一个更简单的解决方案,而且效果很好。您还可以使用gparted live cd启动来宾计算机,然后调整磁盘大小,而无需销毁旧磁盘。我想这完全取决于在您的特定情况下哪个更难。请注意,这会扩展磁盘,而不是逻辑卷或分区。它们必须根据您使用的盒子进行扩展。这里有一个ubuntu的例子:我尝试过使用这个方法,但在cfdisk中“resize”不是一个选项。从这里我该怎么办?步骤9sudo resize2fs-p-F/dev/sda1
在试图打开/dev/sda1时给了我错误resize2fs:super块中的错误幻数<代码>找不到有效的文件系统超级块
。你能帮个忙吗?你用的是什么版本的流浪汉?我收到关于vagrant需要Virtualbox的错误,但安装vbox 6.1失败。我找不到那个组合works@KevinDTimm我正在使用VirtualBox 6.1.x和Vagrant 2.2.x。无论如何,如果你不能安装VirtualBox,你的问题可能与版本无关。您应该找出是什么阻止了VirtualBox的安装。@Firze-我无法安装模块vboxdrv,因此无法完成。找到了另一条路,所以我继续前进。谢谢你的回复。
vagrant.configure('2') do |config|
config.disksize.size = '300GB'
end
vagrant hatl
vagrant up
vgdisplay
--- Volume group ---
VG Name vagrant-vg
System ID
Format lvm2
...
Alloc PE / Size 16200 / 63.28 GiB
Free PE / Size 0 / 0
parted /dev/sda
p
Number Start End Size Type File system Flags
1 1049kB 768MB 767MB primary ext2 boot
2 769MB 68.7GB 67.9GB extended
5 769MB 68.7GB 67.9GB logical lvm
resizepart 2 321GB
resizepart 5 321GB
p
Number Start End Size Type File system Flags
1 1049kB 768MB 767MB primary ext2 boot
2 769MB 322GB 321GB extended
5 769MB 321GB 320GB logical lvm
quit
pvresize /dev/sda5
vgdisplay
Alloc PE / Size 16200 / 63.28 GiB
Free PE / Size 60148 / 234.95 GiB
lvextend -L+234.95 /dev/vagrant-vg/root
Size of logical volume vagrant-vg/root changed from 62.32 GiB (15955 extents) to 297.27 GiB (76102 extents).
Logical volume root successfully resized.
vgdisplay
Alloc PE / Size 76347 / 298.23 GiB
Free PE / Size 1 / 4.00 MiB
resize2fs /dev/vagrant-vg/root
df -h
/dev/mapper/vagrant--vg-root 293G 59G 222G 21% /