dotless-de / vagrant-vbguest Goto Github PK
View Code? Open in Web Editor NEWA Vagrant plugin to keep your VirtualBox Guest Additions up to date
License: MIT License
A Vagrant plugin to keep your VirtualBox Guest Additions up to date
License: MIT License
Hello!
When trying to do a vagrant up
with no VM, I get the following error. At the second time, it runs successfully.
$ vagrant up
[default] Box precise64 was not found. Fetching box from specified URL...
[vagrant] Downloading with Vagrant::Downloaders::HTTP...
[vagrant] Downloading box: http://files.vagrantup.com/precise64.box
[vagrant] Extracting box...
[vagrant] Verifying box...
[vagrant] Cleaning up downloaded box...
[default] Importing base box 'precise64'...
[default] The guest additions on this VM do not match the install version of
VirtualBox! This may cause things such as forwarded ports, shared
folders, and more to not work properly. If any of those things fail on
this machine, please update the guest additions and repackage the
box.
Guest Additions Version: 4.2.0
VirtualBox Version: 4.2.6
[default] Matching MAC address for NAT networking...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
VM must be created before running this command. Run `vagrant up` first.
My Vagrantfile is as bare as it gets:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant::Config.run do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
end
Vagrant up gives me this error:
vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installers/linux.rb:16:in `distro': undefined method `distro_dispatch' for #<Vagrant::Guest:0x00000102607720> (NoMethodError)
On a Mac (10.8.3), I have Vagrant 1.2.0, ruby 1.8.7, chef 11.4.0, and Virtual Box 4.2.12.
I created a base Virtual Box VM following the instructions here:
http://docs-v1.vagrantup.com/v1/docs/base_boxes.html
But when I try to package the box, I get:
~/VirtualBoxVMs $ vagrant package --base ubuntu12-5
/Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/lib/vagrant/machine.rb:99:in initialize': undefined method
ui' for true:TrueClass (NoMethodError)
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/plugins/commands/package/command.rb:55:in new' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/plugins/commands/package/command.rb:55:in
package_base'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/plugins/commands/package/command.rb:38:in execute' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/lib/vagrant/cli.rb:46:in
execute'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/lib/vagrant/environment.rb:458:in cli' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.0/bin/vagrant:84:in
<top (required)>'
from /Applications/Vagrant/bin/../embedded/gems/bin/vagrant:23:in load' from /Applications/Vagrant/bin/../embedded/gems/bin/vagrant:23:in
Add optional caching of downloaded (not a local) iso file into a sub directory of "vagrant home"
When doing vagrant vbguest on a box, the Virtualbox tools update fails with:
/home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/rebootable.rb:13:in rebooted?': undefined method
vm_id' for VagrantVbguest::Command:Class (NoMethodError)
from /home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/rebootable.rb:17:in reboot?' from /home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/vagrant_compat/vagrant_1_1/rebootable.rb:23:in
reboot!'
from /home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/command.rb:82:in execute_on_vm' from /home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/command.rb:54:in
block in execute'
from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/plugin/v2/command.rb:182:in block in with_target_vms' from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/plugin/v2/command.rb:180:in
each'
from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/plugin/v2/command.rb:180:in with_target_vms' from /home/dbxbsc/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/command.rb:54:in
execute'
from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/cli.rb:46:in execute' from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/lib/vagrant/environment.rb:478:in
cli'
from /opt/vagrant/embedded/gems/gems/vagrant-1.2.7/bin/vagrant:84:in <top (required)>' from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in
load'
from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in `
I'm using:
As reported by @gregsymons in https://github.om/dotless-de/vagrant-vbguest/pull/25#issuecomment-10793486, after fixing #25 provisioners will run twice - once during the normal startup and a second timer during the execution of the reload chain.
I've had endless trouble with ISO detection on new VB 4.1 installs. VirtualBox::DVD.all.find
only works once the Additions ISO has been attached to a VM and gets added to the "virtual media library". There's no longer a way to add an ISO to the library using VBoxManage
.
How do you feel about making educated guesses on the ISO path based on the host platform? Say..
@iso_path = if Vagrant::Util::Platform.linux?
"/usr/share/virtualbox/VBoxGuestAdditions.iso"
elsif Vagrant::Util::Platform.darwin?
"/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso"
end
As described in mitchellh/vagrant:27fa9d4 another common GuestAdditions pain is a not loaded guest additions kernel extension which is usually a result of an kernel update.
Instead of reinstalling the extension from ISO, it should be sufficient to run sudo /etc/init.d/vboxadd setup
on the guest to get the kernel extension rebuild and initialized.
Loving this plugin, so I instantly regretted upgrading to Vagrant 1.1 when I lost it. Looks like vbguest 0.7.0 is being installed OK by vagrant plugin install vagrant-vbguest
, but now I get the following error after vagrant up
.
mount: you must specify the filesystem type
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed
mount /tmp/VBoxGuestAdditions.iso -o loop /mnt
I am running vagrant on Windows 7, via cygwin (have ssh package installed and working). I had success running the vbguest plugin with older Vagrant versions, but not Vagrant 1+.
/tmp/install_vbguest.sh fails on Debian Lenny as the 'dkms' package in unavailable in that distro.
Reference: https://forums.virtualbox.org/viewtopic.php?f=8&t=20493
vbguest error output: https://gist.github.com/4251700
Getting this error when using the plugin under Vagrant 1.1.4.
https://gist.github.com/juliandunn/5268895
What I find strange is:
[default] Forcing shutdown of VM...
[default] Destroying VM and associated drives...
right after the installation of VirtualBox tools as well.
I highly appreciate this plugin and I do NOT blame it for causing this issue (root-cause is a freaking DNS issue) - but I think it should handle connection errors to the outside world more gracefully, because otherwise the VM gets into an undesired state and is not usable anymore.
I got errors because the packages required for installing the guest additions could not be fetched from the internet.
Fehlschlag beim Holen von http://us.archive.ubuntu.com/ubuntu/pool/main/p/patch/patch_2.6-2ubuntu1_amd64.deb "us.archive.ubuntu.com" konnte nicht aufgelรถst werden
Fehlschlag beim Holen von http://us.archive.ubuntu.com/ubuntu/pool/main/d/dkms/dkms_2.1.1.2-2ubuntu1_all.deb "us.archive.ubuntu.com" konnte nicht aufgelรถst werden
Fehlschlag beim Holen von http://us.archive.ubuntu.com/ubuntu/pool/main/f/fakeroot/fakeroot_1.14.4-1ubuntu1_amd64.deb "us.archive.ubuntu.com" konnte nicht aufgelรถst werden
E: Einige Archive konnten nicht heruntergeladen werden; vielleicht "apt-get update" ausfรผhren oder mit "--fix-missing" probieren?
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.1.12 Guest Additions for Linux..........
VirtualBox Guest Additions installer
Removing installed version 4.0.12 of VirtualBox Guest Additions...
Doesn't sound like a big deal BUT the problem is the last line: the old GAs are being removed and after that the shared folders etc. are broken:
The following SSH command responded with a non-zero exit status. Vagrant assumes that this means the command failed! mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-root /vagrant
In my eyes a valid solution would be a simple HTTP-Request before running the setup-routine. I digged into the code but couldn't find a proper place for that.
Would such a check make sense in your eyes? Where is the best place to put it into the source? Any pointers are more than welcome so I can provide a pull request! :)
I'm having a consistent issue where the plugin routinely reboots the guest when no changes have been made - my log output for vagrant up and vagrant reload always includes:
[default] Attempting graceful shutdown of VM...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Running any VM customizations...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Detected Virtualbox Guest Additions 4.1.24 --- OK.
[default] Restarting VM to apply changes...
[default] Attempting graceful shutdown of VM...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
After a reboot, the action again recognises that it has the correct version but this time continues to provision normally. I'm on a Windows Vista host and a Ubuntu 12.04 guest. I'm having to use Virtualbox 4.1.24 as the more recent versions are currently causing problems on my machine.
I get this error when trying to use vagrant-vbguest, and I don't know enough Ruby to figure out the loading problem. What could be wrong?
Hi,
I'm trying to the auto update working from my host (Windows 7) to the guest which is Windows 2008 but I receive:
ERROR vagrant: Vagrant experienced an error! Details:
ERROR vagrant: #<VagrantVbguest::Installer::NoInstallerFoundError: translation missing: en.vagrant_vbguest.errors.installer.no_install_script_
for_platform>
ERROR vagrant: translation missing: en.vagrant_vbguest.errors.installer.no_install_script_for_platform
ERROR vagrant: C:/Users/gibbonsd/.vagrant.d/gems/gems/vagrant-vbguest-0.8.0/lib/vagrant-vbguest/installer.rb:87:in `guest_version'
Looks like this isn't supported? Would I need to write a custom script?
Thanks
Dan
I just tried to boot an old SL6 VM
$ vagrant vbguest --do install
[vagrant] GuestAdditions seems to be installed (4.1.18) correctly, but not running.
Loaded plugins: security
Setting up Install Process
No package kernel-devel-2.6.32-279.el6.x86_64 available.
Package gcc-4.4.7-3.el6.x86_64 already installed and latest version
Package 1:make-3.81-20.el6.x86_64 already installed and latest version
Package 4:perl-5.10.1-129.el6.x86_64 already installed and latest version
Nothing to do
[...]
This happens because the kernel-devel
package for the running kernel version has since been removed from the package repos.
I think the best solution for this is to try to catch the failure, install a current version of the kernel + devel packages, e.g. yum install kernel kernel-devel
then reboot and try the guest installation again.
I'll probably send in a pull request at some point but just lodging this in the mean time :)
Using v0.8 of this plugin (just via the standard vagrant plugin install vagrant-vbguest
), I find that when the plugin tries to "download" the guest additions, it goes off and looks in a very odd place:
vagrant vbguest --do install
GuestAdditions versions on your host (4.2.16) and guest (4.2.10) do not match.
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
* base: mirror.mel.bkb.net.au
* extras: mirror.ventraip.net.au
* updates: mirror.ventraip.net.au
Setting up Install Process
Package kernel-devel-2.6.32-358.el6.x86_64 already installed and latest version
Package gcc-4.4.7-3.el6.x86_64 already installed and latest version
Package 1:make-3.81-20.el6.x86_64 already installed and latest version
Package 4:perl-5.10.1-131.el6_4.x86_64 already installed and latest version
Nothing to do
Downloading VirtualBox Guest Additions ISO from /home/david/.VirtualBox/C:/PROGRA~1/Sun/XVMVIR~1/VBoxGuestAdditions.iso
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.
<url> malformed
This is odd because I'm running an Ubuntu 13.04 x86_64 host, CentOS 6.4 x86_64 client (Vagrant 1.2.7, VirtualBox 4.2.16) -- with no Windows system anywhere to be seen. Manually passing in the Linux location against --iso
is accepted, however.
xyz@co-data:~/labs/puppet-riak$ rake vagrant:reload
[riak-5.local] Attempting graceful shutdown of VM...
[riak-5.local] Clearing any previously set forwarded ports...
[riak-5.local] Forwarding ports...
[riak-5.local] -- 22 => 2222 (adapter 1)
[riak-5.local] Creating shared folders metadata...
[riak-5.local] Creating hiera shared folders metadata...
[riak-5.local] Clearing any previously set network interfaces...
[riak-5.local] Preparing network interfaces based on configuration...
[riak-5.local] Booting VM...
[riak-5.local] Waiting for VM to boot. This can take a few minutes.
[riak-5.local] VM booted and ready for use!
[riak-5.local] Installing Virtualbox Guest Additions 4.1.20 - guest's version is 4.1.16
[riak-5.local] Copy iso file /usr/share/virtualbox/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
[riak-5.local] Copy installer file setup_debian.sh into the box /tmp/install_vbguest.sh
stdin: is not a tty
stdin: is not a tty
Reading package lists...
Building dependency tree...
Reading state information...
dkms is already the newest version.
linux-headers-3.2.0-23-generic is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 76 not upgraded.
mount: warning: /mnt seems to be mounted read-only.
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.1.20 Guest Additions for Linux.........
VirtualBox Guest Additions installer
Removing installed version 4.1.20 of VirtualBox Guest Additions...
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 ...fail!
(Could not find the X.Org or XFree86 Window System.)
As you can see, the Guest Additions itself specifies that it's up-to-date.
Steps to repro:
vagrant reload
Tested on precise64.
So I have a box which I build with 4.1.8 guest additions through bento. When I updated my Virtualbox to 4.2.6 on my system (MacOS X), vbguest tried to update the guest additions inside the box but apparently it failed.
There are no error messages in the log (on the screen) โย it just complained about a missing X window system which I think is fine, since these VMs are servers and not desktops.
Reason why I think this is vbguest related is, is that when I disable the update, the box comes up fine. Before I got errors, such as mount.vboxfs was missing (or there was no device). Which all seemed like the guest additions inside the box are hosed.
I am using:
gem install
)gem install
)Do you think it's worth it investigating this since 0.5.x is already out?
Currently if you install the vagrant-vbguest gem and try to "vagrant up" a Vagrantfile that uses a basebox that has the dependencies for the VirtualBox tools removed (to make it smaller) vbguest uninstalls the VirtualBox tools and fails to reinstall them, which essentially bricks the VM (yes I know it can be repaired manually).
Here's a sample Vagrantfile:
Vagrant::Config.run do |config|
config.vm.box = "sl6-64-lyte"
config.vm.box_url = "http://lyte.id.au/vagrant/sl6-64-lyte.box"
end
Without the vbguest gem, this Vagrantfile works (with a tools version missmatch warning, but vboxfs still operates correctly), however with vbguest it fails like so:
$ vagrant up
[default] Importing base box 'sl6-64-lyte'...
[default] The guest additions on this VM do not match the install version of
VirtualBox! This may cause things such as forwarded ports, shared
folders, and more to not work properly. If any of those things fail on
this machine, please update the guest additions and repackage the
box.
Guest Additions Version: 4.1.12
VirtualBox Version: 4.1.18
[default] Matching MAC address for NAT networking...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Running any VM customizations...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] GuestAdditions versions on your host (4.1.18) and guest (4.1.12) do not match.
[default] The guest's platform is currently not supported, will try generic Linux method...
[default] Downloading VirtualBox Guest Additions ISO with Vagrant::Downloaders::HTTP...
[default] Downloading box: http://download.virtualbox.org/virtualbox/4.1.18/VBoxGuestAdditions_4.1.18.iso
[default] Downloading box: http://dlc.sun.com.edgesuite.net/virtualbox/4.1.18/VBoxGuestAdditions_4.1.18.iso
[default] Copy iso file /home/foo/.vagrant.d/tmp/vbguest1363228663 into the box /tmp/VBoxGuestAdditions.iso
[default] Installing Virtualbox Guest Additions 4.1.18 - guest version is 4.1.12
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.1.18 Guest Additions for Linux.........
VirtualBox Guest Additions installer
Removing installed version 4.1.12 of VirtualBox Guest Additions...
Removing existing VirtualBox DKMS kernel modules[ OK ]
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Building the VirtualBox Guest Additions kernel modules
The make utility was not found. If the following module compilation fails then
this could be the reason and you should try installing it.
The gcc utility was not found. If the following module compilation fails then
this could be the reason and you should try installing it.
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.
The missing package can be probably installed with
yum install kernel-devel-2.6.32-279.el6.x86_64
Building the main Guest Additions module[FAILED]
(Look at /var/log/vboxadd-install.log to find out what went wrong)
Doing non-kernel setup of the Guest Additions[ OK ]
Installing the Window System drivers[FAILED]
(Could not find the X.Org or XFree86 Window System.)
[default] Cleaning up downloaded VirtualBox Guest Additions ISO...
[default] Restarting VM to apply changes...
[default] Attempting graceful shutdown of VM...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Mounting shared folders...
[default] -- v-root: /vagrant
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-root /vagrant
I'd expect vbguest to at the very least check for and acknowledge missing deps, but preferably figure out how to install them when feasible.
When I boot up a new node with older additions, vagrant-vbguest will install the new additions. However, further on in the boot, vagrant will crash with this error:
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-root /vagrant
The Vagrant trouble shooting guide claims this happens when
This is usually a result of the guestโs package manager upgrading the kernel without rebuilding the VirtualBox Guest Additions.
Is there anyway to properly rebuild the additions to fix this issue?
My setup
Full output of vagrant up
[basebox] $ vagrant reload
[default] Attempting graceful shutdown of VM...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Installing Virtualbox Guest Additions 4.2.2 - guest's version is 4.1.22
[default] redhat is currently not supported, will try generic Linux method...
[default] Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
[default] Copy installer file setup_linux.sh into the box /tmp/install_vbguest.sh
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.2.2 Guest Additions for Linux..........
VirtualBox Guest Additions installer
Removing installed version 4.1.22 of VirtualBox Guest Additions...
Removing existing VirtualBox DKMS kernel modules[ OK ]
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Building the VirtualBox Guest Additions kernel modules
Building the main Guest Additions module[ OK ]
Building the shared folder support module[ OK ]
Not building the VirtualBox advanced graphics driver as this Linux version is
too old to use it.
Doing non-kernel setup of the Guest Additions[ OK ]
You should restart your guest to make sure the new modules are actually used
Installing the Window System drivers[FAILED]
(Could not find the X.Org or XFree86 Window System.)
[default] Mounting shared folders...
[default] -- v-root: /vagrant
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-root /vagrant
At the moment, vagrant-vbguest needs the virtualbox gem for it's autodetection run to search the "media manager" for a guest additions iso file.
We should s exec VBoxManage commands like vagrant does. to get rid of an dependency.
in v0.6.0 the installation process does not print out what it's dooing any more.
For those who aren't familiar with VBox lingo, would it be possible to add more of an explanation to the README? It would also be helpful to understand how this compares to tools that would appear to have similar purposes, such as veewee. I'm unsure what the use-case is for your tool (although I'm sure this is just my ignorance!)
Cheers,
Probably the last Version to support vagrant 1.0
Hi,
I'm wondering if you could add advice on how to install the plugin your readme if you're running the dev version of vagrant.
Thanks.
The file C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso
is not found, thus the iso need to be downloaded on each update.
Hi all,
i'm using the Official Ubuntu Cloud Server Vagrant image (found here : http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-vagrant-amd64-disk1.box) but this image contain an old version of the VBGuestAdditions from the ubuntu repo..
I awant to keep the lastest version from my dev box so i started by removing unnecessary packages and writing my own installer ..overwriting the execute_installer method
class CloudUbuntuVagrant < VagrantVbguest::Installers::Ubuntu
def execute_installer(opts=nil, &block)
installer = File.join(mount_point, 'VBoxLinuxAdditions.run')
yield_installation_waring(installer)
vm.channel.sudo("apt-get -y -q purge virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11", opts, &block)
vm.channel.sudo("#{installer} --nox11", opts, &block)
end
end
After that vagrant-vbguest run correctly the update but hangs and don't reboot the vm even if i specified _config.vbguest.auto_reboot = true_ in my Vagrantfile
Installing the Window System drivers ...fail!
(Could not find the X.Org or XFree86 Window System.)
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
/mnt/VBoxLinuxAdditions.run --nox11
How can i force the vm to reboot ?
I have the newest version of vagrant (1.1.4) and when I used the vagrant plugin install vagrant-vbguest
command, it, installs version 0.6.4, and throws an error that it can't be loaded:
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Installed the plugin 'vagrant-vbguest (0.6.4)'!
$ vagrant vbguest
Failed to load the "vagrant-vbguest" plugin. View logs for more details.
Usage: vagrant [-v] [-h] command [<args>]
I've also tried to install with version 0.7.0 but to no avail:
$ vagrant plugin install vagrant-vbguest --plugin-version 0.7.0
Installing the 'vagrant-vbguest --version '0.7.0'' plugin. This can take a few minutes...
The plugin 'vagrant-vbguest' could not be found in local or remote
repositories. Please check the name of the plugin and try again.
I'm having trouble getting the upgrade of guest additions to complete.
Vagrant.configure("2") do |config|
config.omnibus.chef_version = :latest
config.vm.define :dev do |dev|
dev.vm.box = "official-ubuntu-12.10"
dev.vm.box_url = "http://box.url"
dev.vm.hostname = $dev_vmname
dev.vm.network :private_network, ip: $ip
dev.vm.synced_folder "../proj", "/var/www/" + $dev_vmname, :nfs => true
dev.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--cpuexecutioncap", "50"]
# these are defaults, set them anyway to try to fix issue
dev.vbguest.no_remote = false
dev.vbguest.no_install = false
...
end #end virtualbox provider
end
end
GuestAdditions versions on your host (4.2.10) and guest (4.1.18) do not match.
stdin: is not a tty
Reading package lists...
Building dependency tree...
Reading state information...
dkms is already the newest version.
dkms set to manually installed.
linux-headers-3.5.0-27-generic is already the newest version.
linux-headers-3.5.0-27-generic set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
stdin: is not a tty
mount: warning: /mnt seems to be mounted read-only.
Installing Virtualbox Guest Additions 4.2.10 - guest version is 4.1.18
stdin: is not a tty
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.2.10 Guest Additions for Linux..........
VirtualBox Guest Additions installer
You appear to have a version of the VBoxGuestAdditions software
on your system which was installed from a different source or using a
different type of installer. If you installed it from a package from your
Linux distribution or if it is a default part of the system then we strongly
recommend that you cancel this installation and remove it properly before
installing this version. If this is simply an older or a damaged
installation you may safely proceed.
Do you wish to continue anyway? [yes or no]
Cancelling installation.
An error occurred during installation of VirtualBox Guest Additions 4.2.10. Some functionality may not work as intended.
stdin: is not a tty
The installation cancel happens automatically; the interactive script does not offer an opportunity to respond.
In short:
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.
The missing package can be probably installed with
yum install kernel-devel-2.6.32-279.19.1.el6.x86_64
Log trace:
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
[default] Importing base box 'CentOS-6.3_x86_64-small'...
[default] Matching MAC address for NAT networking...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 5555 => 5555 (adapter 1)
[default] -- 5556 => 5556 (adapter 1)
[default] -- 4567 => 4567 (adapter 1)
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
GuestAdditions versions on your host (4.2.10) and guest (4.2.6) do not match.
Loaded plugins: fastestmirror, presto
Determining fastest mirrors
* base: ftp.sunet.se
* extras: ftp.funet.fi
* updates: ftp.sunet.se
Setting up Install Process
No package kernel-devel-2.6.32-279.19.1.el6.x86_64 available.
Resolving Dependencies
--> Running transaction check
---> Package gcc.x86_64 0:4.4.7-3.el6 will be installed
--> Processing Dependency: libgomp = 4.4.7-3.el6 for package: gcc-4.4.7-3.el6.x86_64
--> Processing Dependency: cpp = 4.4.7-3.el6 for package: gcc-4.4.7-3.el6.x86_64
--> Processing Dependency: libgcc >= 4.4.7-3.el6 for package: gcc-4.4.7-3.el6.x86_64
--> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.4.7-3.el6.x86_64
--> Processing Dependency: cloog-ppl >= 0.15 for package: gcc-4.4.7-3.el6.x86_64
--> Processing Dependency: libgomp.so.1()(64bit) for package: gcc-4.4.7-3.el6.x86_64
---> Package make.x86_64 1:3.81-20.el6 will be installed
---> Package perl.x86_64 4:5.10.1-130.el6_4 will be installed
--> Processing Dependency: perl-libs = 4:5.10.1-130.el6_4 for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Processing Dependency: perl-libs for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Processing Dependency: perl(version) for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Processing Dependency: perl(Pod::Simple) for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Processing Dependency: perl(Module::Pluggable) for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Processing Dependency: libperl.so()(64bit) for package: 4:perl-5.10.1-130.el6_4.x86_64
--> Running transaction check
---> Package cloog-ppl.x86_64 0:0.15.7-1.2.el6 will be installed
--> Processing Dependency: libppl_c.so.2()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64
--> Processing Dependency: libppl.so.7()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64
---> Package cpp.x86_64 0:4.4.7-3.el6 will be installed
--> Processing Dependency: libmpfr.so.1()(64bit) for package: cpp-4.4.7-3.el6.x86_64
---> Package glibc-devel.x86_64 0:2.12-1.107.el6 will be installed
--> Processing Dependency: glibc-headers = 2.12-1.107.el6 for package: glibc-devel-2.12-1.107.el6.x86_64
--> Processing Dependency: glibc = 2.12-1.107.el6 for package: glibc-devel-2.12-1.107.el6.x86_64
--> Processing Dependency: glibc-headers for package: glibc-devel-2.12-1.107.el6.x86_64
---> Package libgcc.x86_64 0:4.4.6-4.el6 will be updated
---> Package libgcc.x86_64 0:4.4.7-3.el6 will be an update
---> Package libgomp.x86_64 0:4.4.7-3.el6 will be installed
---> Package perl-Module-Pluggable.x86_64 1:3.90-130.el6_4 will be installed
---> Package perl-Pod-Simple.x86_64 1:3.13-130.el6_4 will be installed
--> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.13-130.el6_4.x86_64
---> Package perl-libs.x86_64 4:5.10.1-130.el6_4 will be installed
---> Package perl-version.x86_64 3:0.77-130.el6_4 will be installed
--> Running transaction check
---> Package glibc.x86_64 0:2.12-1.80.el6_3.6 will be updated
--> Processing Dependency: glibc = 2.12-1.80.el6_3.6 for package: glibc-common-2.12-1.80.el6_3.6.x86_64
---> Package glibc.x86_64 0:2.12-1.107.el6 will be an update
---> Package glibc-headers.x86_64 0:2.12-1.107.el6 will be installed
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.107.el6.x86_64
--> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.107.el6.x86_64
---> Package mpfr.x86_64 0:2.4.1-6.el6 will be installed
---> Package perl-Pod-Escapes.x86_64 1:1.04-130.el6_4 will be installed
---> Package ppl.x86_64 0:0.10.2-11.el6 will be installed
--> Running transaction check
---> Package glibc-common.x86_64 0:2.12-1.80.el6_3.6 will be updated
---> Package glibc-common.x86_64 0:2.12-1.107.el6 will be an update
---> Package kernel-headers.x86_64 0:2.6.32-358.2.1.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
gcc x86_64 4.4.7-3.el6 base 10 M
make x86_64 1:3.81-20.el6 base 389 k
perl x86_64 4:5.10.1-130.el6_4 updates 10 M
Installing for dependencies:
cloog-ppl x86_64 0.15.7-1.2.el6 base 93 k
cpp x86_64 4.4.7-3.el6 base 3.7 M
glibc-devel x86_64 2.12-1.107.el6 base 974 k
glibc-headers x86_64 2.12-1.107.el6 base 604 k
kernel-headers x86_64 2.6.32-358.2.1.el6 updates 2.3 M
libgomp x86_64 4.4.7-3.el6 base 118 k
mpfr x86_64 2.4.1-6.el6 base 157 k
perl-Module-Pluggable x86_64 1:3.90-130.el6_4 updates 38 k
perl-Pod-Escapes x86_64 1:1.04-130.el6_4 updates 31 k
perl-Pod-Simple x86_64 1:3.13-130.el6_4 updates 210 k
perl-libs x86_64 4:5.10.1-130.el6_4 updates 576 k
perl-version x86_64 3:0.77-130.el6_4 updates 50 k
ppl x86_64 0.10.2-11.el6 base 1.3 M
Updating for dependencies:
glibc x86_64 2.12-1.107.el6 base 3.8 M
glibc-common x86_64 2.12-1.107.el6 base 14 M
libgcc x86_64 4.4.7-3.el6 base 100 k
Transaction Summary
================================================================================
Install 16 Package(s)
Upgrade 3 Package(s)
Total download size: 49 M
Downloading Packages:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 49 M
--------------------------------------------------------------------------------
Total 621 kB/s | 49 MB 01:20
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : libgcc-4.4.7-3.el6.x86_64 1/22
Updating : glibc-common-2.12-1.107.el6.x86_64 2/22
Updating : glibc-2.12-1.107.el6.x86_64 3/22
Installing : mpfr-2.4.1-6.el6.x86_64 4/22
Installing : cpp-4.4.7-3.el6.x86_64 5/22
Installing : 1:perl-Pod-Escapes-1.04-130.el6_4.x86_64 6/22
Installing : 4:perl-libs-5.10.1-130.el6_4.x86_64 7/22
Installing : 1:perl-Module-Pluggable-3.90-130.el6_4.x86_64 8/22
Installing : 1:perl-Pod-Simple-3.13-130.el6_4.x86_64 9/22
Installing : 3:perl-version-0.77-130.el6_4.x86_64 10/22
Installing : 4:perl-5.10.1-130.el6_4.x86_64 11/22
Installing : ppl-0.10.2-11.el6.x86_64 12/22
Installing : cloog-ppl-0.15.7-1.2.el6.x86_64 13/22
Installing : libgomp-4.4.7-3.el6.x86_64 14/22
Installing : kernel-headers-2.6.32-358.2.1.el6.x86_64 15/22
Installing : glibc-headers-2.12-1.107.el6.x86_64 16/22
Installing : glibc-devel-2.12-1.107.el6.x86_64 17/22
Installing : gcc-4.4.7-3.el6.x86_64 18/22
Installing : 1:make-3.81-20.el6.x86_64 19/22
Cleanup : glibc-common-2.12-1.80.el6_3.6.x86_64 20/22
Cleanup : glibc-2.12-1.80.el6_3.6.x86_64 21/22
Cleanup : libgcc-4.4.6-4.el6.x86_64 22/22
Verifying : cpp-4.4.7-3.el6.x86_64 1/22
Verifying : kernel-headers-2.6.32-358.2.1.el6.x86_64 2/22
Verifying : mpfr-2.4.1-6.el6.x86_64 3/22
Verifying : 1:make-3.81-20.el6.x86_64 4/22
Verifying : cloog-ppl-0.15.7-1.2.el6.x86_64 5/22
Verifying : glibc-2.12-1.107.el6.x86_64 6/22
Verifying : glibc-devel-2.12-1.107.el6.x86_64 7/22
Verifying : 1:perl-Pod-Simple-3.13-130.el6_4.x86_64 8/22
Verifying : libgcc-4.4.7-3.el6.x86_64 9/22
Verifying : 4:perl-libs-5.10.1-130.el6_4.x86_64 10/22
Verifying : ppl-0.10.2-11.el6.x86_64 11/22
Verifying : glibc-headers-2.12-1.107.el6.x86_64 12/22
Verifying : 1:perl-Module-Pluggable-3.90-130.el6_4.x86_64 13/22
Verifying : gcc-4.4.7-3.el6.x86_64 14/22
Verifying : 1:perl-Pod-Escapes-1.04-130.el6_4.x86_64 15/22
Verifying : libgomp-4.4.7-3.el6.x86_64 16/22
Verifying : glibc-common-2.12-1.107.el6.x86_64 17/22
Verifying : 3:perl-version-0.77-130.el6_4.x86_64 18/22
Verifying : 4:perl-5.10.1-130.el6_4.x86_64 19/22
Verifying : glibc-2.12-1.80.el6_3.6.x86_64 20/22
Verifying : glibc-common-2.12-1.80.el6_3.6.x86_64 21/22
Verifying : libgcc-4.4.6-4.el6.x86_64 22/22
Installed:
gcc.x86_64 0:4.4.7-3.el6 make.x86_64 1:3.81-20.el6
perl.x86_64 4:5.10.1-130.el6_4
Dependency Installed:
cloog-ppl.x86_64 0:0.15.7-1.2.el6
cpp.x86_64 0:4.4.7-3.el6
glibc-devel.x86_64 0:2.12-1.107.el6
glibc-headers.x86_64 0:2.12-1.107.el6
kernel-headers.x86_64 0:2.6.32-358.2.1.el6
libgomp.x86_64 0:4.4.7-3.el6
mpfr.x86_64 0:2.4.1-6.el6
perl-Module-Pluggable.x86_64 1:3.90-130.el6_4
perl-Pod-Escapes.x86_64 1:1.04-130.el6_4
perl-Pod-Simple.x86_64 1:3.13-130.el6_4
perl-libs.x86_64 4:5.10.1-130.el6_4
perl-version.x86_64 3:0.77-130.el6_4
ppl.x86_64 0:0.10.2-11.el6
Dependency Updated:
glibc.x86_64 0:2.12-1.107.el6 glibc-common.x86_64 0:2.12-1.107.el6
libgcc.x86_64 0:4.4.7-3.el6
Complete!
Copy iso file C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
Installing Virtualbox Guest Additions 4.2.10 - guest version is 4.2.6
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.2.10 Guest Additions for Linux..........
VirtualBox Guest Additions installer
Removing installed version 4.2.6 of VirtualBox Guest Additions...
Removing existing VirtualBox DKMS kernel modules[ OK ]
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Building the VirtualBox Guest Additions kernel modules
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.
The missing package can be probably installed with
yum install kernel-devel-2.6.32-279.19.1.el6.x86_64
Building the main Guest Additions module[FAILED]
(Look at /var/log/vboxadd-install.log to find out what went wrong)
Doing non-kernel setup of the Guest Additions[ OK ]
Installing the Window System drivers[FAILED]
(Could not find the X.Org or XFree86 Window System.)
Restarting VM to apply changes...
[default] Attempting graceful shutdown of VM...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 5555 => 5555 (adapter 1)
[default] -- 5556 => 5556 (adapter 1)
[default] -- 4567 => 4567 (adapter 1)
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
GuestAdditions versions on your host (4.2.10) and guest (4.2.6) do not match.
Loaded plugins: fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: ftp.sunet.se
* extras: ftp.funet.fi
* updates: ftp.sunet.se
Setting up Install Process
No package kernel-devel-2.6.32-279.19.1.el6.x86_64 available.
Package gcc-4.4.7-3.el6.x86_64 already installed and latest version
Package 1:make-3.81-20.el6.x86_64 already installed and latest version
Package 4:perl-5.10.1-130.el6_4.x86_64 already installed and latest version
Nothing to do
Copy iso file C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
Installing Virtualbox Guest Additions 4.2.10 - guest version is 4.2.6
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.2.10 Guest Additions for Linux..........
VirtualBox Guest Additions installer
Removing installed version 4.2.10 of VirtualBox Guest Additions...
Removing existing VirtualBox DKMS kernel modules[ OK ]
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Building the VirtualBox Guest Additions kernel modules
The headers for the current running kernel were not found. If the following
module compilation fails then this could be the reason.
The missing package can be probably installed with
yum install kernel-devel-2.6.32-279.19.1.el6.x86_64
Building the main Guest Additions module[FAILED]
(Look at /var/log/vboxadd-install.log to find out what went wrong)
Doing non-kernel setup of the Guest Additions[ OK ]
Installing the Window System drivers[FAILED]
(Could not find the X.Org or XFree86 Window System.)
[default] Configuring and enabling network interfaces...
[default] Mounting shared folders...
[default] -- /vagrant
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` vagrant-root /vagrant
Box: https://1412126a-vagrant.s3.amazonaws.com/CentOS-6.3-x86_64-reallyminimal.box
Since upgrading to VirtualBox 4.2.12 (4.2.10 worked fine) I get an error when I bring up my VMs. I've asked about it on the VirtualBox forums but they don't seem to believe it's an issue with VirtualBox.
https://forums.virtualbox.org/viewtopic.php?f=3&t=55166&p=254210#p254210
Here's the error:
Installing Virtualbox Guest Additions 4.2.12 - guest version is 4.2.10
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.2.12 Guest Additions for Linux............
VirtualBox Guest Additions installer
Removing installed version 4.2.10 of VirtualBox Guest Additions...
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.
You should restart your guest to make sure the new modules are actually used
Installing the Window System drivers ...fail!
(Could not find the X.Org or XFree86 Window System.)
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
/mnt/VBoxLinuxAdditions.run --nox11
I try to use vagrant-vbguest because it will hopefully solve some of my guest additions out of date issues :)
I use vagrant 1.0.3 on a windows host (installed from .msi) so plugin autoloading should still work. I installed vagrant-vbguest from my git-bash with "vagrant gem install", "vagrant gem list" shows that the plugin (0.3.3) is installed. And i have the plugin files in ~/.vagrant.d\gems\gems\vagrant-vbguest-0.3.3
When i try "vagrant help" on my git-bash, no vbguest is there. I'm not certain if this is a vagrant-vbguest issue or a general vagrant plugin issue. I'll post here first ;)
Regards from Grimma (Germany)
The signature of Vagrant::Config::Base.validation
has changed in vagrant 0.9
Hi,
when does the plugin check the installed version and updates it? During vagrant up or vagrant start? How do I know that it did run?
I'd mention in the README that vagrant up does run it and that the user can see st. like this in the output:
...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Installing Virtualbox Guest Additions 4.1.10 - guest's version is 4.1.0
Thx for this great tool!
Under Ubuntu VirtualBox seems to be caching the ISOs under
$HOME/.VirtualBox/VBoxGuestAdditions_%version%.iso
not under /usr/share where vbguest is currently looking, this means vbguest repeatedly downloads the ISO even when it's available.
There's a trivial work around available by putting a snippet like this in $HOME/.vagrant.d/Vagrantfile:
Vagrant::Config.run do |config|
config.vbguest.iso_path = '/home/%user%/.VirtualBox/VBoxGuestAdditions_%version%.iso'
end
but it'd be nice if vbguest scanned the right location.
I'm getting the following error running against vagrant 1.2.0:
vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installers/linux.rb:16:in distro': undefined method
distro_dispatch' for #Vagrant::Guest:0x00000100a04410 (NoMethodError)
I'm sure there is a reason that auto-update is true by default.
My personal preference though would be that auto-update is disabled by default.
Why? Because now that I have the vagrant-vbguest gem installed it is automatically turned on for all my Vagrantfiles, which I don't want for various reasons, e.g. increased startup time for when installing latest guest additions, maybe I don't need / want the latest guest additions, etc.
Still, I would love to be able to update the guest additions with a single entry in the Vagrantfile (running as middleware), or via a simple vagrant vbguest
command.
I want it as simple as it is with vagrant-vbguest
now, but I want the choice when it happens - without having to modify all my Vagrantfiles.
Does that make sense? :-)
In my Vagrantfile
, I currently have the following lines (along with the other Vagrant configuration options):
config.vbguest.iso_path = "http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso"
config.vbguest.auto_reboot = true
When a box is started, I get the following error message:
Warnings:
* Unknown configuration section 'vbguest'. If this section was part of
a Vagrant 1.0.x plugin, note that 1.0.x plugins are incompatible with 1.1+.
I also notice:
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Forcing shutdown of VM...
[default] Destroying VM and associated drives...
Followed by:
/home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installers/linux.rb:27:in `match?': undefined local variable or method `communicate' for VagrantVbguest::Installers::Linux:Class (NameError)
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:42:in `block (2 levels) in detect'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:42:in `each'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:42:in `detect'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:42:in `block in detect'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:41:in `each'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:41:in `detect'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:112:in `guest_installer'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/installer.rb:86:in `guest_version'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/machine.rb:67:in `state'
from /home/michael/.vagrant.d/gems/gems/vagrant-vbguest-0.7.1/lib/vagrant-vbguest/middleware.rb:23:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/boot.rb:19:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/customize.rb:31:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/sane_defaults.rb:45:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/set_hostname.rb:16:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/forward_ports.rb:31:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/network.rb:105:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/clear_network_interfaces.rb:26:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/share_folders.rb:20:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/clear_shared_folders.rb:12:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/prepare_nfs_settings.rb:11:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/nfs.rb:28:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/prune_nfs_exports.rb:15:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb:106:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb:30:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/env_set.rb:19:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/provision.rb:45:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/clear_forwarded_ports.rb:13:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/set_name.rb:35:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/clean_machine_folder.rb:17:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/check_accessible.rb:18:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `block in run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/call.rb:51:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `block in run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/call.rb:51:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `block in run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/call.rb:51:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/call.rb:57:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/warden.rb:34:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/builder.rb:109:in `call'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `block in run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/util/busy.rb:19:in `busy'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/action/runner.rb:61:in `run'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/machine.rb:129:in `action'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/commands/up/command.rb:37:in `block in execute'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/plugin/v2/command.rb:182:in `block in with_target_vms'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/plugin/v2/command.rb:180:in `each'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/plugin/v2/command.rb:180:in `with_target_vms'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/plugins/commands/up/command.rb:32:in `execute'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/cli.rb:46:in `execute'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/lib/vagrant/environment.rb:408:in `cli'
from /opt/vagrant/embedded/gems/gems/vagrant-1.1.5/bin/vagrant:75:in `<top (required)>'
from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in `load'
from /opt/vagrant/bin/../embedded/gems/bin/vagrant:23:in `<main>'
This is with vagrant-vbguest 0.7.1, and Vagrant 1.1.5. Any suggestions?
I really like this plugin, but it does not seem to work under Vagrant 0.9.3
Here is the stacktrace:
[8407][mg@vagranttest]$ rbenv versions
* 1.8.7-p352 (set by /home/mg/.rbenv-version)
1.9.2-p290
[8408][mg@vagranttest]$ ls
[8409][mg@vagranttest]$ vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
/home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': /home/mg/.vagrant.d/gems/gems/vagrant-vbguest-0.3.0/lib/vagrant-vbguest/detector.rb:23: undefined (?...) sequence: /^.+:\s+(?<path>.*VBoxGuestAdditions.iso)$/ (SyntaxError)
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /home/mg/.vagrant.d/gems/gems/vagrant-vbguest-0.3.0/lib/vagrant-vbguest.rb:4
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:58:in `gem_original_require'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:58:in `require'
from /home/mg/.vagrant.d/gems/gems/vagrant-vbguest-0.3.0/lib/vagrant_init.rb:3
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:68:in `load'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:68:in `load!'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:42:in `each'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:42:in `load!'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:37:in `each'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/plugin.rb:37:in `load!'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/environment.rb:514:in `load_plugins'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/lib/vagrant/environment.rb:97:in `initialize'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/bin/vagrant:36:in `new'
from /home/mg/.rbenv/versions/1.8.7-p352/lib/ruby/gems/1.8/gems/vagrant-1.0.2/bin/vagrant:36
from /home/mg/.rbenv/versions/1.8.7-p352/bin/vagrant:19:in `load'
from /home/mg/.rbenv/versions/1.8.7-p352/bin/vagrant:19
I suspect there's some constants that Vagrant is now looking for to be defined, maybe in an i18n-compliant way, that vbguest hasn't defined?
I also get
translation missing: en.vagrant.plugins.vbguest.start_copy_iso
translation missing: en.vagrant.plugins.vbguest.installing
later on in the process.
I think the title speaks for itself,
Thank you so much for this little vagrant addon, it is very very handy.
The project is awesome and you are awesome!
That is all,
Josh
p.s. awesome!
So I get this:
/tmp/install_vbguest.sh: 2: function not found
Logging in, running chmod +x
and sudo ./install_vbguest.sh
works fine.
Passing a custom installer in a Vagrantfile like this does not work. The message "Running my own installer!" won't be displayed even when calling vagrant vbguest --do install
manually
class My_Installer < VagrantVbguest::Installers::Linux
def install(opts=nil, &block)
vm.ui.success "Running my own installer!"
super
end
end
Vagrant::Config.run do |config|
config.vm.define :foo do |cfg|
# ... all the other stuff ... #
cfg.vbguest.installer = My_Installer
end
end
I'm interested in working on Vagrant 1.1 support, if it's not already being worked on. (The 1.1 branch hasn't been updated in many months.) How would you like to go about support for 1.1? Do you want to just convert everything to the 1.1 plugin API, or keep the gem compatible with 1.0.x while also working with 1.1? If the latter, do you want to create new classes in a v2 namespace within the gem and conditionally load files based on Vagrant version, or try to make the existing files work for both somehow?
What would it take to get this working on Windows? I'm guessing that the fact that the README says it doesn't is the reason :)
The one criticism I've heard of vagrant-vbguest
is that it can add about 45 second to every fresh boot, depending on connection. Perhaps by hooking in at the right time, vagrant-cachier
could be used to speed this up.
I suspect this might not be possible, given when vagrant-vbguest
patches into the build process before folder sharing, but thought I'd toss the idea out there anyhow :)
https://github.com/fgrehm/vagrant-cachier/blob/master/lib/vagrant-cachier/plugin.rb#L31-L43
cc: @fgrehm
I get the following error building a virtual machine for CentOS 6.3.
Installer classes must provide their own `match?` method.
Tracing the issue, it appears that this code is the problem:
raise Error, :_key => :do_not_inherit_match_method if self.class != Linux
(from lib\vagrant-vbguest\installers\linux.rb function self.match?)
Since the function is defined as "self.match?" the class of self is "Class" instead of "Linux".
Deleting the "raise" statement solves the problem. However I understand that's not a great solution: you're doing that to force derived classes to implement their own match functions.
If you want to recreate the problem, I have a feature branch that I'll leave untouched in my project that you can use to do so:
https://github.com/webcoyote/linux-vm/tree/vagrant-vbguest-broken
Otherwise your project is awesome, and works well for me on Ubuntu (Lucid) -- and Centos (6.3) when I delete the "raise" statement.
Thanks,
Pat
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.