gpt4 book ai didi

virtualbox - Vagrant VirtualBox 第二个磁盘路径

转载 作者:行者123 更新时间:2023-12-03 16:30:07 28 4
gpt4 key购买 nike

我有 Vagrant + VirtualBox。

在我的 Vagrantfile 中,我有

config.vm.provider "virtualbox" do |v|
v.customize [ "createhd", "--filename", "disk", "--size", 100000 ]
v.customize [ 'storageattach', :id, '--storagectl', 'SATA Controller', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', "disk"]
end

当我用 vagrant up 启动时,它会在
C:\HashiCorp\Vagrant\bin\disk
VBoxManage.exe: error: Could not find file for the medium 'C:\HashiCorp\Vagrant\bin\disk' (VERR_FILE_NOT_FOUND)

我希望磁盘与虚拟机的第一个磁盘一起存在
C:\Users\jma47\VirtualBox VMs\bin_build_1389371691

我怎样才能在 Vagrantfile 中做到这一点?

最佳答案

如果您为虚拟机定义名称,则可以这样做:

# Try to make it work on both Windows and Linux
if (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
vboxmanage_path = "C:\\Program Files\\Oracle\\VirtualBox\\VBoxManage.exe"
else
vboxmanage_path = "VBoxManage" # Assume it's in the path on Linux
end

Vagrant.configure(2) do |config|
config.vm.box = "debian/wheezy64"

config.vm.provider "virtualbox" do |vb|
vb.name = "VM Name"

# Get disk path
line = `"#{vboxmanage_path}" list systemproperties`.split(/\n/).grep(/Default machine folder/).first
vb_machine_folder = line.split(':', 2)[1].strip()
second_disk = File.join(vb_machine_folder, vb.name, 'disk2.vdi')

# Create and attach disk
unless File.exist?(second_disk)
vb.customize ['createhd', '--filename', second_disk, '--format', 'VDI', '--size', 60 * 1024]
end
vb.customize ['storageattach', :id, '--storagectl', 'IDE Controller', '--port', 0, '--device', 1, '--type', 'hdd', '--medium', second_disk]
end
end

关于virtualbox - Vagrant VirtualBox 第二个磁盘路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21050496/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com