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)
ubuntu
virtualbox
vagrant
nfs
Ek Kosmos
quelle
quelle
5.1.20
. Diese Art macht mir jedes Mal Sorgen, wenn ich meine VM aktualisiere, da dies nicht das erste Mal ist :(config.vbguest.auto_update = false
der Gastzusätze mit in der VagrantfileAntworten:
Das Plugin vagrant-vbguest hat mein Problem gelöst:
Ausgabe:
Stellen Sie einfach sicher, dass Sie die neueste Version von VirtualBox ausführen
quelle
config.vbguest.auto_update = true
(Standard) github.com/dotless-de/vagrant-vbguest/issues/141Ich fand dieses Problem hier angesprochen vagabundierende Probleme. Zwei Möglichkeiten, dies zu tun:
Führen Sie dies auf Gast aus (dh nachdem Sie über vsh in vbox ssh
vagrant ssh
)Führen Sie
vagrant reload
dann aus, um die Ordner korrekt bereitzustellen.Aktualisieren Sie, wie @klang hervorhob, die Datei VBoxGuestAdditions.iso auf Ihrem Mac:
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
quelle
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.Win 7
Box mitVagrant 1.3.5
undVirtualBox 4.3.10
, Antwort 1, hat bei mir nicht funktioniert. Ich habe immer noch dieunable to mount ...
FehlerIch bin auf dieser Seite angekommen, als ich nach der gleichen Fehlermeldung gesucht habe. Für mich war die Ursache anders: Ich hatte einen
yum update
auf 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
Und
vagrant reload
spä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:
Dies kann durch Installation von
kernel-devel
(yum install kernel-devel
) behoben werdenquelle
yum update
. Ich hinterlasse diesen Kommentar, damit Future Austin ihn findet, wenn dies erneut geschieht.yum update
)The headers for the current running kernel were not found
und Sie zu fragen, zuyum install kernel-devel
welchen Werkenyum install kernel-devel-$(uname -r)
und 2)yum install gcc
; und schließlich beenden Sie VM und tunvagrant reload
. Dies war auf einer Centos 7 Vagrant Box (Bento / Centos-7.1)Schritt für Schritt beheben:
Wenn Sie kein vbguest-Plugin haben, installieren Sie es:
Führen Sie Vagrant aus
Es wird ein Fehler angezeigt.
Melden Sie sich bei VM an
Fix!
Im Gast (VM protokolliert).
Zurück auf dem Host, laden Sie Vagrant neu
quelle
vagrant ssh
in die Box und tunsudo 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.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:
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-vbguest
Plugin.Geben Sie je nach verwendeter Version von Vagrant einen der folgenden Befehle aus:
Als nächstes tun Sie
vagrant halt
, gefolgt vonvagrant 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).
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
vagrantfile
mit 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.
quelle
vagrantfile
Konfiguration fehlt jedoch kurz vor dem letzten Absatz - haben Sie die Möglichkeit, sie wieder hinzuzufügen?Installieren Sie das vagrant-vbguest-Plugin, indem Sie den folgenden Befehl ausführen:
quelle
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):
quelle
Bei VBoxGuestAdditions 5.1.20 bestand das Problem darin, dass
/sbin/mount.vboxsf
auf 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
quelle
mount.vboxsf
geändert wurde, aber das Installationsprogramm verbindet sich mit dem alten Speicherort.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.
quelle
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:
quelle
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: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
.quelle
/
ist auch in meiner Version von Vagrant (1.8.1) nicht zulässigIn 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:
Und auch das Deaktivieren von:
config.vbguest.auto_update = false
für diese VM (möglicherweise nicht erforderlich).quelle
(aus meinem Kommentar oben)
Dem Problem bis zu seinen Wurzeln folgen: Insbesondere der Teil in den Kommentaren, der dies sagt:
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.
quelle
/usr/share/virtualbox/VBoxGuestAdditions.iso
. Ich habe es jedoch nicht getestet!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.
quelle
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:
Meine Konfiguration:
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.
Dies funktionierte nicht wie von user3006381 vorgeschlagen
Lösung für Centos-7: wie von psychok7 angegeben funktioniert
Deaktiviertes Autoupdate.
config.vbguest.auto_update = false
Dannvagrant destroy --force
undvagrant up
Ergebnis:
quelle
Inzwischen funktioniert die Montage auf einigen Maschinen (Ubuntu) und auf einigen nicht (Centos 7), aber die Installation des Plugins löst das Problem
ohne darüber hinaus noch etwas tun zu müssen
quelle
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.
quelle
sudo: /usr/bin/exportfs: command not found
indem ich mit dem Befehl einen Symlink zum realen Pfad gesetzt habe.sudo ln -s /usr/sbin/exportfs /usr/bin/exportfs
Der Fehler überFailed to mount folders in Linux guest
bleibt jedoch auch danach bestehen.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.
quelle
Versuchen Sie es wie:
In Vagrantfile hinzufügen:
Lauf:
quelle
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:
vagrant up
für meinen Landstreicher. Es wird scheitern.vagrant plugin install vagrant-vbguest
während meine VM ausgeführt wird, um das Vagrant-Plugin zu installieren. Dadurch wird die Synchronisierung der VirtualBox-Gastversionen zwischen Host und Gast verwaltet.vagrant reload
, um meine virtuelle Maschine neu zu ladenquelle
Ein weiterer Schritt, den ich ausführen musste, nachdem ich dem ersten Vorschlag von Kenzie gefolgt war , bestand darin, die
mount
in der Fehlermeldung aufgeführten Befehlesudo
über die Ubuntu-Befehlszeile [14.04 Server] auszuführen . Danach war alles gut zu gehen!quelle
vagrant reload
.