我的 Ubuntu 14.04 64位桌面上安装了 VirtualBox 4.3.10 和 Vagrant 1.4.3 。
早些时候,使用 vagrant 技术,但这一次,多个问题。让我来描述我所做的事情
将私人git克隆到本地系统 / opt / lampp / htdocs / {project} :已完成
root@desktop:/opt/lampp/htdocs/{project}$ vagrant up
在执行时在终端上给出消息
主机(4.3.10)和访客(4.2.0)上的
GuestAdditions
版本不匹配。
命令已完成,但显示以下消息
无法在Linux来宾中装入文件夹。这通常是因为 “vboxsf”文件系统不可用。请验证客人 添加已正确安装在客户端,可以正常工作。 尝试的命令是:
...
我理解这是版本差异。
检查vagrant vbguest --status
GuestAdditions 4.3.10正在运行---好的。
打开浏览器并使用http://192.168.0.33
(在私有git repo的README.md文件中提到)运行,但它不起作用。
根据建议安装 vagrant-vbguest here
$:sudo vagrant plugin install vagrant-vbguest
安装了插件'vagrant-vbguest(0.10.0)'!
通过执行此操作, 2。中描述的GuestAdditions
版本差异消息已消失
vagrant halt
,然后vagrant up
使用'virtualbox'提供商启动计算机'默认'... [默认]清除以前设置的任何转发端口...
[default]清除以前设置的所有网络接口...
[default]根据配置准备网络接口...
[默认]转发端口...
[默认] - 22 => 2222(适配器1)
[默认] - 80 => 8080(适配器1)
[默认]启动虚拟机...
[默认]等待机器启动。这可能需要几分钟......
[默认]机器启动并准备就绪!
GuestAdditions 4.3.10运行--- OK。
[默认]配置和启用网络接口...
[默认]挂载共享文件夹...
[默认] - / vagrant无法在Linux来宾中装入文件夹。这通常是因为“vboxsf”文件系统不可用。请确认客人添加内容已正确安装在guest虚拟机中,并且可以正常运行。尝试的命令是:
mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3` /vagrant /vagrant
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` /vagrant /vagrant
我是否需要更改本地vagrantfile
中的任何内容或更改流浪汉版本或其他内容?
Some say it is a bug whilesome为ubuntu提供解决方案< 14.04
请建议解决方案提示以及如何解决此问题?
答案 0 :(得分:13)
'02/27/1960'
对我来说效果很好(Virtual Box 5.0.22,Vagrant 1.8.4)。由于插件在将guest虚拟机添加.iso链接到正确的位置之前下载了gcc和一堆其他工具,因此最初提供的设置耗时较长。
答案 1 :(得分:6)
显然VirtualBox Guest Additions 4.3.10安装程序中存在一个错误:https://www.virtualbox.org/ticket/12879
通过在Vagrant-VM中创建符号链接,似乎有一个简单的解决方法:
sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions \
/usr/lib/VBoxGuestAdditions
您可以将此添加到您的配置配置中,以确保您不会再次遇到错误:
NEWEST_VBOXGUESTADDITIONS_DIR=`find /opt/ -maxdepth 1 -mindepth 1 -name "VBoxGuestAdditions-*" | tail -n 1`;
if [[ ! -d "/usr/lib/VBoxGuestAdditions" && -n "$NEWEST_VBOXGUESTADDITIONS_DIR" ]];
then
ln -s ${NEWEST_VBOXGUESTADDITIONS_DIR}/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions
fi
答案 2 :(得分:0)
“Vagrantfile”中的这行代码是我的解决方案:
config.vm.synced_folder "./", "/vagrant", id: "vagrant-root", type: "nfs"
答案 3 :(得分:0)
在我的情况下,通过在客户机上重建内核来修复此错误
$a = 1,2,3,4
$b = "a","b","c","d"
$hashtable = @{}
for($i = 0;$a.Count -gt $i;$i++){
$hashtable.Add($a[$i],$b[$i])
}
$hashtable | Out-GridView
。