User Tools

Site Tools


Action unknown: copypageplugin__copy
other:vb:update

Updating VirtualBox

Important reminder:
  • VB : VirtualBox
  • VM : a Virtual Machine running inside VB
  • VB host: the machine and operating system where the VB program is running.
  • VB guest: the operating system running inside VB (aka VM).

When should you update the VB?

If you are not used to installing and debugging VB, you may want to play it safe and not update VB. Many things are fixed in a new version, but things can also break (e.g. network access, graphics, …) and you may have to use the VB forum to get everything working again…

It is safe to update the Linux running inside VB

VB will periodically check if a new version is available. You can also check that manually by doing: File –> Check for updates…

Updating the VirtualBox program on the host

  • Click on the link that VB will display in a pop-up window when there is a new version, or download the latest version of VB from the VirtualBox web site
    • If the host where you are updating VB has no network connection, you probably also want to download the matching VB Extension Pack
    • You can also download an updated version of the User Manual from the same page
  • Make sure that:
    • Your VB guest is in the Powered Off state (i.e. you have exited the guest with a proper Linux shut down last time you used the guest)
    • VB is not running (e.g. you don't have an open Oracle VM VirtualBox Manager window)
  • Execute the VirtualBox-vvvv-NNNN-Win.exe installer as an Administrator (e.g. right-click on the installer and select run as Administrator).
    • Accept all the default settings
    • Make sure you don't have another program using the network when the installer warns you about having to temporarily stop the network
    • Choose to start VB at the end of the installation, and accept to download and install the updated Oracle VM VirtualBox Extension Pack when VB tells you that a new pack is available
  • Reboot the computer if VB asks for it (otherwise, you may get weird error messages when trying to restart the guest)
  • Start the VM, optionally update the linux guest and no not forget to update the guest additions

Note about the manual update of the extension pack

It is also possible to manually install the updated extension pack, but there is a risk of losing the settings

  • Double click on the Oracle_VM_VirtualBox_Extension_Pack-NN1234.vbox-extpack extension pack and follow the instructions
  • WARNING! VB seems to go back to its default settings during the update (since version 4.3.22?), resulting in an apparent disappearance of the VB after the update!
    • 1) Restore the preferences by hand, as specified in installing_vb_on_a_windows_host
    • or 2) Go to the directory where the VM is installed (e.g. E:\VirtualBox\VirtualBox VMs\Fedora Core 20 CLIM_ESTIMR) and double click on the XXXXX.vbox setting file located in this directory

Cleaning up things

After updating VB, you can remove the downloaded extension packs from C:\Users\your_login\.VirtualBox (i.e. all the Oracle_VM_VirtualBox_Extension_Pack-NNNN.vbox-extpack files)

Updating the Linux guest system

Updating Linux

  • Become root in a window: sudo su -
  • The command to use depends on which network the computer running VB is connected. In both cases, type y at the Is this ok prompt
    • On the LSCE network: yum update
    • Outside LSCE: yum --disablerepo lsce update

Note: You will know you have updated the Linux kernel, if yum update displays something like the following:

Installing:
 kernel                             x86_64 3.19.8-100.fc20             updates                 34 M
 kernel-devel                       x86_64 3.19.8-100.fc20             updates                9.3 M
 kernel-modules-extra               x86_64 3.19.8-100.fc20             updates                2.1 M

Cleaning up things

Check the space available on the disks with df -h

It may be a good idea to clean the yum cache from time to time

# Execute the following commands as root

du -sh /var/cache/yum
yum clean all
du -sh /var/cache/yum
yum update
du -sh /var/cache/yum

Recent machines (Fedora Core 22 and later) may use dnf instead of yum, and PackageKit. Use the following commands for cleaning the cache:

  • dnf (/var/cache/dnf): dnf clean all
  • PackageKit (/var/cache/PackageKit): pkcon refresh force

It's also a good thing to clean the journal (note: limiting the journal size probably has to be done only once)

# Execute the following commands as root

du -sh /var/log/journal
journalctl --disk-usage

# Edit the /etc/systemd/journald.conf file and add the following option
# SystemMaxUse=50M
# Then use the following command to restart the service and remove old journal entries

systemctl restart systemd-journald.service

Note: abrt (Automated Bug Reporting Tool) may also leave some big directories in several places on the system (/var/cache/abrt, /var/spool/abrt-upload, /var/tmp/abrt, …). The content of /var/tmp/abrt can be cleaned by deleting the reports in gnome-abrt

Updating the Linux guest additions

The guest additions are extensions of the guest system that will allow a better integration of the guest and the host:

  • use the graphics card of the guest instead of the much slower software rendering
  • better handling of the mouse, the time inside the guest
  • copy/paste between the host and the guest systems
  • improved resizing of the guest window
  • accessing some of the host disks from the guest (ie directory sharing)
  • many other subtle things…

You should update the guest additions:

  • after updating the Linux guest kernel (no need to update the guest additions after non kernel updates)
  • after updating the main VirtualBox program running on the host

Guest additions updating steps:

  • If you have just updated the Linux kernel (when doing a Linux update), make sure you reboot the Linux guest before you reinstall the guest additions, so that the new kernel is running when you install the guest additions!
  • In the VB window (the one where the guest is running), select Devices→Insert Guest Additions CD Image…. A virtual CD icon should appear on the desktop of the Linux guest
    • Click on Force unmount in the popup Window, if a previous virtual CD is still present
    • Right-click on the CD icon and choose Mount Volume
    • Click on Cancel if you get a popup window displaying This medium contains software intended to be automatically started. Would you like to run it?
  • Become root in a window: sudo su -
  • Check where the CD image has been installed: df -h
    • The CD should be available in /run/media/your_login/VBOXADDITIONS_vvvv_NNNN
    • If the CD icon has appeared on the Linux desktop, but you don't see any subdirectory in /run/media, right-click on the CD icon and select Mount volume
  • Go to the additions' directory: cd /run/media/your_login/VBOXADDITIONS_vvvv_NNNN
  • Run the installation script: ./VBoxLinuxAdditions.run
  • Reboot: shutdown -r now
  • Log in
  • Virtually eject the CD image by selecting in the VB window, Device→Optical Drives→Remove disk from virtual drive
    • Note: click in Force unmount in the popup Window, if necessary
    • The virtual CD icon should disappear from the desktop of the Linux guest
  • After rebooting, if you get a smaller VB window and you get a notification telling you that the graphics are running in software rendering mode (and that was not already the case before updating), and when you open a terminal and move the window around, the window is moving more slowly than before, see the note below to check if the guest additions are running or not

Note: you can check the status or force the re-installation of the guest additions with

  • Status (running or not): /etc/init.d/vboxadd status
  • Starting manually the guest additions service: /etc/init.d/vboxadd start
    Use the setup line below to reinstall the guest additions if you get an error message when trying the start command
  • Install: /etc/init.d/vboxadd setup

The Linux guest and the host graphics card

If you want some details about how the graphics are handled by the current installation of you VB (i.e. is your VM using the graphics card of the Windows host or is it running is it use the sloooow software mode?), you can use the following commands

  • modinfo vboxvideo will give you some information about the video driver provided by VB. Theoretically, vboxvideo should also appear when you type lsmod
  • glxgears: if things work correctly, you will get a window with smoothly rotating gears (you can make the window fullscreen and check that it is still working) and the terminal will display some frames per second statistics
    • You may get some warning and error messages, but you should be good if the gears are rotating smoothly
  • You can run the glxinfo command and you should see a reference to your graphics card if the video is indeed using it
    glxinfo | \grep -i opengl
    OpenGL vendor string: Humper
    OpenGL renderer string: Chromium
    OpenGL version string: 2.1 Chromium 1.9
    NVIDIA card ⇒ OpenGL shading language version string: 4.40 NVIDIA via Cg compiler
    Intel HD Graphics xxxx card ⇒ OpenGL shading language version string: 4.00 - Build 10.18.10.3993
    OpenGL extensions:
  • You can get some additional information (including the screen resolution) with the xdpyinfo
    xdpyinfo | less

In case of weird graphics problems...

There seems to be some problems linked to some combination of:

  • Using VB
  • Using Fedora Core
  • Support of OpenGL and Mesa
  • Intel Graphics cards
  • The Cinnamon desktop

If Cinnamon reports crashes or errors at startup (eg Cinnamon just crashed. You are currently running in Fallback Mode): the errors seem to be related to the graphics acceleration, so try disabling it for the current virtual machine: Settings→Display→Video→(uncheck) Enable 3D Acceleration

https://www.virtualbox.org/ticket/12746#comment:11

https://www.virtualbox.org/ticket/12941

In case of weird complete crashes, also increase the Video Memory: eg use 32 Mb instead of the minimum limit





[ PMIP3 Wiki Home ] - [ Help! ] - [ Wiki syntax ]

other/vb/update.txt · Last modified: 2016/09/19 15:19 by jypeter