我想使用带有2个磁盘的vagrant创建vm。 vm在gui上显示错误“致命:无法从启动媒体读取”。如果创建没有任何磁盘任何磁盘,它运行正常。 这是我的Vagrantfile:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define "cn1" do |cn1|
cn1.vm.box = "trusty"
cn1.vm.hostname = "cn1"
cn1.vm.network "private_network", ip: "192.168.100.11"
cn1.vm.network "private_network", ip: "10.10.10.11"
cn1.vm.host_name = "controller1"
cn1.vm.provider :virtualbox do |vb|
vb.memory = 500
vb.customize ["createhd", "--filename", "machine1_disk0", "--size", "8192"]
vb.customize ["createhd", "--filename", "machine1_disk1", "--size", "8192"]
vb.customize ["storagectl", :id, "--name", "SATA Controller", "--remove"]
vb.customize ["storagectl", :id, "--name", "SATA Controller", "--add", "sata"]
vb.customize ["storageattach", :id, "--storagectl", "SATA Controller", "--port", "1", "--type", "hdd", "--medium", "machine1_disk0.vdi"]
vb.customize ["storageattach", :id, "--storagectl", "SATA Controller", "--port", "2", "--type", "hdd", "--medium", "machine1_disk1.vdi"]
vb.gui = true
end
end
end
答案 0 :(得分:0)
VirtualBox告诉您无法从磁盘启动。
如果您打开VirtualBox并查看VM的设置,在存储下,您会发现您声明了2个磁盘,但未附加基本映像。
如果你现在查看你的文件系统(位置取决于你的操作系统,我在mac上)这个VM
fhenri@machine:~/Documents/Virtual Machines.localized/trusty_cn1_1454620633289_44965$ ll
total 3174824
drwx------ 6 fhenri staff 204 4 fév 22:17 .
drwxr-xr-x 12 fhenri staff 408 4 fév 22:17 ..
drwx------ 3 fhenri staff 102 4 fév 22:17 Logs
-rw------- 1 fhenri staff 1625489408 4 fév 22:19 box-disk1.vmdk
-rw------- 1 fhenri staff 8488 4 fév 22:17 trusty_cn1_1454620633289_44965.vbox
-rw------- 1 fhenri staff 8143 4 fév 22:17 trusty_cn1_1454620633289_44965.vbox-prev
所以vagrant已经在box-disk1.vmdk
导入了这个盒子,但你已经删除了这个磁盘并添加了2个空白磁盘,因此无法启动。
如果删除这2行
vb.customize ["storagectl", :id, "--name", "SATAController", "--remove"]
vb.customize ["storagectl", :id, "--name", "SATAController", "--add", "sata"]
然后磁盘仍然连接到VM,您可以启动。
现在,如果您在VirtualBox中打开VM设置,您将找到3个磁盘(在SATA控制器下):