根据博文中的说法,如果是下载的box文件(我操作时确实是下载的box文件),vagrant box add和init之后启动,可能出现长时间无法通过vagrant ssh登陆的问题
说是有两种可能
(1)其一是虚拟机确实启动失败,由于vagrant默认不显示虚机启动界面,所以不太好判断。因此需要在Vagrantfile配置中增加vb.gui = true选项,就可以查看虚机的启动过程(我的理解是加上该选项之后,可以使得在vagrant up启动虚拟机的时候显示virtualbox启动界面,以便查看是否是PC的vt-x支持没有开启)。常见问题是没有开启PC的vt-x支持,进BIOS修改配置即可。
(2)其二是如果使用拷贝过来的Vagrantfile进行up启动
可能会由于ssh认证机制导致失败。vagrant默认采用key登录,但所用的KeyPair可能没有正常配置。
于是先对第一种可能的错误进行验证
在Vagrantfile文件中加入:
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
如下:
因为前面执行vagrant up失败了,所以先执行vagrant halt停止虚拟机、vagrant destroy销毁虚拟机
接着使用sudo vagrant up���令再次启动虚拟机,果然再次出错了,不过因为在Vagrantfile配置中增加vb.gui = true选项,所以这次报错时virtualbox的报错也显示出来了,如下图——果然是因为CUP不支持虚拟化的缘故
为了确认是否Ubuntu的CPU确实不支持虚拟化,通过下图中所说的方法查看
实际查询如下图:
果然。。。
(2)错误二:在ubuntu的CPU支持虚拟化的情况下执行第8步启动虚拟机时出现的问题
正如上图红框中所说的,使用的box镜像可能有问题,因此我换了CentOS的box进行,之后安装成功。