Vagrant-Fehler: Fehler beim Mounten von Ordnern im Linux-Gast

277

Ich habe einige Probleme mit freigegebenen Vagrant-Ordnern. Mein Basissystem ist Ubuntu 13.10 Desktop.

Ich verstehe nicht, warum ich diesen Fehler habe, ist etwas nicht richtig konfiguriert? Handelt es sich um ein NFS-Problem oder um Virtualbox-Gastzugaben? Ich habe mit verschiedenen vielen Boxen versucht, aber das gleiche Problem.

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

Hier ist der komplette Prozess nach 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

Meine Vagrantfile-Konfiguration lautet:

# -*- 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

Die Personalisierungsdatei lautet:

# 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"

Die folgenden Plugins sind in Vagrant aktiviert:

$ 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)
Ek Kosmos
quelle
Dieses Problem trat auch bei mir auf, nachdem ich die virtuelle Box aktualisiert habe 5.1.20. Diese Art macht mir jedes Mal Sorgen, wenn ich meine VM aktualisiere, da dies nicht das erste Mal ist :(
GusDeCooL
@GusDeCooL Sie können automatische Aktualisierung config.vbguest.auto_update = falseder Gastzusätze mit in der Vagrantfile
Henrik

Antworten:

356

Das Plugin vagrant-vbguest hat mein Problem gelöst:GitHub RubyGems

$ vagrant plugin install vagrant-vbguest

Ausgabe:

$ 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

Stellen Sie einfach sicher, dass Sie die neueste Version von VirtualBox ausführen

Karlingen
quelle
Ich verwende das Vagrant-vbguest-Plugin, aber dies hat nichts für mich behoben, bis ich auf VirtualBox-4.3.12-9 aktualisiert habe.
Mkirk
5
Dies ist das einzige, was es für mich behoben hat. Nachdem ich dies getan hatte, wurden die VboxAdditions der Gäste aktualisiert und mit meinem Host abgeglichen. Und alles gut, ohne Probleme. Ich muss nur die gleichen Versionen für Gast und Host beibehalten. Danke für den Zeiger @karlingen
Rixhers Ajazi
1
Ich hatte dieses Problem nach der Installation des Plugins. Durch die Deinstallation wird das Problem nicht behoben.
Yamiko
13
jee Ich hätte ungefähr 20 Stunden beim Googeln, Neukonfigurieren usw. gespart, indem ich genau diesen einen Einzeiler ausgegeben hätte ... Wo ist dein "Kauf mir einfach einen Bierknopf" ...
Yordan Georgiev
1
Hüten Sie sich vor, kann dieses Plugin verursacht ein fast identisches Problem , wenn Sie es zulassen config.vbguest.auto_update = true(Standard) github.com/dotless-de/vagrant-vbguest/issues/141
KCD
231

Ich fand dieses Problem hier angesprochen vagabundierende Probleme. Zwei Möglichkeiten, dies zu tun:

  1. Führen Sie dies auf Gast aus (dh nachdem Sie über vsh in vbox ssh vagrant ssh)

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

    Führen Sie vagrant reloaddann aus, um die Ordner korrekt bereitzustellen.

  2. Aktualisieren Sie, wie @klang hervorhob, die Datei VBoxGuestAdditions.iso auf Ihrem 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
    

UPDATE (16may2014)

Da die ISO nicht mehr verfügbar ist, können Sie die Version 4.3.12 verwenden ( http://dlc.sun.com.edgesuite.net/virtualbox/4.3.12/VBoxGuestAdditions_4.3.12.iso ).

Hinweis: Die binäre vbox4.3.12 für OS X ist derzeit nicht verfügbar

Kenzie
quelle
5
Möglicherweise müssen Sie anschließend nur noch Vagabunden neu laden, um die freigegebenen Ordner erneut
bereitzustellen
3
Kennt jemand eine Möglichkeit, dies als Teil der VagrantFile aufzunehmen, damit es vor dem Mounten der Laufwerke ausgeführt wird?
Jason Austin
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 .. danach haben Sie Business as usual.
klang
5
Die Verwendung einer Win 7Box mit Vagrant 1.3.5und VirtualBox 4.3.10, Antwort 1, hat bei mir nicht funktioniert. Ich habe immer noch die unable to mount ...Fehler
Kevin Meredith
3
Das empfohlene Update ist Option 1, wie ursprünglich hier veröffentlicht . Die URL zur ISO-Datei in Option zwei ist nicht mehr gültig und wirft eine 404.
colinhoernig
49

Ich bin auf dieser Seite angekommen, als ich nach der gleichen Fehlermeldung gesucht habe. Für mich war die Ursache anders: Ich hatte einen yum updateauf dem System ausgeführt, auf dem ein neuer Kernel installiert war. Die Gastzugaben waren veraltet, sodass sie nicht geladen werden konnten.

Ich habe sie mit wieder aufgebaut

sudo /etc/init.d/vboxadd setup 

Und vagrant reloadspäter war mein Gast wieder einsatzbereit.

Ich füge es hier nur hinzu, falls jemand anders hierher kommt, wie ich es getan habe.

Bearbeiten (gemäß KCDs Kommentar):
Möglicherweise wird eine Fehlermeldung angezeigt:

Die Header für den aktuell laufenden Kernel wurden nicht gefunden

Dies kann durch Installation von kernel-devel( yum install kernel-devel) behoben werden

Blizz
quelle
3
Vielen Dank. Ich habe vergessen, dass ich eine lief yum update. Ich hinterlasse diesen Kommentar, damit Future Austin ihn findet, wenn dies erneut geschieht.
Austin
1
Und ich habe apt-get update in ubuntu ausgeführt und einen Kommentar für zukünftige Skift hinterlassen, wenn dies wieder passiert :-)
Skift
Gegenwart und Zukunft Loïc bedankt sich nur :) (habe vergessen, dass ich auch eine lief yum update)
loïc m.
Es kann fehlschlagen zu sagen The headers for the current running kernel were not foundund Sie zu fragen, zu yum install kernel-develwelchen Werken
KCD
1
Ich musste auch gcc installieren, damit dies funktioniert. Zusammenfassend: 1) yum install kernel-devel-$(uname -r) und 2) yum install gcc; und schließlich beenden Sie VM und tun vagrant reload. Dies war auf einer Centos 7 Vagrant Box (Bento / Centos-7.1)
JDS
29

Schritt für Schritt beheben:

Wenn Sie kein vbguest-Plugin haben, installieren Sie es:

$ vagrant plugin install vagrant-vbguest

Führen Sie Vagrant aus

Es wird ein Fehler angezeigt.

$ vagrant up

Melden Sie sich bei VM an

$ vagrant ssh

Fix!

Im Gast (VM protokolliert).

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

Zurück auf dem Host, laden Sie Vagrant neu

$ vagrant reload
Dadaso Zanzane
quelle
Ich denke, das ist die beste und transparenteste Lösung
Mateusz Odelga
Das hat funktioniert, aber mit Fedora 22 musste ich vagrant sshin die Box und tun sudo ln -s /etc/dnf/dnf.conf /etc/yum.conf, als Fedora von yum zu dnf wechselte. Damit waren die Dinge zu Ende (glaube ich!). Danke @dadaso.
JZ
14

Update Februar 2016

Ich habe Stunden gebraucht, um unabhängig zu lösen. Ja, dieses Problem besteht bei den neuesten Installationen von Vagrant und Virtual Box weiterhin:

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

Die Symptome für mich waren Nachrichten wie:

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

gefolgt von einem Fehler beim Mounten von NFS-Laufwerken.

1). Installieren Sie das vagrant-vbguestPlugin.

Geben Sie je nach verwendeter Version von Vagrant einen der folgenden Befehle aus:

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

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

Als nächstes tun Sie vagrant halt, gefolgt von vagrant up- wahrscheinlich haben Sie noch Probleme.

2). ssh in deinen Gast und richte einen Softlink zur richtigen Version von Guest Additions ein (hier 5.0.14).

$ vagrant ssh

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

$ vagrant reload

Sie sollten alle gut sein. Standardmäßig befindet sich das bereitgestellte Laufwerk auf dem Gast bei/vagrant

Abschließender Kommentar:

Wenn Sie immer noch Probleme beim Mounten von NFS-Laufwerken haben, finden Sie hier eine Problemumgehung, die für mich funktioniert hat. Ich hatte eine vagrantfilemit config so etwas wie:

Entfernen Sie einfach die Informationen zum Mount- Typ und verkleinern Sie die Einstellungen für mount_options , damit sie universell funktionieren. Vagrant wählt nun automatisch die beste Option für synchronisierte Ordner für Ihre Umgebung aus.

arcseldon
quelle
2
Vielen Dank dafür ... Ihre vagrantfileKonfiguration fehlt jedoch kurz vor dem letzten Absatz - haben Sie die Möglichkeit, sie wieder hinzuzufügen?
Phil Gyford
Das funktioniert bei mir immer noch nicht. Ich habe einen neuen Vagrant heruntergeladen. vboxmanage zeigte bereits die obige Version. Der vom OP empfohlene Softlink war bereits vorhanden.
Tony Ennis
1
Wo ist deine Vagrantfile-Konfiguration? Es fehlt in Ihrer Antwort.
Aboelseoud
12

Installieren Sie das vagrant-vbguest-Plugin, indem Sie den folgenden Befehl ausführen:

vagrant plugin install vagrant-vbguest
ngonidzashe
quelle
6

Ich habe das gleiche Problem mit Centos 7 festgestellt, vermutlich aufgrund eines veralteten Kernels in Kombination mit einer aktualisierten Version von VirtualBox. Basierend auf dem Update von Blizz hat dies für mich funktioniert (Vagrant-vbguest-Plugin bereits installiert):

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

Bei VBoxGuestAdditions 5.1.20 bestand das Problem darin, dass /sbin/mount.vboxsfauf den falschen Speicherort verwiesen wurde.

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

habe es für mich behoben

bartv
quelle
Ich bin kein Vagrant-Benutzer, aber ich hatte das gleiche Problem bei einem Fedora Core-Gast, der auf einem OSX-Host ausgeführt wird. Ich denke, das Problem ist, dass der Speicherort von mount.vboxsfgeändert wurde, aber das Installationsprogramm verbindet sich mit dem alten Speicherort.
Teddy
Dies ist ein bestätigter Fehler in Gastzusätzen 5.1.20: virtualbox.org/ticket/16670
Max Smolens
4

Wie in der Vagrant-Ausgabe Nr. 3341 erwähnt, war dies ein Virtualbox-Fehler Nr. 12879 .

Es betrifft nur VirtualBox 4.3.10 und wurde in 4.3.12 vollständig behoben.

Tsusanka
quelle
Das ist, was ich tue, seit sie diesen Download-Link entfernt haben
Pat K
1
Beachten Sie, dass dieser Fehler in VirtualBox 4.3.12 behoben wurde.
Brame
5
Ich habe genau den gleichen Fehler in VirtualBox 4.3.26
Terbooter
4
4.3.28 für mich und das gleiche Problem.
Adam Parkin
5.0.14r105127 für mich und das gleiche Problem
Philip Pryde
3

Ich glaube , dass dies die aktualisierte Antwort ist jetzt und es funktionierte für mich ( Guest Additions Version: 5.0.6, VirtualBox Version: 4.3.16,Ubuntu 14.04 LTS )

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

Grundsätzlich sage ich:

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
psychok7
quelle
3
Vielleicht möchten Sie beachten, dass "Vagrant Destroy" Ihre VM mit allem, was Sie konfiguriert / installiert haben, wegbläst, es sei denn, ich irre mich.
CargoMeister
Dies war die einzige und schnellste Lösung für mich. Hatte von hier aus Probleme mit einem "Ubuntu präzise 64 VirtualBox" -Image . VirtualBox 5.1.2 und Vagrant 1.8.5 unter Windows.
Jamin
3

Nur zum späteren Nachschlagen trat dieses Problem bei mir unter Verwendung von Vagrant 1.7.4 und VirtualBox 5.0.10 r104061 auf, als ich einen freigegebenen Ordner in bereitstellte /und einen symbolischen Link zu meinem Basisordner erstellte. Etwas wie das:

/folder
~/folder -> /folder

Anscheinend ist dieser Vorgang von Vagrant aus Sicherheitsgründen nicht zulässig und löst den beschriebenen Fehler aus.

Ich habe es gelöst, indem ich den gewünschten Ordner direkt in meinem Home-Verzeichnis bereitgestellt habe, z /home/vagrant/folder.

Matheus Portela
quelle
1
Ich danke dir sehr. Dies war auch mein Problem.
Sarcastron
1
Richtig, ein freigegebener Ordner in /ist auch in meiner Version von Vagrant (1.8.1) nicht zulässig
Amedee Van Gasse
2

In meinem Fall auf einem zuvor funktionierenden Ubuntu 16.04-Image wurde der Fehler gestartet, nachdem vagrant-vbguest für ein anderes Vagrant-Image installiert und anschließend die Ubuntu-VM gestartet wurde. Die Gastzugaben wurden auf 5.1.20 aktualisiert, und seitdem versagten die Bereitstellungen. Aktualisiert die Box, apt Update + Upgrade und das gleiche, würde vbguest die neuere Version 5.1.20 installieren.

Es wurde durch manuelles Ausführen gelöst:

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

Und auch das Deaktivieren von: config.vbguest.auto_update = false für diese VM (möglicherweise nicht erforderlich).

Nico
quelle
Hatte genau das gleiche Problem. Ignorieren Sie die Warnung, dass die Versionen von Gast und Host nicht übereinstimmen, und deaktivieren Sie die automatische Aktualisierung.
Henrik
1

(aus meinem Kommentar oben)

Dem Problem bis zu seinen Wurzeln folgen: Insbesondere der Teil in den Kommentaren, der dies sagt:

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

Danach habe ich das normale Geschäft mit all meinen virtuellen Maschinen (und natürlich ihren aktuellen Vagrant-Dateien).

Wenn Sie in einer frisch erstellten virtuellen Maschine etwas tun müssen, damit es funktioniert, stimmt etwas nicht.

klang
quelle
1
Wenn Sie unter Linux arbeiten, müssen Sie die Datei wohl kopieren /usr/share/virtualbox/VBoxGuestAdditions.iso. Ich habe es jedoch nicht getestet!
Tsusanka
1

In der Konfiguration, in der Windows ein Host und Linux ein Gast ist, habe ich an anderer Stelle eine Lösung für dasselbe Problem gefunden.

Daher lautete die Fehlermeldung erneut " Fehler beim Mounten von Ordnern im Linux-Gast. Dies liegt normalerweise daran, dass das Dateisystem" vboxsf "nicht verfügbar ist." (...)

Dies wurde verursacht, weil ich einen Fehler gemacht habe, indem ich innerhalb des Gastsystems einen Symlink von / vagrant nach / home / vagrant / vagrant gemacht habe. Der Punkt ist, dass das Verzeichnis / Vagrant ein normales Linux-Verzeichnis ist, das einen Symlink hat (also alles in Ordnung), aber beim Booten mit "Vagrant Up" versucht es, das Windows-Verzeichnis an dieser Stelle zu mounten, und das Windows-Verzeichnis kann nicht so funktionieren ein Symlink. Der Windows-Host unterstützt keine Linux-Symlinks.

Was Sie dann tun können, ist, in einen Gast zu ssh, den Symlink zu entfernen, wo immer Sie ihn haben, und den Computer neu zu laden.

In meiner Konfiguration war es: Vagrant 1.7.2, VBoxGuestAdditions 4.3.28 und VBox 4.3.28.

BartoszK
quelle
1

Dies ist 2017. Nur für den Fall, dass jemand vor dem gleichen Problem steht.

Für Bento / Centos-6.7 wurde der gleiche Fehler angezeigt. Dies wurde durch Hinzufügen des Plugins vagrant-vbguest (0.13.0) gelöst. c:> vagrant plugin installiere vagrant-vbguest

Box-URL: http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-7.0_chef-provisionerless.box

Diese Centos-7-Version gab mir den gleichen Fehler

Error:

==> 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

Meine Konfiguration:

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)

Da ich bereits das Vagrant-vbguest-Plugin habe, versucht es, die VBoxGuestAdditions in Centos-7 zu aktualisieren, wenn in Host 5.0.10 und Gast 4.3.20 verschiedene Versionen von VBGuestAdditions installiert sind.

Ich habe sogar überprüft, ob eine symbolische Verbindung besteht.

[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

Dies funktionierte nicht wie von user3006381 vorgeschlagen

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

Lösung für Centos-7: wie von psychok7 angegeben funktioniert

Deaktiviertes Autoupdate. config.vbguest.auto_update = false Dann vagrant destroy --forceundvagrant up

Ergebnis:

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>
Samarjit Samanta
quelle
Es ist 2017 für mich und ich habe immer noch diesen Fehler. Ihr Fix sieht vielversprechend aus. Ich werde versuchen, mich zu melden.
Eric Hepperle - CodeSlayer2010
1

Inzwischen funktioniert die Montage auf einigen Maschinen (Ubuntu) und auf einigen nicht (Centos 7), aber die Installation des Plugins löst das Problem

vagrant plugin install vagrant-vbguest

ohne darüber hinaus noch etwas tun zu müssen

vagrant reload
George Mogilevsky
quelle
0

Ihr Protokoll beschwert sich darüber, dass exportfs nicht gefunden wurden: sudo: /usr/bin/exportfs: command not found

Das exportfs stellt NFS-Clients lokale Verzeichnisse zum Mounten zur Verfügung.

Kenzie
quelle
1
Ich habe das Problem behoben, sudo: /usr/bin/exportfs: command not foundindem ich mit dem Befehl einen Symlink zum realen Pfad gesetzt habe. sudo ln -s /usr/sbin/exportfs /usr/bin/exportfsDer Fehler über Failed to mount folders in Linux guestbleibt jedoch auch danach bestehen.
Ek Kosmos
0

Dies scheint auf eine Inkompatibilität mit dem Vagrant-Plugin von vbguest und den neuesten Versionen von Vagrant zurückzuführen zu sein. Es wird versucht, die Gastzugaben zu aktualisieren, und es wird nicht vollständig / ordnungsgemäß ausgeführt.

Hickeroar
quelle
2
Nach allem, was ich gesehen habe, aktualisiert vagrant-vbguest die VM korrekt auf die neuesten (4.3.10) GuestAdditions - leider hat die neueste GuestAdditions einen Fehler für Linux-Gäste.
Iheggie
0

Versuchen Sie es wie:

vagrant plugin install vagrant-vbguest

In Vagrantfile hinzufügen:

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}

Lauf:

vagrant vbguest --do install -f -b

vagrant reload
user8034098
quelle
0

Ich habe Vagrant mit VirtualBox 5.1.X ausgeführt und musste ein Downgrade auf VirtualBox 5.0.40 durchführen und das vbguest-Plugin installieren, um dieses Problem zu lösen.

Meine Schritte waren:

  • Deinstallieren Sie VirtualBox 5.1.X.
  • Installieren Sie Vagrant 5.0.40
  • Starten Sie meinen Computer neu
  • Lauf vagrant upfür meinen Landstreicher. Es wird scheitern.
  • Führen Sie es aus, vagrant plugin install vagrant-vbguestwährend meine VM ausgeführt wird, um das Vagrant-Plugin zu installieren. Dadurch wird die Synchronisierung der VirtualBox-Gastversionen zwischen Host und Gast verwaltet.
  • Führen Sie aus vagrant reload, um meine virtuelle Maschine neu zu laden
  • Magie!
Brad Parks
quelle
-1

Ein weiterer Schritt, den ich ausführen musste, nachdem ich dem ersten Vorschlag von Kenzie gefolgt war , bestand darin, die mountin der Fehlermeldung aufgeführten Befehle sudoüber die Ubuntu-Befehlszeile [14.04 Server] auszuführen . Danach war alles gut zu gehen!

Yossarian
quelle
Stattdessen sollte man rennen vagrant reload.
Jerrod