Mam pewne problemy z współdzielonymi folderami Vagrant, moim podstawowym systemem jest komputer stacjonarny Ubuntu 13.10.
Nie rozumiem, dlaczego mam ten błąd, czy coś jest źle skonfigurowane? Czy występuje problem z NFS lub dodatkami gości Virtualbox? Próbowałem z różnymi wieloma pudełkami, ale ten sam 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
Oto kompletny proces po 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
Moja konfiguracja Vagrantfile to:
# -*- 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
Plik personalizacji to:
# 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"
W Vagrant są włączone następujące wtyczki:
$ 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
źródło
źródło
5.1.20
. Ten rodzaj sprawia, że martwię się za każdym razem, gdy aktualizuję mojąconfig.vbguest.auto_update = false
pomocą VagrantfileOdpowiedzi:
Wtyczka vagrant-vbguest rozwiązała mój problem:
Wynik:
Upewnij się, że korzystasz z najnowszej wersji VirtualBox
źródło
config.vbguest.auto_update = true
(domyślne) github.com/dotless-de/vagrant-vbguest/issues/141Znalazłem ten problem rozwiązany tutaj błędne problemy. Dwa sposoby na zrobienie tego:
Uruchom to na gościu (tj. Po ssh do vbox przez
vagrant ssh
)Następnie uruchom,
vagrant reload
aby poprawnie zamontować foldery.Jak wskazał @klang, zaktualizuj plik VBoxGuestAdditions.iso na komputerze Mac:
AKTUALIZACJA (16 maja 2014)
Ponieważ ISO nie jest już dostępne, możesz użyć wersji 4.3.12 ( http://dlc.sun.com.edgesuite.net/virtualbox/4.3.12/VBoxGuestAdditions_4.3.12.iso )
Uwaga: binarny vbox4.3.12 dla systemu OS X nie jest obecnie dostępny
źródło
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
.. po tym, jak zwykle, prowadzisz działalność.Win 7
pola zVagrant 1.3.5
iVirtualBox 4.3.10
odpowiedź nr 1 nie zadziałała dla mnie. Nadal dostajęunable to mount ...
błędyDoszedłem do tej strony, szukając tego samego komunikatu o błędzie. Dla mnie przyczyna była inna: uruchomiłem
yum update
system, który zainstalował nowe jądro. Dodatki gości były nieaktualne, więc nie można ich było załadować.Przebudowałem je
A
vagrant reload
później mój gość znów zaczął działać.Po prostu dodaję to tutaj na wypadek, gdyby ktoś dotarł tutaj w ten sam sposób, co ja.
Edycja (według komentarza KCD):
Możliwe, że pojawi się błąd:
Można to rozwiązać, instalując
kernel-devel
(yum install kernel-devel
)źródło
yum update
. Zostawiam ten komentarz, aby Future Austin go znalazł, kiedy to się powtórzy.yum update
teżThe headers for the current running kernel were not found
i zapytać,yum install kernel-devel
które działayum install kernel-devel-$(uname -r)
i 2)yum install gcc
; i na koniec wyjdź z VM i wykonajvagrant reload
. To było na pudełku Centos 7 Vagrant (bento / centos-7.1)Napraw krok po kroku:
Jeśli nie masz wtyczki vbguest, zainstaluj ją:
Uruchom Vagrant
To pokazuje błąd.
Zaloguj się na VM
Naprawić!
W gościu (zalogowana maszyna wirtualna).
Wróć na hosta, załaduj ponownie Vagrant
źródło
vagrant ssh
zrobić i to zrobićsudo ln -s /etc/dnf/dnf.conf /etc/yum.conf
, ponieważ Fedora przeszła z yum na dnf. Dzięki temu wszystko dobiegło końca (tak myślę!). Dzięki @dadaso.Aktualizacja z lutego 2016 r
Samodzielne rozwiązanie zajęło mi kilka godzin. Tak, ten problem nadal występuje w przypadku najnowszych instalacji Vagrant i Virtual Box:
Objawami były dla mnie wiadomości w rodzaju:
Checking for guest additions in VM... The guest additions on this VM do not match the installed version of VirtualBox!
a następnie błąd montowania dysków NFS.
1). Zainstaluj
vagrant-vbguest
wtyczkę.W zależności od używanej wersji Vagrant, wydaj jedno z następujących poleceń:
Następnie wykonaj
vagrant halt
, a następnievagrant up
- są szanse, że nadal masz problemy.2). ssh do gościa i skonfiguruj miękki link do właściwej wersji Dodatków gości (tutaj 5.0.14).
Powinieneś być dobry. Domyślnie zamontowany dysk gościa jest ustawiony na
/vagrant
Końcowy komentarz:
Jeśli nadal masz problemy związane z montażem dysków NFS, oto obejście, które zadziałało dla mnie. Miałem
vagrantfile
z config coś takiego:Po prostu usuń informacje o typie montażu i zmniejsz ustawienia mount_options , aby działały one uniwersalnie. Vagrant automatycznie wybierze teraz najlepszą opcję folderu synchronizowanego dla twojego środowiska.
źródło
vagrantfile
brakuje twojej konfiguracji, tuż przed ostatnim akapitem - czy jest szansa, że ją wrócisz?Zainstaluj wtyczkę vagrant-vbguest, uruchamiając następujące polecenie:
źródło
Ten sam problem wystąpił z Centos 7, zakładam, że z powodu nieaktualnego jądra w połączeniu ze zaktualizowaną wersją VirtualBox. W oparciu o aktualizację Blizz, to działało dla mnie (wtyczka vagrant-vbguest jest już zainstalowana):
źródło
Dla mnie w przypadku VBoxGuestAdditions 5.1.20 problem polegał na tym, że
/sbin/mount.vboxsf
wskazywał na niewłaściwą lokalizację.sudo ln -sf /opt/VBoxGuestAdditions-5.1.20/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf
naprawiłem to dla mnie
źródło
mount.vboxsf
, ale instalator łączy symbolicznie do starej lokalizacji.Jak wspomniano w Vagrant numer # 3341, był to błąd Virtualbox # 12879 .
Wpływa tylko na VirtualBox 4.3.10 i został całkowicie naprawiony w 4.3.12.
źródło
Wierzę, że jest to najbardziej zaktualizowane odpowiedź teraz i pracował dla mnie (
Guest Additions Version: 5.0.6
,VirtualBox Version: 4.3.16
,Ubuntu 14.04 LTS
)https://github.com/mitchellh/vagrant/issues/3341#issuecomment-144271026
Zasadniczo mówię:
źródło
Na wszelki wypadek ten problem zdarzył się ze mną przy użyciu Vagrant 1.7.4 i VirtualBox 5.0.10 r104061, gdy udostępniono folder współdzielony
/
i utworzyłem symboliczne łącze do mojego folderu domowego. Coś takiego:Najwyraźniej Vagrant nie zezwala na tę operację ze względów bezpieczeństwa i generuje opisany błąd.
Rozwiązałem go, udostępniając żądany folder bezpośrednio w moim katalogu domowym, takim jak
/home/vagrant/folder
.źródło
/
jest również niedozwolony w mojej wersji Vagrant (1.8.1)W moim przypadku na wcześniej działającym obrazie Ubuntu 16.04 błąd zaczął się po zainstalowaniu vagrant-vbguest dla innego błędnego obrazu, a następnie uruchomieniu maszyny Wirtualnej Ubuntu. Zaktualizował dodatki gości do 5.1.20 i od tego czasu montowania zaczęły się nie udać. Zaktualizowałem pudełko, apt update + upgrade i to samo, vbguest zainstalowałby nowszą wersję 5.1.20.
Zostało to rozwiązane przez ręczne uruchomienie:
A także wyłączenie:
config.vbguest.auto_update = false
dla tej maszyny wirtualnej (może nie być konieczne).źródło
(z mojego komentarza powyżej)
Podążając za problemem do jego korzeni: w szczególności część w komentarzach mówi:
Po wykonaniu tej czynności mam jak zwykle interesy ze wszystkimi moimi maszynami wirtualnymi (i oczywiście ich aktualnymi plikami Vagrant)
Gdy musisz coś zrobić na świeżo utworzonej maszynie wirtualnej, aby działała, coś jest nie tak.
źródło
/usr/share/virtualbox/VBoxGuestAdditions.iso
. Jednak tego nie przetestowałem!W konfiguracji, w której Windows jest hostem, a Linux jest gościem, znalazłem rozwiązanie tego samego problemu w innym miejscu.
Tak więc znowu komunikat o błędzie był „Nie można zamontować folderów w systemie Linux gości. Zazwyczaj dzieje się tak, ponieważ system plików„ vboxsf ”jest niedostępny.” (...)
Było to spowodowane tym, że popełniłem błąd, robiąc dowiązanie symboliczne w systemie gościa z / vagrant do / home / vagrant / vagrant. Chodzi o to, że katalog / włóczęga jest normalnym katalogiem linuksa, który ma dowiązanie symboliczne (więc wszystko w porządku), ale podczas uruchamiania za pomocą „włóczęgi w górę” próbuje zamontować katalog systemu Windows w tym miejscu, a katalog systemu Windows nie może działać jako dowiązanie symboliczne. Host systemu Windows nie obsługuje linuksowych dowiązań symbolicznych.
Więc co możesz zrobić, to ssh do gościa, usunąć dowiązanie symboliczne, gdziekolwiek go masz, i ponownie załadować maszynę.
W mojej konfiguracji było to: Vagrant 1.7.2, VBoxGuestAdditions 4.3.28 i VBox 4.3.28.
źródło
Jest to rok 2017. Na wypadek, gdyby ktoś napotkał ten sam problem.
W przypadku bento / centos-6.7 otrzymywałem ten sam błąd. Zostało to rozwiązane poprzez dodanie wtyczki vagrant-vbguest (0.13.0). c:> vagrant plugin zainstaluj vagrant-vbguest
Adres URL skrzynki: http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-7.0_chef-provisionerless.box
Ta wersja centos-7 dawała mi ten sam błąd
Błąd:
Moja konfiguracja:
Ponieważ mam już wtyczkę vagrant-vbguest, próbuje ona zaktualizować VBoxGuestAdditions w centos-7, gdy zobaczy inną wersję VBGuestAdditions zainstalowaną na hoście 5.0.10 i gościu 4.3.20.
Sprawdziłem nawet, czy istnieje dowiązanie symboliczne.
Nie działało to zgodnie z sugestią użytkownika 3006381
Rozwiązanie dla centos-7: podane przez psychok7 działało
Diabled autoupdate.
config.vbguest.auto_update = false
Następnievagrant destroy --force
ivagrant up
Wynik:
źródło
do tej pory montaż działa na niektórych komputerach (ubuntu), a niektóre nie (centos 7), ale zainstalowanie wtyczki rozwiązuje to
bez konieczności robienia czegokolwiek innego, po prostu
źródło
Twój dziennik narzeka na brak znalezienia eksportu:
sudo: /usr/bin/exportfs: command not found
Exportfs udostępnia katalogi lokalne dla klientów NFS do zamontowania.
źródło
sudo: /usr/bin/exportfs: command not found
ustawienia dowiązania symbolicznego do rzeczywistej ścieżki za pomocą poleceniasudo ln -s /usr/sbin/exportfs /usr/bin/exportfs
, jednak błąd związany zFailed to mount folders in Linux guest
utrzymywaniem się nawet po tym.Wydaje się, że jest to spowodowane niekompatybilnością z wtyczką vbguest vagrant i najnowszą wersją wersji Vagrant. Próbuje zaktualizować dodatki gości, ale nie robi tego całkowicie / poprawnie.
źródło
Spróbuj jak to:
W Vagrantfile dodaj:
Biegać:
źródło
Uruchomiłem Vagrant z VirtualBox 5.1.X i musiałem obniżyć wersję VirtualBox 5.0.40 i zainstalować wtyczkę vbguest, aby rozwiązać ten problem.
Moje kroki to:
vagrant up
po mojego włóczęgę. To się nie powiedzie.vagrant plugin install vagrant-vbguest
podczas działania mojej maszyny wirtualnej, aby zainstalować plugawą wtyczkę. To zarządza synchronizacją wersji VirtualBox Guest między hostem a gościem.vagrant reload
aby ponownie załadować moją maszynę wirtualnąźródło
Kolejnym krokiem, który musiałem wykonać po wykonaniu pierwszej sugestii Kenziego, było uruchomienie
mount
poleceń wymienionych w komunikacie o błędzie zsudo
poziomu wiersza poleceń Ubuntu [Serwer 14.04]. Potem wszystko było już gotowe!źródło
vagrant reload
.