Visit Jeremy's Blog.
Go Back > Blogs > catkin
User Name


Rate this Entry

Upgrading VirtualBox PUEL 2.0.6 to 2.1.2 on ubuntu 8.04.1

Posted 01-26-2009 at 03:53 AM by catkin


Many people have posted on the 'net, describing VirtualBox PUEL upgrade as straightforward. My experience of several upgrades was very different with quite some breakage, repair and grief Here's the procedure I have evolved by experimentation to make it less painful, more routine. Several of the specifics (paths, virtual machine name WXP, Kaspersky, TweakUI, and my personal user name is c on ubuntu and C on WXP virtual) will be different on other systems but it should be easy to adapt.

The log is in two parts -- ubuntu and WXP virtual (sorry about the less superior formatting, lost in copy-and-paste).

First the ubuntu log:

Media: /home/c/Repository/Hardy/virtualbox-2.1_2.1.2-41885_Ubuntu_hardy_i386.deb

1.As user c, prepared the Repository:
cd /home/c/Repository/Hardy
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
2.(If doing this again look for the command line equivalent) Used Synaptic Package Manager's Reload button to propagate the new virtualbox-2.1 package
3.Ensured WXP not running
4.Ensured the "Sun xVM VirtualBox" configuration window closed.
5.As root ...
6.Ran /home/c/d/bin/ and gave it description "just before VBox 2.1.2".
7.As user c, started WXP
8.On WXP virtual (details in WXP virtual software log), as Administrator, stopped Kaspersky, scheduled C: CHKDSK and removed VirtualBox Guest Additions
9.As root, removed virtualbox-2.0:
apt-get remove virtualbox-2.0

Reading package lists... Done

Building dependency tree       

Reading state information... Done

The following packages will be REMOVED:


0 upgraded, 0 newly installed, 1 to remove and 84 not upgraded.

After this operation, 76.7MB disk space will be freed.

Do you want to continue [Y/n]? y

(Reading database ... 123489 files and directories currently installed.)

Removing virtualbox-2.0 ...

 * Stopping VirtualBox kernel module
 *  done.

 * Shutting down VirtualBox host networking
 *  done.
10.As root, installed virtualbox-2.1. During the following procedure, on the character-based full screen window, answered Yes to "Should the vboxdrv kernel module be compiled now?"

apt-get install virtualbox-2.1

Reading package lists... Done

Building dependency tree       

Reading state information... Done

The following NEW packages will be installed:


0 upgraded, 1 newly installed, 0 to remove and 84 not upgraded.

Need to get 0B/37.9MB of archives.

After this operation, 77.8MB of additional disk space will be used.

WARNING: The following packages cannot be authenticated!


Install these packages without verification [y/N]? y

Preconfiguring packages ...

Selecting previously deselected package virtualbox-2.1.

(Reading database ... 123202 files and directories currently installed.)

Unpacking virtualbox-2.1 (from .../virtualbox-2.1_2.1.2-41885_Ubuntu_hardy_i386.deb) ...

Setting up virtualbox-2.1 (2.1.2-41885_Ubuntu_hardy) ...

Installing new version of config file /etc/init.d/vboxdrv ...

addgroup: The group `vboxusers' already exists as a system group. Exiting.

Messages emitted during module compilation will be logged to /var/log/vbox-install.log.


 * Starting VirtualBox kernel module                                                                                                                                                 *  done.
11.As user c ...
12.Started WXP:
/usr/bin/VBoxManage -convertSettingsBackup startvm WXP
(Applications, System Tools, Sun xVM VirtualBox is not present until after reboot)
13.Devices, Mount CD/DVD-ROM, CD/DVD ROM image
Browsed to the Guest Additions.iso
14.On WXP virtual (details in WXP virtual software log), as Administrator, cancelled "Video Controller (VGA compatible)" installation, "Base system" installation, installed VirtualBox Guest Additions, started Kaspersky, configured autologon.
15.Devices>Unmount CD/DVD-ROM
16.Set WXP VirtualBox window to resizeable and stretched to full screen (giving maximum size but leaving Gnome window management frame visible).
17.On WXP virtual, shut down WXP virtual.
18.Ran /home/c/d/bin/ and gave it description "just after VBox 2.1.2".

Now the WXP virtual log:

1.After backing up WXPSystemDrive.vdi (details in ubuntu log), as Administrator ...
2.Used TweakUI to configure Administrator autologon.
3.Stopped Kaspersky.
4.CHKDSK /F /V C: and scheduled "this volume to be checked next time the system restarts".
5.Removed VirtualBox Guest Additions and accepted restart offer.
6.After restart and Administrator autologon ...
7.Declined all new hardware installation
8.Shutdown WXP.
9.On ubuntu (see ubuntu log for details) installed VirtualBox 2.1.2-41885, started WXP, configured CD drive.
10.As Administrator ...
11.Using Windows Explorer, browsed to the CD and simulated autorun (ran VBoxWindowsAdditions.exe). Took all the defaults including the restart (Reboot now) offer.
12.After restart and aoutologon as Administrator ...
13.Accepted Windows offer of changing the colour depth.
14.Started Kaspersky.
15.Used TweakUI to configure user C autologon.
16.Shutdown WXP.
17.On ubuntu (see ubuntu log for details) backed up C: drive

For what it's worth, here's the quick-and-dirty backup script (it does not check that the virtual machine is not running or that the VirtualBox configuration window is not open).
#! /bin/bash

backup_dir='/var/opt/VirtualBox/Manual .vdi backups/'

ls -lrt --human-readable "$prod_vdi_afn"
echo "$backup_dir contents:"
ls -lrt --human-readable "$backup_dir"
echo "space on volume containing $backup_dir:"
df --human-readable "$backup_dir"

if [[ "$USER" != root ]]; then
	echo 'This script needs to be run as root to control the VirtualBox daemons'
	\exit 1

echo 'Enter a description of this backup, for example "before applying SP3" or Ctl+C to abort'
read annotation

/etc/init.d/vbesave stop
/etc/init.d/vboxdrv stop
/etc/init.d/vboxnet stop

echo "Copying '$prod_vdi_afn' to '${backup_dir}WXPsystemdrive ($annotation).vdi'
(this will take a while)"
cp -p "$prod_vdi_afn" "${backup_dir}WXPsystemdrive ($annotation).vdi" 
echo "$backup_dir now contains:"
ls -lrt --human-readable "$backup_dir"

/etc/init.d/vbesave start
/etc/init.d/vboxdrv start
/etc/init.d/vboxnet start

sleep 2
and the associated restore script (tested!):
#! /bin/bash

backup_dir='/var/opt/VirtualBox/Manual .vdi backups/'

buf="$(ls -1 "$backup_dir")" 
while [[ "$buf" != '' ]]
	if [[ "$line" = "$buf" ]]; then
	(( i=i+1 ))
if [[ $imax -eq 0 ]]; then
	echo 'No backup files found'
	\exit 1

echo 'Files available to restore are:'
while [[ $i -lt $imax ]]
	echo "	$i ${file[ $i ]}"
	(( i=i+1 ))
echo "WARNING: existing $prod_vdi_afn will be overwritten"
echo 'Ensure Virtual Box configuration window is not open'
echo 'Enter number of file to restore (not error trapped) or Ctl+C to abort'

/etc/init.d/vbesave stop
/etc/init.d/vboxdrv stop
/etc/init.d/vboxnet stop

echo 'Copying virtual disk image file (this will take a while)'
cp -p "$backup_dir${file[ $REPLY ]}" "$prod_vdi_afn"

/etc/init.d/vbesave start
/etc/init.d/vboxdrv start
/etc/init.d/vboxnet start

\exit 0

Posted in Uncategorized
Views 3874 Comments 0
« Prev     Main     Next »
Total Comments 0




All times are GMT -5. The time now is 06:55 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration