我想确保我的开发环境有足够的可用空间来安装工具和其他东西.关于告诉Vagrant我想要的最小磁盘大小,我找不到任何配置选项.这是可能的还是我需要创建自己的盒子?
Lau*_*hen 53
我使用vagrant插件vagrant-disksize来调整磁盘大小.
有效.它还可以帮助指定初始磁盘大小.
vagrant plugin install vagrant-disksize
Run Code Online (Sandbox Code Playgroud)
Fir*_*rze 18
安装 Vagrant 插件vagrant-disksize
vagrant plugin install vagrant-disksize
Run Code Online (Sandbox Code Playgroud)
如果你想确保用户安装了插件,在启动 vagrant 时,你可以在 Vagrantfile 的开头添加这个
# 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
Run Code Online (Sandbox Code Playgroud)
在 Vagrantfile 中设置所需的磁盘大小
vagrant.configure('2') do |config|
config.disksize.size = '50GB'
end
Run Code Online (Sandbox Code Playgroud)
更新现有的流浪箱
W1M*_*M0R 11
更新 1:自 Vagrant v2.4.0 起,不再将其标记为实验性的。
Vagrant 最近通过 VirtualBox 提供程序添加了对自定义磁盘大小(包括磁盘调整大小)的实验性支持。一些常见的使用场景记录在此处和此处。
要激活此功能,请修改Vagrantfile
(请参阅下面的示例),VAGRANT_EXPERIMENTAL="disks"
在 shell 中设置环境变量,然后运行vagrant up
.
以下是使用基础盒(基于LVMVagrantfile
)在 上测试的示例:Vagrant 2.2.19
bento/ubuntu-20.04
Vagrant.configure("2") do |config|
...
config.vm.disk :disk, size: "150GB", primary: true
config.vm.box = "bento/ubuntu-20.04"
config.vm.box_version = "202005.21.0"
config.vm.box_check_update = false
...
end
Run Code Online (Sandbox Code Playgroud)
您应该在 期间看到以下输出(或多或少)vagrant up
:
Vagrant.configure("2") do |config|
...
config.vm.disk :disk, size: "150GB", primary: true
config.vm.box = "bento/ubuntu-20.04"
config.vm.box_version = "202005.21.0"
config.vm.box_check_update = false
...
end
Run Code Online (Sandbox Code Playgroud)
此过程可能需要一段时间才能完成(在我的例子中,需要 1 到 2 小时)。
使用vagrant ssh
进入您的虚拟机,然后使用以下命令(基于此答案)收集有关文件系统的信息,然后扩展 LVM 卷。如果您的基础设备不使用 LVM,则不应使用这些命令。
==> vagrant: You have requested to enabled the experimental flag with the following features:
==> vagrant:
==> vagrant: Features: disks
==> vagrant:
==> vagrant: Please use with caution, as some of the features may not be fully
==> vagrant: functional yet.
Bringing machine 'server' up with 'virtualbox' provider...
==> server: Clearing any previously set forwarded ports...
==> server: Clearing any previously set network interfaces...
==> server: Preparing network interfaces based on configuration...
server: Adapter 1: nat
==> server: Forwarding ports...
server: 22 (guest) => 49222 (host) (adapter 1)
server: 4200 (guest) => 49280 (host) (adapter 1)
server: 4243 (guest) => 49243 (host) (adapter 1)
==> server: Configuring storage mediums...
server: Disk 'vagrant_primary' needs to be resized. Resizing disk...
Run Code Online (Sandbox Code Playgroud)
如果您的 vagrant box 使用 LVM 并且已经创建,则与 Firze 的答案相比,需要额外的步骤:
vagrant plugin install vagrant-disksize
Run Code Online (Sandbox Code Playgroud)
vagrant.configure('2') do |config|
config.disksize.size = '300GB'
end
Run Code Online (Sandbox Code Playgroud)
vagrant halt
vagrant up
Run Code Online (Sandbox Code Playgroud)
SSH 到 vagrant box
使用 vgdisplay 检查旧尺寸:
vgdisplay
--- Volume group ---
VG Name vagrant-vg
System ID
Format lvm2
...
Alloc PE / Size 16200 / 63.28 GiB
Free PE / Size 0 / 0
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
pvresize /dev/sda5
vgdisplay
Alloc PE / Size 16200 / 63.28 GiB
Free PE / Size 60148 / 234.95 GiB
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
resize2fs /dev/vagrant-vg/root
df -h
/dev/mapper/vagrant--vg-root 293G 59G 222G 21% /
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
18038 次 |
最近记录: |