Бродячая ошибка: не удалось смонтировать папки в гостевой системе Linux


277

У меня есть некоторые проблемы с общими папками Vagrant, моя базовая система - рабочий стол Ubuntu 13.10.

Я не понимаю, почему у меня эта ошибка что-то неправильно настроена? Это проблема с NFS или гостевые дополнения Virtualbox? Я пробовал с разными коробками, но с той же проблемой.

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 vagrant | cut -d: -f3` /vagrant /vagrant
    mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` /vagrant /vagrant

Вот полный процесс после vagrant up:

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'u131032'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: vagrant_default_1396020504136_46442
==> 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 => 2222 (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: Error: Connection timeout. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
    default: Error: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
GuestAdditions versions on your host (4.3.10) and guest (4.2.16) do not match.
 * Stopping VirtualBox Additions
   ...done.
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  dkms libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libfontenc1
  libgl1-mesa-dri libglapi-mesa libice6 libllvm3.3 libpciaccess0 libpixman-1-0
  libsm6 libtxc-dxtn-s2tc0 libxaw7 libxcomposite1 libxdamage1 libxfixes3
  libxfont1 libxkbfile1 libxmu6 libxpm4 libxrandr2 libxrender1 libxt6
  x11-common x11-xkb-utils xfonts-base xfonts-encodings xfonts-utils
  xserver-common xserver-xorg-core
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  virtualbox-guest-dkms* virtualbox-guest-utils* virtualbox-guest-x11*
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
After this operation, 11.1 MB disk space will be freed.
(Reading database ... 65615 files and directories currently installed.)
Removing virtualbox-guest-dkms ...

-------- Uninstall Beginning --------
Module:  virtualbox-guest
Version: 4.2.16
Kernel:  3.11.0-18-generic (i686)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

vboxguest.ko:
 - Uninstallation
   - Deleting from: /lib/modules/3.11.0-18-generic/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxsf.ko:
 - Uninstallation
   - Deleting from: /lib/modules/3.11.0-18-generic/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxvideo.ko:
 - Uninstallation
   - Deleting from: /lib/modules/3.11.0-18-generic/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod....

DKMS: uninstall completed.

------------------------------
Deleting module version: 4.2.16
completely from the DKMS tree.
------------------------------
Done.
Removing virtualbox-guest-x11 ...
Purging configuration files for virtualbox-guest-x11 ...
Removing virtualbox-guest-utils ...
Purging configuration files for virtualbox-guest-utils ...
Processing triggers for ureadahead ...
Processing triggers for man-db ...
Reading package lists...
Building dependency tree...
Reading state information...
dkms is already the newest version.
dkms set to manually installed.
linux-headers-3.11.0-18-generic is already the newest version.
linux-headers-3.11.0-18-generic set to manually installed.
The following packages were automatically installed and are no longer required:
  libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libfontenc1 libgl1-mesa-dri
  libglapi-mesa libice6 libllvm3.3 libpciaccess0 libpixman-1-0 libsm6
  libtxc-dxtn-s2tc0 libxaw7 libxcomposite1 libxdamage1 libxfixes3 libxfont1
  libxkbfile1 libxmu6 libxpm4 libxrandr2 libxrender1 libxt6 x11-common
  x11-xkb-utils xfonts-base xfonts-encodings xfonts-utils xserver-common
  xserver-xorg-core
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Copy iso file /usr/share/virtualbox/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
mount: block device /tmp/VBoxGuestAdditions.iso is write-protected, mounting read-only
Installing Virtualbox Guest Additions 4.3.10 - guest version is 4.2.16
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.3.10 Guest Additions for Linux............
VirtualBox Guest Additions installer
Copying additional installer modules ...
Installing additional modules ...
Removing existing VirtualBox DKMS kernel modules ...done.
Removing existing VirtualBox non-DKMS kernel modules ...done.
Building the VirtualBox Guest Additions kernel modules ...done.
Doing non-kernel setup of the Guest Additions ...done.
Starting the VirtualBox Guest Additions ...done.
Installing the Window System drivers
Could not find the X.Org or XFree86 Window System, skipping.
An error occurred during installation of VirtualBox Guest Additions 4.3.10. Some functionality may not work as intended.
In most cases it is OK that the "Window System drivers" installation failed.
==> default: Checking for guest additions in VM...
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
==> default: Exporting NFS shared folders...
==> default: Preparing to edit /etc/exports. Administrator privileges will be required...
nfsd running
sudo: /usr/bin/exportfs: command not found
==> default: Mounting NFS shared folders...
==> default: Mounting shared folders...
    default: /vagrant => /home/me/Documents/Work/project/vagrant
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 vagrant | cut -d: -f3` /vagrant /vagrant
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` /vagrant /vagrant

Моя конфигурация Vagrantfile:

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

personalization = File.expand_path("../Personalization", __FILE__)
load personalization

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = $base_box
  config.vm.box_url = $base_box_url

  config.vm.hostname = $vhost + ".dev"

  config.hostsupdater.aliases = ["api." + $vhost + ".dev", "mysql." + $vhost + ".dev"]
  config.hostsupdater.remove_on_suspend = true

  # set auto_update to ture to check the correct 
  # additions version when booting the machine
  config.vbguest.auto_update = true
  config.vbguest.auto_reboot = true

  config.vm.network :private_network, ip: $ip

  config.vm.synced_folder "../", "/srv/www/vhosts/" + $vhost + ".dev", type: "nfs"

  config.vm.provider :virtualbox do |v|
    v.customize ["modifyvm", :id, "--memory", 2048]
    v.customize ["modifyvm", :id, "--cpus", "1"]
    v.customize ["modifyvm", :id, "--cpuexecutioncap", "100"]
    v.customize ["modifyvm", :id, "--ioapic", "off"]
    v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end

  config.vm.provision "shell" do |s|
    s.path = "vagrant-bootstrap.sh"
    s.args = $vhost + " " + $mysql_password + " " + $application_database
  end
end

Файл персонализации:

# Name of the vhost to create
$vhost = "project"

# Use the Ubunut 32bit or 64bit
$base_box_url = "http://cloud-images.ubuntu.com/vagrant/saucy/current/saucy-server-cloudimg-i386-vagrant-disk1.box"

# VM IP
$ip = "192.168.7.7"

# Base box name
$base_box = "u131032"

# MySQL
$mysql_password = "admin"
$application_database = "project"

В Vagrant включены следующие плагины:

$ vagrant plugin list
vagrant-hostsupdater (0.0.11)
vagrant-login (1.0.1, system)
vagrant-share (1.0.1, system)
vagrant-vbguest (0.10.0)

эта проблема также произошла на мне после обновления виртуальной коробки 5.1.20. Этот вид заставляет меня волноваться каждый раз, когда я обновляю свою виртуальную
машину,

@GusDeCooL Вы можете отключить автоматическое обновление гостевых дополнений config.vbguest.auto_update = falseв Vagrantfile
Henrik

Ответы:


356

Плагин vagrant-vbguest решил мою проблему:GitHub RubyGems

$ vagrant plugin install vagrant-vbguest

Вывод:

$ vagrant reload
==> default: Attempting graceful shutdown of VM...
...
==> default: Machine booted and ready!
GuestAdditions 4.3.12 running --- OK.
==> default: Checking for guest additions in VM...
==> default: Configuring and enabling network interfaces...
==> default: Exporting NFS shared folders...
==> default: Preparing to edit /etc/exports. Administrator privileges will be required...
==> default: Mounting NFS shared folders...
==> default: VM already provisioned. Run `vagrant provision` or use `--provision` to force it

Просто убедитесь, что вы используете последнюю версию VirtualBox


Я использую плагин vagrant-vbguest, но это ничего не исправило, пока я не обновил VirtualBox-4.3.12-9.
mkirk

5
Это единственное, что исправило это для меня. После того, как я это сделал, гости VboxAdditions обновились и стали соответствовать моему хосту. И все у нас нормально без сучка и задоринки. Я просто должен поддерживать равные версии как на гостевой, так и на хостовой машине. Спасибо за указатель @karlingen
Rixhers Ajazi

1
У меня появилась эта проблема после установки плагина. удаление не решает проблему.
Ямико

13
Джи, я бы сэкономил около 20 часов поиска в Google, переконфигурирования и т. д., выпустив эту самую однострочную версию ... Где ваша «просто купите мне пивные кнопки» ...
Йордан Георгиев

1
Осторожно, этот плагин может вызвать почти идентичную проблему, если вы разрешите его config.vbguest.auto_update = true(по умолчанию) github.com/dotless-de/vagrant-vbguest/issues/141
KCD

231

Я обнаружил, что эта проблема решена здесь бродячими проблемами. Два способа сделать это:

  1. Запустите это на госте (т.е. после того, как вы через ssh войдете в vbox vagrant ssh)

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

    Затем запустите, vagrant reloadчтобы правильно смонтировать папки.

  2. Как заметил @klang, обновите файл VBoxGuestAdditions.iso на вашем Mac:

    wget https://www.virtualbox.org/download/testcase/VBoxGuestAdditions_4.3.11-93070.iso‌​
    sudo cp VBoxGuestAdditions_4.3.11-93070.iso /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso
    

ОБНОВЛЕНИЕ (16 мая 2014 г.)

Поскольку iso больше не доступен, вы можете использовать 4.3.12 ( http://dlc.sun.com.edgesuite.net/virtualbox/4.3.12/VBoxGuestAdditions_4.3.12.iso )

примечание: бинарный файл vbox4.3.12 для os X в настоящее время недоступен


5
Возможно, вам просто потребуется выполнить vagrant reload, чтобы заново смонтировать общие папки
d4nt

3
Кто-нибудь знает способ включить это как часть VagrantFile, чтобы он выполнялся до монтирования дисков?
Джейсон Остин

3
@JasonAustin github.com/mitchellh/vagrant/issues/3341 wget https://www.virtualbox.org/download/testcase/VBoxGuestAdditions_4.3.11-93070.iso; sudo cp VBoxGuestAdditions_4.3.11-93070.iso /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso .. после этого у вас дела как обычно.
Кланг

5
Использование Win 7поля с Vagrant 1.3.5и VirtualBox 4.3.10, ответ № 1 не работал для меня. Я все еще получил unable to mount ...ошибки
Кевин Мередит

3
Рекомендуемое исправление - первый вариант, как первоначально размещено здесь . URL-адрес файла ISO во
втором

49

Я прибыл на эту страницу, ища то же самое сообщение об ошибке. Для меня причина была в другом: я запустил yum updateсистему, которая установила новое ядро. Гостевые дополнения куда устарели, поэтому не могли их загрузить.

Я восстановил их с

sudo /etc/init.d/vboxadd setup 

А vagrant reloadпозже мой гость снова заработал.

Я просто добавляю это здесь, на случай, если кто-то другой попадет сюда так же, как я.

Редактировать (согласно комментарию KCD):
Возможно, вы получаете сообщение об ошибке:

Заголовки для текущего запущенного ядра не найдены

Это может быть решено установкой kernel-devel( yum install kernel-devel)


3
Спасибо. Я забыл, что я побежал yum update. Я оставляю этот комментарий, чтобы Future Austin нашел его, когда это произойдет снова.
Остин

1
И я запустил apt-get update в ubuntu, оставив комментарий для будущего skift, когда это произойдет снова :-)
skift

Настоящий и будущий Лоик, просто спасибо тебе :) (забыл, я yum updateтоже побежал )
Лоик м.

Он может не сказать The headers for the current running kernel were not foundи спросить вас, yum install kernel-develкакие работы
KCD

1
Я также должен был установить gcc, чтобы заставить это работать. Подводя итог: 1) yum install kernel-devel-$(uname -r) и 2) yum install gcc; и, наконец, выйти из ВМ и сделать vagrant reload. Это было на ящике с бродягой Centos 7 (bento / centos-7.1)
JDS

29

Исправить шаг за шагом:

Если у вас нет плагина vbguest, установите его:

$ vagrant plugin install vagrant-vbguest

Беги Бродяга

Это показать ошибку.

$ vagrant up

Войти на ВМ

$ vagrant ssh

Fix!

В гостевой (ВМ вошли).

$ sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions

Вернитесь на хост, перезагрузите Vagrant

$ vagrant reload

Я думаю, что это лучшее и наиболее прозрачное решение
Mateusz Odelga

Это сработало, но с Fedora 22 мне пришлось vagrant sshв коробку и сделать sudo ln -s /etc/dnf/dnf.conf /etc/yum.conf, так как Fedora перешла с yum на dnf. С этим все закончилось (я думаю!). Спасибо @dadaso.
JZ

14

Обновление февраль 2016

Это заняло у меня несколько часов, чтобы решить самостоятельно. Да, эта проблема все еще существует с последними установками Vagrant и Virtual Box:

△  vagrant -v
Vagrant 1.8.1
△  vboxmanage -v
5.0.14r105127

Симптомы для меня были сообщения что-то вроде:

Checking for guest additions in VM... The guest additions on this VM do not match the installed version of VirtualBox!

после чего не удалось смонтировать диски NFS.

1). Установите vagrant-vbguestплагин.

В зависимости от используемой версии Vagrant выполните одну из следующих команд:

# For vagrant < 1.1.5
$ vagrant gem install vagrant-vbguest

# For vagrant 1.1.5+
$ vagrant plugin install vagrant-vbguest

Затем сделайте vagrant halt, а затем vagrant up- скорее всего, у вас все еще есть проблемы.

2). Войдите в свой гость и установите мягкую ссылку на правильную версию Guest Additions (здесь, 5.0.14).

$ vagrant ssh

$ sudo ln -s /opt/VBoxGuestAdditions-5.0.14/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions
$ exit

$ vagrant reload

У тебя должно быть все хорошо. По умолчанию подключенный диск на гостевой находится в/vagrant

Финальный комментарий:

Если у вас все еще есть проблемы, связанные с монтированием дисков NFS, то вот обходной путь, который работал для меня. У меня был vagrantfileс config что-то вроде:

Просто удалите информацию о типе монтирования и уменьшите mount_options параметры , чтобы они работали универсально. Vagrant теперь автоматически выберет лучший вариант синхронизируемой папки для вашей среды.


2
Спасибо за это ... ваш vagrantfileконфиг отсутствует, как раз перед последним абзацем - есть ли шанс добавить его обратно?
Фил Гифорд

Это все еще не работает для меня. Я скачал новый Vagrant. vboxmanage уже показывал версию выше. Мягкая ссылка, которую рекомендует ОП, уже была там.
Тони Эннис

1
Где твой конфиг Vagrantfile? Это отсутствует в вашем ответе.
Aboelseoud

12

Установите плагин vagrant-vbguest, выполнив эту команду:

vagrant plugin install vagrant-vbguest

6

Я столкнулся с той же проблемой с Centos 7, я полагаю, из-за устаревшего ядра в сочетании с обновленной версией VirtualBox. Основываясь на обновлении Blizz, вот что у меня сработало (плагин vagrant-vbguest уже установлен):

vagrant ssh
sudo yum -y install kernel-devel
sudo yum -y update
exit
vagrant reload --provision

5

Для меня с VBoxGuestAdditions 5.1.20 проблема заключалась в том, что /sbin/mount.vboxsfуказывалось на неправильное местоположение.

sudo ln -sf /opt/VBoxGuestAdditions-5.1.20/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf

исправил это для меня


Я не являюсь пользователем Vagrant, но у меня была такая же проблема с гостем Fedora Core, работающим на хосте OSX. Я думаю, что проблема в том, что местоположение mount.vboxsfбыло изменено, но установщик символически ссылается на старое местоположение.
Тедди

Это подтвержденная ошибка в гостевых дополнениях 5.1.20: virtualbox.org/ticket/16670
Макс

4

Как упоминалось в выпуске Vagrant # 3341, это была ошибка Virtualbox # 12879 .

Влияет только на VirtualBox 4.3.10 и полностью исправлен в 4.3.12.


что я и делаю, так как они сняли эту ссылку для скачивания
Pat K

1
Обратите внимание, что эта ошибка была исправлена ​​в VirtualBox 4.3.12.
Bbrame

5
У меня точно такая же ошибка в VirtualBox 4.3.26
terbooter

4
4.3.28 для меня и та же проблема.
Адам Паркин

5.0.14r105127 для меня и тот же вопрос
Филипп Прайд

3

Я считаю , что это самый обновленный ответ сейчас , и это работает для меня ( Guest Additions Version: 5.0.6, VirtualBox Version: 4.3.16, Ubuntu 14.04 LTS)

https://github.com/mitchellh/vagrant/issues/3341#issuecomment-144271026

В основном я говорю:

Simple and Quick Solution for Failed to mount folders in Linux guest issue.

Add the following line to your Homestead/Vagrantfile:

config.vbguest.auto_update = false
Your Homestead/Vagrantfile should looks like this:

/...

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

   # To avoid install and uninstall VBoxGuessAdditions during vagrant provisioning.
    config.vbguest.auto_update = false

.../
Save it and execute

$ vagrant destroy --force
$ vagrant up

3
Возможно, стоит отметить, что «vagrant destroy» уничтожает вашу ВМ, и все, что вы настроили / установили внутри нее, если я не ошибаюсь.
CargoMeister

Это было единственное и самое быстрое решение для меня. У меня были проблемы с изображением «Ubuntu точный 64 VirtualBox» отсюда . VirtualBox 5.1.2 и Vagrant 1.8.5 для Windows.
Джамин

3

Просто для дальнейшего использования эта проблема возникла у меня, когда я использовал Vagrant 1.7.4 и VirtualBox 5.0.10 r104061, когда я подготовил общую папку /и создал символическую ссылку на мою домашнюю папку. Что-то вроде этого:

/folder
~/folder -> /folder

Видимо, эта операция не разрешена Vagrant в целях безопасности и выдает описанную ошибку.

Я решил это, предоставив нужную папку непосредственно в мой домашний каталог, например /home/vagrant/folder.


1
Огромное спасибо. Это была и моя проблема.
Саркастрон

1
Правильно, папка общего доступа в /моей версии Vagrant также не разрешена (1.8.1)
Амеди Ван Гассе

2

В моем случае на ранее работающем образе Ubuntu 16.04 ошибка возникла после установки vagrant-vbguest для другого образа vagrant, а затем запуска виртуальной машины Ubuntu. Он обновил гостевые дополнения до 5.1.20, и с тех пор монтирование перестало работать. Обновил коробку, apt update + upgrade и то же самое, vbguest установит более новую версию 5.1.20.

Это было решено путем ручного запуска:

sudo apt-get update
sudo apt-get install virtualbox-guest-dkms 

А также отключение: config.vbguest.auto_update = false для этой виртуальной машины (может не потребоваться).


Была точно такая же проблема. Проигнорируйте предупреждение о несоответствии версий гостя и хоста и очереди автоматического обновления.
Хенрик,

1

(из моего комментария выше)

Следуя этой проблеме до ее корней: в частности, в комментариях говорится:

wget https://www.virtualbox.org/download/testcase/VBoxGuestAdditions_4.3.11-93070.iso‌​ 
sudo cp VBoxGuestAdditions_4.3.11-93070.iso /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso

После этого у меня обычные дела со всеми моими виртуальными машинами (и их текущими Vagrantfiles, конечно)

Когда вам нужно что-то сделать в только что созданной виртуальной машине, чтобы она работала, что-то не так.


1
Если вы используете Linux, я думаю, вам нужно скопировать файл в /usr/share/virtualbox/VBoxGuestAdditions.iso. Однако я не проверял это!
Цусанка

1

В конфигурации, где windows - хост, а linux - гость, я нашел решение той же проблемы в другом месте.

Итак, еще раз, сообщение об ошибке было «Не удалось смонтировать папки в гостевой системе Linux. Обычно это происходит потому, что файловая система« vboxsf »недоступна». (...)

Это было вызвано тем, что я допустил ошибку, выполнив символическую ссылку в гостевой системе из / vagrant в / home / vagrant / vagrant. Дело в том, что каталог / vagrant - это обычный каталог linux, имеющий символическую ссылку (так что все в порядке), но при загрузке с помощью «vagrant up» он пытается смонтировать каталог windows в этом месте, и каталог windows не может работать как символическая ссылка. Хост Windows не поддерживает символические ссылки Linux.

Итак, что вы можете сделать, это зайти в гостевую систему, удалить символическую ссылку, где бы у вас она ни была, и перезагрузить компьютер.

В моей конфигурации это было: Vagrant 1.7.2, VBoxGuestAdditions 4.3.28 и VBox 4.3.28.


1

Это 2017 год. На тот случай, если кто-то столкнется с той же проблемой.

Для bento / centos-6.7 я получал ту же ошибку. Это было решено добавлением плагина vagrant-vbguest (0.13.0). c:> установить плагин vagrant vagrant-vbguest

URL коробки: http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-7.0_chef-provisionerless.box

Эта версия Centos-7 давала мне ту же ошибку

Ошибка:

==> build: Mounting shared folders...
    build: /vagrant => C:/projects/
Vagrant was unable to mount VirtualBox shared folders. This is usually
because the filesystem "vboxsf" is not available. This filesystem is
made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the
guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attempted was:

mount -t vboxsf -o uid=1000,gid=1000 vagrant /vagrant

The error output from the command was:

/sbin/mount.vboxsf: mounting failed with the error: No such device

Моя конфигурация:

C:\projects>vagrant -v
Vagrant 1.9.1

C:\projects> vboxmanage -v
5.0.10r104061

C:\projects>vagrant plugin list
vagrant-cachier (1.2.1)
vagrant-hostmanager (1.8.5)
vagrant-hosts (2.8.0)
vagrant-omnibus (1.5.0)
vagrant-share (1.1.6, system)
vagrant-vbguest (0.13.0)
vagrant-vbox-snapshot (0.0.10)

Поскольку у меня уже есть плагин vagrant-vbguest, он пытается обновить VBoxGuestAdditions в centos-7, когда видит, что разные версии VBGuestAdditions установлены в Host 5.0.10 и guest 4.3.20.

Я даже проверил, что символическая ссылка существует.

[root@build VBoxGuestAdditions]# ls -lrt /usr/lib
lrwxrwxrwx.  1 root root   53 Jan 14 12:06 VBoxGuestAdditions -> /opt/VBoxGuestAdditions-5.0.10/lib/VBoxGuestAdditions
[root@build VBoxGuestAdditions]# mount -t vboxsf -o uid=1000,gid=1000 vagrant /vagrant
/sbin/mount.vboxsf: mounting failed with the error: No such device

Это не сработало, как было предложено пользователем 3006381

vagrant ssh
sudo yum -y install kernel-devel
sudo yum -y update
exit
vagrant reload --provision

Решение для Centos-7: как работает psychok7

Diabled автообновление. config.vbguest.auto_update = false Тогда vagrant destroy --forceиvagrant up

Результат:

javareport: Guest Additions Version: 4.3.20
javareport: VirtualBox Version: 5.0
==> javareport: Setting hostname...
==> javareport: Configuring and enabling network interfaces...
==> javareport: Mounting shared folders...
javareport: /vagrant => C:/projects

C:\project>

Это 2017 год для меня и до сих пор с этой ошибкой. Ваше исправление выглядит многообещающим. Я постараюсь доложить.
Эрик Хепперле - CodeSlayer2010

1

на данный момент монтирование работает на некоторых машинах (ubuntu), а на некоторых нет (centos 7), но установка плагина решает эту проблему

vagrant plugin install vagrant-vbguest

без необходимости делать что-то еще, просто

vagrant reload

0

Ваш журнал жалуется на то, что не нашел exportfs: sudo: /usr/bin/exportfs: command not found

Exportfs делает доступными локальные каталоги для клиентов NFS для монтирования.


1
Я исправил проблему, связанную sudo: /usr/bin/exportfs: command not foundс установкой символической ссылки на реальный путь с помощью команды sudo ln -s /usr/sbin/exportfs /usr/bin/exportfs, однако ошибка о Failed to mount folders in Linux guestсохранении сохраняется даже после этого.
Эк Космос

0

Похоже, это связано с несовместимостью с плагином vbguest vagrant и последней версией (версиями) vagrant. Он пытается обновить гостевые дополнения и не может сделать это полностью / правильно.


2
Из того, что я видел, vagrant-vbguest правильно обновляет виртуальную машину до последней (4.3.10) версии GuestAdditions - к сожалению, последняя версия GuestAdditions содержит ошибку для гостей linux.
iheggie

0

Попробуйте как это:

vagrant plugin install vagrant-vbguest

В Vagrantfile добавить:

config.vbguest.iso_path = "http://download.virtualbox.org/virtualbox/VERSION/VBoxGuestAdditions_VERSION.iso"
config.vbguest.auto_update = false
config.vbguest.installer_arguments = %w{--nox11 -- --force}

Бегать:

vagrant vbguest --do install -f -b

vagrant reload

0

Я запускал Vagrant с VirtualBox 5.1.X, и мне пришлось перейти на VirtualBox 5.0.40 и установить плагин vbguest для решения этой проблемы.

Мои шаги были:

  • Удалить VirtualBox 5.1.X
  • Установите Vagrant 5.0.40
  • Перезагрузите мою машину
  • Беги vagrant upза моим бродягой. Это не удастся.
  • Бегать vagrant plugin install vagrant-vbguest мою виртуальную машину, чтобы установить подключаемый модуль vagrant. Это управляет синхронизацией версий VirtualBox Guest между хостом и гостем.
  • Бегать vagrant reload чтобы перезагрузить мою виртуальную машину
  • Магия!

-1

Еще один шаг, который я должен был выполнить после выполнения первого предложения, сделанного Кензи, состоял в том, чтобы запустить mountкоманды, перечисленные в сообщении об ошибке, sudoиз командной строки Ubuntu [14.04 Server]. После этого все было хорошо!


Вместо этого нужно бежать vagrant reload.
Джеррод
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.