1

Vagrant 不会挂载文件夹。尝试了很多解决方案,没有任何效果。

版本:Vagrant 1.8.1 / Ubuntu 15.10 / Virtualbox 5.0.16

vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'ubuntu/wily64' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Remote connection disconnect. Retrying...
    default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
GuestAdditions 5.0.16 running --- OK.
==> default: Checking for guest additions in VM...
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
    default: /vagrant => C:/Users/User/www/magento-box
    default: /vagrant-magento-box-folder => C:/Users/User/www/magento-box-folder
Failed to mount folders in Linux guest. This is usually because
the "vboxsf" file system is not available. Please verify that
the guest additions are properly installed in the guest and
can work properly. The command attempted was:

mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group www-data | cut -d: -f3`,dmode=775, fmode=664 vagrant-magento-box-folder /vagrant-magento-box-folder
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g www-data`,dmode=775, fmode=664 vagrant-magento-box-folder /vagrant-magento-box-folder

The error output from the last command was:

mesg: ttyname failed: Inappropriate ioctl for device

在 Vagrantfile.config.yml 同步文件夹中:

synced_folder:
  host_path: "/Users/User/www/magento-box-folder"
  guest_path: "/vagrant-magento-box-folder/"

流浪文件

require 'yaml'
vagrantConfig = YAML.load_file 'Vagrantfile.config.yml'
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"

config.vm.network "private_network", 
ip: vagrantConfig['ip']

    config.vm.synced_folder "#{vagrantConfig['synced_folder']['host_path']}", 
    "#{vagrantConfig['synced_folder']['guest_path']}", 
    owner: "vagrant", 
    group: "www-data", 
    mount_options:["dmode=775, fmode=664"]

# VirtualBox specific settings
    config.vm.provider "virtualbox" do |vb|
    vb.gui = false
    vb.memory = "2048"
    vb.cpus = 2
end

在 vagrant ssh 我做了

sudo ln -s /opt/VBoxGuestAdditions-5.0.16/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions 

我在 tmp 中替换了 VBoxGuestAdditions.iso

Copy iso fileC:\Program Files/Oracle/VirtualBox/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso

安装 vbguest。不知道怎么解决。。

4

2 回答 2

6

这是发生错误的一个重要原因vagrant up

如果您使用 Virtual Box 到 Vagrant 的提供程序,您必须在每次创建虚拟机内核时重新安装“Guest Additions”。

vbguest 插件是解决这个问题的一个很好的解决方案。

(关于 vbguest 插件 - https://github.com/dotless-de/vagrant-vbguest

首先,您必须安装 vbguest 插件。

$ vagrant plugin install vagrant-vbguest

并运行 Vagrant

$ vagrant halt

$ vagrant up

或也使用

vagrant reload

于 2016-03-15T05:43:31.247 回答
0

这似乎是 vagrant <= 1.8.4 的问题。我更新了最新的 vagrant 版本(在我的例子中是 1.9.3),一切似乎又好了。

  1. 在此处获取最新的 vagrant 版本: https ://www.vagrantup.com/docs/installation/upgrading.html

2.

vagrant halt

3.安装升级。

4.

vagrant up
于 2017-03-24T13:26:11.810 回答