vagrant 1.8.6 安装过程及总结遇到的坑

下面先总结遇到的问题,这些问题如果你也遇到,可能需要搜索很多次才能找到原因。

如果想看安装过程,可以先直接跳到后面第二部分部分。

1 问题汇总:

1.1 vagrant版本过高问题。

vagrant 1.8.7版本存在问题。可以搜索:"vagrant 1.8.7 cant download box"

https://github.com/mitchellh/vagrant/issues/6725 也上有人提到。

 1 /opt/vagrant/bin/vagrant -v
 2 Vagrant 1.8.7
 3 ?
 4 vagrant box add centos /Users/user/box/src/centos65-x86_64-20140116.box
 5 ==> box: Box file was not detected as metadata. Adding it directly...
 6 ==> box: Adding box ‘centos‘ (v0) for provider:
 7     box: Unpacking necessary files from: file:///Users/user/box/src/centos65-x86_64-20140116.box
 8 An error occurred while downloading the remote file. The error
 9 message, if any, is reproduced below. Please fix this error and try
10 again.

而且后面并没有列出具体的原因。要查看原因,即使开启debug。

VAGRANT_LOG=debug vagrant box add --name centos65-x86  /Users/user/box/src/centos65-x86_64-20140116.box --checksum-type sha256 --checksum 84eda9c4f00c86b62509d1007d4f1cf16b86bccb3795659cb56d1ea0007c3adc --provider Virtualbox
?
# ...
DEBUG subprocess: stderr: dyld: Library not loaded: @rpath/libcurl.4.dylib
  Referenced from: /opt/vagrant/embedded/bin/curl
  Reason: Incompatible library version: curl requires version 9.0.0 or later, but libcurl.4.dylib provides version 7.0.0
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 5
 WARN downloader: Downloader exit code: 5
ERROR downloader: Exit code: 5
# ...

其中部分输出如上,提示/opt/vagrant/embedded/bin/curl的版本问题:

curl requires version 9.0.0

解决办法

网上大多提示1.8.7版本确实有如下问题,建议重新安装1.8.6.

  • 重新安装Vagrant 1.8.6
  • 使用你系统的curl代替Vagrant curl
sudo ln -nsf /usr/bin/curl /opt/vagrant/embedded/bin/curl

实际上第二步不是必须的。

1.2 vagrant版本过低问题。

vagrant 1.8.1版本存在的问题。这个问题来自与virtulbox的版本配合上面。

 1 /opt/vagrant/bin/vagrant -v
 2 # Vagrant 1.8.1
 3 ?
 4 /opt/vagrant/embedded/bin/curl --version
 5 # curl 7.45.0 (x86_64-apple-darwin12.6.0) libcurl/7.45.0 OpenSSL/1.0.2d zlib/1.2.8
 6 ?
 7 ls -trl ~/.vagrant.d/boxes/
 8 # blank
 9 ?
10 VAGRANT_LOG=debug vagrant box add --name centos65-x86  /Users/user/box/src/centos65-x86_64-20140116.box
11 # Successfully added box ‘centos65-x86‘ (v0) for ‘virtualbox‘!
12 ?
13 vagrant box list
14 # centos65-x86 (virtualbox, 0)
15 ?
16 cd /Users/user/box/baseVM/
17 ?
18 vagrant init centos65-x86
19 # A `Vagrantfile` has been placed in this directory. You are now
20 # ready to `vagrant up` your first virtual environment! Please read
21 # the comments in the Vagrantfile as well as documentation on
22 # `vagrantup.com` for more information on using Vagrant.
23 ?
24 vagrant up
25 # ==>  Provider ‘virtualbox‘ not found. We‘ll automatically install it now...
26 # ==>  Downloading VirtualBox 5.0.10...

从上面可见,1.8.1版本并不能识别到VirtualBox 版本 5.1.10 r112026 (Qt5.6.2)

下面是网上说明;

http://stackoverflow.com/questions/38378418/vagrant-virtualbox-provider-virtualbox-not-found-well-automatically-instal

Vagrant 1.8.4 and older are not compatible with the VirtualBox 5.1.x.

Vagrant 1.8.5 has been released already and it supports the VirtualBox 5.1.x.

因此为了配合最新的vb。需要使用vagrant 1.8.5 ~ 1.8.6版本。

1.3 vagrant box下载失败

默认的下载地址:http://www.vagrantbox.es/

下载不太稳定,下了好多次都中途失败。提示"失败 - 已被禁止"。原本是要使用CentOS 6.4 x86_64版本的。结果总下载不了。最后使用了这个版本。

https://github.com/2creatives/vagrant-centos/releases

centos65-x86_64-20140116.box

网页上该文件的检验码::

SHA256(centos65-x86_64-20140116.box)= 84eda9c4f00c86b62509d1007d4f1cf16b86bccb3795659cb56d1ea0007c3adc

check it:

1 shasum -a256 centos65-x86_64-20140116.box
2 84eda9c4f00c86b62509d1007d4f1cf16b86bccb3795659cb56d1ea0007c3adc  centos65-x86_64-20140116.box
3 ?
4 md5 centos65-x86_64-20140116.box
5 MD5 (centos65-x86_64-20140116.box) = c6518b158f7babd09dcccc30eb3d9333

为了方便大家下载。我在网盘上放了一个文件,大家可以使用上面的信息自行校验,我也没有水平在这个镜像中装后门,呵呵。

2 源文件

经过几轮折腾。确定了各版本。

  • 本机系统:OS X 10.11.3
  • virtualBox: VirtualBox-5.1.10-112026-OSX.dmg
  • vagrant_1.8.6.dmg
  • box: centos65-x86_64-20140116.box

3 安装vb和vagrant

分别手动安装virtualBox和vagrant。安装后

vb下载地址:https://www.virtualbox.org/wiki/Downloads

vagrant地址:https://www.vagrantup.com/downloads.html

vagrant历史版本:https://releases.hashicorp.com/vagrant/

vagrant box: http://www.vagrantbox.es/

安装后检查:

1 /opt/vagrant/bin/vagrant -v
2 # Vagrant 1.8.6
3 ?
4 /opt/vagrant/embedded/bin/curl --version
5 # curl 7.45.0 (x86_64-apple-darwin13.4.0) libcurl/7.45.0 OpenSSL/1.0.2e zlib/1.2.8
6 ?
7 ls -trl ~/.vagrant.d/boxes/
8 # blank


 1 VAGRANT_LOG=debug vagrant box add --name centos65-x86  /Users/user/box/src/centos65-x86_64-20140116.box
 2 # ==> box: Successfully added box ‘centos65-x86‘ (v0) for ‘virtualbox‘!
 3 ?
 4 ls ~/.vagrant.d/boxes/centos65-x86/0/virtualbox/
 5 total 586952
 6 -rw-r--r--  1 user  staff         25 11 28 13:53 metadata.json
 7 -rw-------  1 user  staff      12064 11 28 13:53 box.ovf
 8 -rw-------  1 user  staff      71680 11 28 13:53 box-disk2.vmdk
 9 -rw-------  1 user  staff  300424192 11 28 13:53 box-disk1.vmdk
10 -rw-r--r--  1 user  staff        505 11 28 13:53 Vagrantfile
11 ?
12 vagrant box list
13 # centos65-x86 (virtualbox, 0)
14 ?
15 cd /Users/user/box/baseVM/
16 ?
17 vagrant init centos65-x86
18 #A Vagrantfile has been placed in this directory. You are now
19 #ready to vagrant up your first virtual environment! Please read
20 #the comments in the Vagrantfile as well as documentation on
21 #vagrantup.com for more information on using Vagrant.
22 ?
23 ls -l
24 #total 8
25 #-rw-r--r--  1 user  staff  3024 11 28 14:55 Vagrantfile
 启动:
 1 vagrant up
 2 Bringing machine ‘default‘ up with ‘virtualbox‘ provider...
 3 ==> default: Importing base box ‘centos65-x86‘...
 4 ==> default: Matching MAC address for NAT networking...
 5 ==> default: Setting the name of the VM: baseVM_default_1480320850854_85192
 6 ==> default: Clearing any previously set network interfaces...
 7 ==> default: Preparing network interfaces based on configuration...
 8     default: Adapter 1: nat
 9 ==> default: Forwarding ports...
10     default: 22 (guest) => 2222 (host) (adapter 1)
11 ==> default: Booting VM...
12 ==> default: Waiting for machine to boot. This may take a few minutes...
13     default: SSH address: 127.0.0.1:2222
14     default: SSH username: vagrant
15     default: SSH auth method: private key
16     default:
17     default: Vagrant insecure key detected. Vagrant will automatically replace
18     default: this with a newly generated keypair for better security.
19     default:
20     default: Inserting generated public key within guest...
21     default: Removing insecure key from the guest if it‘s present...
22     default: Key inserted! Disconnecting and reconnecting using new SSH key...
23 ==> default: Machine booted and ready!
24 ==> default: Checking for guest additions in VM...
25     default: The guest additions on this VM do not match the installed version of
26     default: VirtualBox! In most cases this is fine, but in rare cases it can
27     default: prevent things such as shared folders from working properly. If you see
28     default: shared folder errors, please make sure the guest additions within the
29     default: virtual machine match the version of VirtualBox you have installed on
30     default: your host and reload your VM.
31     default:
32     default: Guest Additions Version: 4.3.6
33     default: VirtualBox Version: 5.1
34 ==> default: Mounting shared folders...
35     default: /vagrant => /Users/user/box/baseVM

检查进程

1 ps axu | grep -i virtual
2 # ...

从上面可以看到登陆信息:

  • 127.0.0.1:2222
  • default: SSH username: vagrant
  • 用户名与密码均是: vagrant

但登陆并不需要输入用户名或机器及端口。

登陆:

1 vagrant ssh?
2 [[email protected] ~]$ pwd
3 /home/vagrant
4 ?
5 ls -l /vagrant/
6 total 4
7 -rw-r--r-- 1 vagrant vagrant 3016 Nov 28 08:13 Vagrantfile

至此成功进入vagrant虚机。

就在写这篇文章时,发现1.9.0已经出来了。可以试下最新版本了,应该修复了1.8.7的问题。

时间: 2024-10-29 19:09:13

vagrant 1.8.6 安装过程及总结遇到的坑的相关文章

开源移动安全测试框架MobSF安装过程踩过的那些坑(一)

项目简介 移动安全框架 (MobSF) 是一个智能化.一体化的开源移动应用(Android / iOS)自动测试框架,能够对以上两种移动应用进行静态和动态分析(动态分析目前暂时只支持Android). 它可以有效.快速地对应用APK 和IPA文件 及压缩的源代码进行审计分析.同时,MobSF 也能够通过其API Fuzzer功能模块,对 Web API 的安全性进行检测,如收集信息,分析安全头部信息,识别移动API 的具体漏洞,如XXE.SSRF.路径遍历,IDOR以及其他的与会话和API调用速

Anaconda2+Theano 安装过程中的所有的坑。。。

写在前面的废话 上次搞theano安装还是一年多以前..anaconda才出到1.4,当时的AnacondaCE,直接安装完基本上theano啥的都一套成功.. 今天换了个电脑,重装anaconda,最新版是anaconda2,发现最新版有各种问题... 下面吧安装步骤 和 所有的坑写一下.... ============================================================================ 首先把步骤说一下: 1.安装anaconda2

艰辛五天:Ubuntu14.04+显卡驱动+cuda+Theano环境安装过程

题记:从一开始不知道显卡就是GPU(虽然是学计算机的,但是我真的不知道-脑残如我也是醉了),到搞好所有这些环境前后弄了5天时间,前面的买显卡.装显卡和装双系统见另一篇博客装显卡.双系统,这篇主要记录我怎么配置后面的环境,虽然中间重装Ubuntu三次,后面安装过程也没差别. 基础平台:64-bit,Ubuntu14.04 1.安装NVIDIA驱动(参考技术文章,基本是复制啊,蟹蟹作者~) (1) 在官网下载NVIDIA驱动,根据自己买的型号选择下载,放到 /home/lvxia/ 目录下面,我下载

VMWARE VCSA 6.5安装过程

VMWARE  VCSA 6.5与6.0的安装过程有点小出入,特记录下来,方便工作. 一.在本地笔记本上将VCSA ISO解压缩 二.进入vcsa-ui-installer\win32目录 运行installer 三.在弹出的vCenter Server Appliance 6.5 Lnstaller中点击install 四.安装过程 五.在安装完成后,登录vcenter(https://192.168.105.38:5480)进行配置,如果登录不了,请先进esxi中确认vcsa安装成功并开启

北塔网管软件BTSO2.5安装过程记录

北塔网管软件据说是同类比较好的,原来的BTIM系列好像停止更新了,用BTSO版本代替,叫智慧运维平台,据说有各种改进,先把安装过程记录下来,以备以后重装. BTSO分两个部分:平台服务器和注册服务器,可以安装到一台主机,也可以分开,他们要能够通讯,否则认为盗版,注册要记录系统环境.要识别原版光盘,反正国产的软件版权意识近乎变态. 说明上要求win2008r2ent中文版或者win2012企业中文版,先试了2012,注册菜单不出现,重新用2008安装.顺序如下: 1.安装BETA-BTSO_2.5

会声会影X6安装过程

安装过程中请全程断网! 前方高能!!! !如果从网上下载最新的会声会影X6则无法完成注册,因为最新版已经修补了漏洞! !没有注册不要卸载会声会影,会声会影的防卸载系统会导致无法再次安装程序! 1.安装 点击Setup.exe,一路next安装. 安装完成之后,打开桌面图标. 出现: 选择 continue 然后选择第三项,继续continue. 进入会声会影. !必须进入会声会影一次,否则汉化将失败. 2.注册 关闭会声会影,打开注册机. 在program,选择Corel Video Studi

SQL安装过程中“针对SQL Server 注册表的一致性验证“出错解决方式

1.打开注册表,查找到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\0804],分别打开Counter 和Help 2.打开Counter,把滚动条拉倒最后,然后记下最大的那个值(不同计算机不一样的),记下后关闭窗口 3.同样的打开Help,滚动到最后记最大的那个值(你们的值不一定跟我一样的哦!!!),记下后关闭窗口 4,再重新定位到Perflib的节点上, 5.双击Last Counter然后在

2.EVE-NG安装过程介绍

文章列表(关注微信公众号EmulatedLab,及时获取文章以及下载链接) 1.EVE-NG介绍(EVE-NG最好用的模拟器,仿真环境时代来临!) 2.EVE-NG安装过程介绍 3.EVE-NG导入Dynamips和IOL 4.EVE-NG导入QEMU镜像 5.EVE-NG关联SecureCRT,VNC,Wireshark 6.EVE-NG网卡桥接,带您走进更高级的实验 7.EVE-NG硬盘扩容,存储海量镜像 8.EVE-NG定制个人镜像,脚本快速导入 9.EVE-NG容纳H3C.Huawei,

20170514002Oracle 11g R2安装过程中遇到的报错及解决办法

Oracle 11g R2安装过程中遇到的报错及解决办法 1.提示Check if the DISPLAYvariable is set.    Failed<<<< 解决方案: #xhost +  //切换到root用户输入 #su – Oracle  //切换到oracle用户 $./runInstaller  //执行安装程序 xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB上的应用程序时, 做为应用程序来说,hostA