Подтвердить что ты не робот

Vagrant не смог подключить общие папки VirtualBox

Текущая настройка: Virtualbox 5.1.20 с Vagrant 1.9.3

Предыдущая рабочая настройка: Virtualbox 5.1.18 с Vagrant 1.9.3

Я установил последнюю версию Virtualbox и попытался запустить свою виртуальную машину. Установка папки перестала работать. Та же установка папок отлично работает в Virtualbox 5.1.18. Появляется следующее сообщение об ошибке:

Vagrant не смог установить общие папки VirtualBox. Обычно это происходит потому, что файловая система "vboxsf" недоступна. Эта файловая система доступна через гостевые дополнения VirtualBox и модуль ядра. Убедитесь, что эти гостевые дополнения установлены в гостевой системе. Это не ошибка в Vagrant и обычно вызвана неисправной коробкой Vagrant. Для контекста команда пыталась:

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

Результатом ошибки была команда:

mount: wrong fs type, bad option, bad superblock on keys,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try dmesg | tail or so.

Я попытался вручную установить vagrant-vbguest плагин (через vagrant-vbguest плагин vagrant plugin install vagrant-vbguest), но это ничего не фиксировало. Переход к 5.1.18 разрешает его, но это не идеальное движение вперед.

Как я могу получить установку папок, работающих с Virtualbox 5.1.20 и Vagrant 1.9.3?

4b9b3361

Ответ 1

Обновить

Исправлено в VirtualBox 5.1.22.

(https://www.virtualbox.org/ticket/16670)

Оригинальный ответ

В моем случае символическая ссылка внутри виртуальной машины была неправильной. Войдите в ВМ:

$ vagrant ssh

Затем:

$ ls -lh /sbin/mount.vboxsf 
lrwxrwxrwx 1 root root 49 Apr 19 14:05 /sbin/mount.vboxsf -> /opt/VBoxGuestAdditions-5.1.20/other/mount.vboxsf

Эта ссылка не работает. Когда вы заглядываете внутрь /opt/VBoxGuestAdditions-5.1.20/, вы видите, что подпапка "other" не существует. Эта строка исправляет это:

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

Теперь выйдите из ВМ:

$ exit

И проверьте, работает ли он у вас:

$ vagrant reload

Но я не могу исправить ссылку, потому что /sbin/mount.vboxsf не существует внутри моей коробки!

Если ссылка /sbin/mount.vboxsf не существует в первую очередь, то VBoxGuestAdditions не может быть установлен. Это может произойти, если вы не загрузили соответствующий пакет расширений VirtualBox после обновления VirtualBox (v5.2.18 и выше должны загружать его автоматически во время обновлений Virtualbox). Вы можете сделать это сейчас:

  • Остановите все ваши работающие виртуальные машины.
  • Откройте программу VirtualBox.
  • Запустите загрузку пакета расширений VirtualBox и установите его.
  • Если вас не спрашивают, хотите ли вы загрузить пакет расширений VirtualBox, откройте → Файл → Проверить наличие обновлений, чтобы вызвать диалоговое окно загрузки.

Если не было обновления для расширения VirtualBox, возможно, что VBoxGuestAdditions не может быть установлен, поскольку установщик показывает сообщение, а подключаемый модуль vagrant vbguest не может запросить ответ (это "исправлено" в vbguest v0.15.0). Вы можете видеть это в выводе "vagrant up". Там должна быть строка, похожая на эту:

Do you wish to continue? [yes or no]

В этом случае вы можете запустить установщик вручную. Для этого запустите окно:

$ vagrant up

Затем запустите vbguest, чтобы повторить попытку установки, но затем оставьте монтированный VBoxGuestAdditions ISO следующим образом:

$ vagrant vbguest --do install --no-cleanup

Войдите в коробку:

$ vagrant ssh

Запустил установщик вручную:

$ sudo /mnt/VBoxLinuxAdditions.run

Последняя надежда: сделай сам!

Если ничего из вышеперечисленного не помогло, попробуйте установить гостевые дополнения вручную:

cd /opt
sudo wget -c http://download.virtualbox.org/virtualbox/5.1.28/VBoxGuestAdditions_5.1.28.iso -O VBoxGuestAdditions_5.1.28.iso
sudo mount VBoxGuestAdditions_5.1.28.iso -o loop /mnt
sudo sh /mnt/VBoxLinuxAdditions.run

Ответ 2

Установка плагина vbguest работала в моем случае с VirtualBox 5.2.6 и Vagrant 2.0.1:

vagrant plugin install vagrant-vbguest

Ответ 3

Это сработало для меня... выполните следующие действия:

vagrant plugin repair

затем

vagrant plugin expunge --reinstall

затем

vagrant reload

Ответ 4

Тип удаления: "nfs" из homestead.yaml исправил его для меня. Win 10, Vagrant 1.9.7, laravel 5.4, усадьба.

Ответ 5

Для меня проблема была исправлена в следующих условиях:

Среда:

  • VirtualBox версия 6.0.4r128413
  • Бродячая версия 2.2.3

шаги:

Перейдите в каталог вашего проекта из терминала или командной строки (cd) и выполните следующие команды:

  1. vagrant plugin install vagrant-vbguest для установки гостевого плагина Vagrant VB

  2. vagrant up

Если вы получаете сообщение об отсутствии vboxsf. Тогда, возможно, ваши VirtualBox Guest Additions не установлены должным образом. Надеемся, что приведенные ниже команды решат вашу проблему.

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

Ответ 6

Для меня следующие команды, за которыми последовала перезагрузка гостевой системы, помогли:

cd /opt/VBoxGuestAdditions-*/init  
sudo ./vboxadd setup

Я нашел решение здесь. Ссылаясь на это сообщение, вам нужно остановить vboxadd перед запуском команд (я этого не делал, так как не знаю, что такое vboxadd).

Ответ 7

Для тех, кто приземляется здесь почти с той же проблемой, что и я, ниже находится решение

TL;DR

  • Ошибка гостевой system is currently not set up to build kernel modules VirtualBox из-за system is currently not set up to build kernel modules
  • Решение - удалить kernel-headers.x86_64 0:3.10.0-862.9.1.el7
  • Затем установите kernel-devel-3.10.0-327.el7.x86_64

Решение

  1. vagrant ssh

  2. sudo rpm -e kernel-devel-3.10.0-862.9.1.el7.x86_64

  3. sudo wget ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/7.0/x86_64/updates/security/kernel-devel-3.10.0-327.el7.x86_64.rpm//загружаем файл

  4. sudo rpm -Uvh kernel-devel-3.10.0-327.el7.x86_64.rpm//используйте файл, загруженный на шаге 3

  5. exit

  6. vagrant reload

Детали: проблема

  1. Делайте бродяжничать, но терпите неудачу с аналогичной ошибкой, кроме

Результатом ошибки была команда:

/sbin/mount.vboxsf: ошибка установки с ошибкой: нет такого устройства

  1. Продолжайте чтение журналов, и я заметил ниже ключевых слов

Установка гостевых дополнений Virtualbox 5.2.16 - гостевая версия - 5.1.10

Произошла ошибка при установке гостевых дополнений VirtualBox

В настоящее время эта система не настроена для сборки модулей ядра.

Пожалуйста, установите файлы заголовков ядра Linux, соответствующие текущему ядру

пакеты, содержащие заголовки, вероятно: kernel-devel kernel-devel-3.10.0-327.el7.x86_64

  1. Читать журналы далее

Будет установлен пакет kernel-headers.x86_64 0: 3.10.0-862.9.1.el7

Пакет kernel-devel-3.10.0-327.el7.x86_64 недоступен.

  1. Мой гость - мне нужен kernel-devel-3.10.0-327.el7.x86_64 для работы

Подробности: Моя среда

  • бэнто /CentOS-7.2
  • бродячая версия: 2.0.4
  • версия виртуального ящика: 5.2.16

источники