How to upgrade to the latest Sun VirtualBox (CLI method)

Make sure you have the Sun VirtualBox repository installed and enabled.

If not, you can download this file http://download.virtualbox.org/virtualbox/rpm/opensuse/11.2/virtualbox.repo and copy it in the directory /etc/zypp/repos.d on your system.

  1. refresh this repository (only needed if autorefresh is turned off for this repo)
    (sudo) zypper ref virtualbox
  2. upgrade to the latest Sun VirtualBox
    (sudo) zypper up -r virtualbox
  3. recompile the VirtualBox kernel module
    (sudo) service vboxdrv setup

Done! No need to reboot.

# rpm -qa | grep VirtualBox
before -> VirtualBox-3.1-3.1.2_56127_openSUSE111-1.x86_64
after  -> VirtualBox-3.1-3.1.4_57640_openSUSE111-1.x86_64

Nice, thanks. You can do it all from zypper though:

zypper ar http://download.virtualbox.org/virtualbox/rpm/opensuse/11.2/virtualbox.repo

then as usual:

zypper ref virtualbox
zypper up -r virtualbox

The RPM installation should automatically initiate an /etc/init.d/vboxdrv setup. At least it did for me.

You may also need this step first of all:

rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc

It’s a GPG signing key, so don’t be put off by the debian in the path.

It did for me too but failed to compile the module.

You may also need this step first of all:

rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc

It’s a GPG signing key, so don’t be put off by the debian in the path.

I had the key already installed and forgot about that. But if you look at the repo file, it’s there. I guess it should ask you if you want to import it and add it for you.

What you have here seemed to work when I was using 11.1 32 bit

11.1 64bit, 11.2 64bit :

  1. did rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc
    ** said there was an error but can’t find any error log
  2. did rpm install first with zypper which said unresolved dependencies, then tried YAST which also complained about unresolved dependencies
    no signing key, no kernel headers, no make, no gcc
    yet I check and all are there.

11.2 32bit

  1. did rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc
    ** no errors
  2. did rpm install
    ** no errors reported
  3. dmesg |grep VirtualBox returns nothing!
  4. Start menu shows Sun VirtualBox under Start->System
  5. Try to start VirtualBox works but can’t do guess install
  6. /etc/init.d/vboxdrv setup
    ** error occurred see /var/log/vbox-install.log
    no gcc compiler installed … uninstall it and re-install it
  7. /etc/init.d/vboxdrv setup
    ** error occurred see /var/log/vbox-install.log
    no make … uninstall make and re-install
  8. /etc/init.d/vboxdrv setup
    ** error occurred see /var/log/vbox-install.log
    ** Error unable to find kernel header for current kernel Specify KERN_DIR=<directory>
    Kernel sources are in /usr/src/linux-2.6.31.12-0.1-vanilla but can’t find any reference in /usr/var/vbox files for the KERN_DIR tag.
    So my responce is what the **** has changed between 11.1 32bit and 11.2 32bit. True I am not trying to upgrade vbox just get the thing installed.

I upgraded successfully on two 32bit and tree 64bit machines all running 11.2 while writing this post.

  1. did rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc
    ** said there was an error but can’t find any error log

If the key is already installed you get an error (I think).

  1. did rpm install first with zypper which said unresolved dependencies, then tried YAST which also complained about unresolved dependencies
    no signing key, no kernel headers, no make, no gcc

rpm install … what ?
You install by package name:
zypper in VirtualBox (-r virtualbox)
You upgrade by repository number or alias:
** zypper up -r virtualbox**

  1. dmesg |grep VirtualBox returns nothing!

This is not surprising. To check if the module was loaded at boot time, you would use:
dmesg | grep vboxdrv
To check if the package is installed :
rpm -qa | grep VirtualBox

  1. Start menu shows Sun VirtualBox under Start->System

It just means that it found the file VirtualBox.desktop in /usr/share/applications. So more likely that’s because the package is installed.

/etc/init.d/vboxdrv setup
** error occurred see /var/log/vbox-install.log
no gcc compiler installed … uninstall it and re-install it

I’v seen that before: gcc was a dead link pointing to gcc-4.3 but gcc-4.4 was installed. The problem get solved with:
**# cd /usr/bin

ln -sf gcc-4.4 gcc

**

  1. /etc/init.d/vboxdrv setup
    ** error occurred see /var/log/vbox-install.log
    ** Error unable to find kernel header for current kernel Specify KERN_DIR=<directory>
    Kernel sources are in /usr/src/linux-2.6.31.12-0.1-vanilla but can’t find any reference in /usr/var/vbox files for the KERN_DIR tag.

What’s missing here are kernel headers, not kernel sources.
zypper in linux-kernel-headers

So my responce is what the **** has changed between 11.1 32bit and 11.2 32bit.

Nothing as far as VirtualBox is concerned.

True I am not trying to upgrade vbox just get the thing installed.

Then you can follow this method and run
zypper in VirtualBox instead of zypper ref -v virtualbox

Thanks for the reply:
As I said, my 11.1 32bit installed clean with no mess just as the instructions by OP explained.
I have now got it installed on 11.2 32bit by doing the following:

  1. remove virtualbox entirely
  2. remove gcc make keysigning kernelsource kernelheaders
  3. re-install gcc make keysigning kernelsource kernelheaders
    3a) added kernel-syms cause even through YAST said syms were installed zypper said they weren’t
  4. re-install the VirtualBox rpm from sun
    repeated this on the 11.1 64bit and /etc/init.d/vboxdrv setup fails with “no gcc”
    repeated this on the 11.2 64bit and /etc/init.d/vboxdrv setup fails with “no make”

But since I have 11.1 and 11.2 32bit working this is quite sufficient

again thanks for replying