» about » content » twitter » github »

Setting up a dual-booting Windows XP, Ubuntu Linux Workstation


This document details the setup of a workstation that runs Ubuntu Linux and Windows XP Professional. I keep it up-to-date in case something happens to my machine and I have to reinstall the operating systems and all the components I use, but it could be useful to someone who wants to setup a similar system. This is the 3rd in a series of Roqet Workstations, the first was here, the 2nd here.

If you are using this document to setup your own system, please note that some version numbers of files/applications may have changed since this was written.

Why Ubuntu Linux?

Although my favorite Linux distribution is Slackware, it no longer supports the Gnome Desktop Environment, which I prefer. There are ways to install that environment onto Slackware, but on the whole these are not smooth and there are integration issues. I have found that Ubuntu Linux is a very well-rounded desktop distribution, that is easy to modify and maintain. My server stays Slackware though. Ubuntu is fantastic at detecting hardware by the way.

Why Windows XP?

Simply put, I do most of my work at a company that develops Windows-based software, and there are more common-use applications written for Windows than any other operating system.

Hardware Profile

Here is the hardware I had for the workstation (most parts were purchased from MWave.com):

INTEL PENTIUM 4 1.7G - 478 
INTEL D845GEBV2L-MB (on-board video+audio) 
Chipset Intel 845GE 
From Factor ATX 
Data Bus Speed 533 MHz 
Provided Slot Types PCI 
Slot From Factor Socket 478 
512MB NON-ECC PC2100, Maximum Supported RAM Size 2 GB 
RAM Technology Supported DDR SDRAM, RAM Type DRAM 
Video Output From Factor Integrated 
Graphics Interface Type AGP 4x, Graphics Processor Intel 845GE 
Audio Form Factor Integrated, Sound Output Mode Stereo 
Storage Controller Type IDE / EIDE, Storage Controller Interface Type PCI 
40MB Western-Digital 7200RPM IDE HD 
1.44MB FDD 
Black SUPERCASE 1150-Case 
Interface Provided RS-232, IEEE 1284 (EPP/ECP), Input, 
Ethernet 10Base-T/100Base-TX, DMA/ATA-100 (Ultra) 
Cables: IDE cable 
Compliant Standards Plug and Play, FCC Class B certified, CSA, 
VCCI Class B ITE, EN50082, EN55022 
Motherboard Package Type Retail 
Software Included Drivers & utilities, Intel Express Installer, 
Norton Internet Security 2002 
Manufacturer Part No. BOXD845GEBV2L 
BIOS Changes: In order to be able to use 16 million colors on a resolution 800x600
              or above, you have to enter the BIOS (F1 after reboot/start), 
              and change the video card to use 8MB instead of 1MB. 
              Intel provides this advice and more here. 
The Intel Desktop Board D845GEBV2 expands the portfolio of integrated graphics 
platforms for the Intel Pentium 4 processor. Featuring the Intel 845GE chipset, 
the desktop board delivers support for DDR 333 memory technology along with 
improved Intel Extreme Graphics. As an industry leader, Intel continues its 
tradition of delivering innovative desktop board technologies with the D845GEBV2 
Desktop Board. 

I also added a videocard (without the videocard, the onboard video gave problems 
when switching from the Xwindows desktop to the Xwindows login (gdmgreeter), 
basically, the screen would go blank):

Disk Partitions

Setup primary partitions for Windows and Linux using cfdisk, fdisk or just use your Ubuntu disk, and exit before the install of the OS (Windows should be installed 1st).

Install Windows XP

Puchase Windows XP Professional from here.

Install on the partition you set aside for it, and run through Windows Updates until the OS (including Service Pack 2) is installed and the firewall is on.


As I often need to access the workstation via my server while I'm at work, I need to set a fixed IP Address.

Control Panel -> Administrative Tools -> Local Area Connection Properties

Click on "Internet Protocol (TCP/IP)" and select Properties

Choose "Use the following IP Address" and make settings similar to these:

IP address:
Subnet netmask:
Default gateway:
Preferred DNS server:

Remote access Via SSH or Telnet

This is documented here.

Remote access via SFTP or FTP

See the link in the above section.

Oracle Client for Windows

The setup of Oracle InstantClient 10g is documented here.

Perl for Windows

Install Perl for windows from Activestate.

To add libraries, from the command line type: ppm


An absolute necessity on Windows. I use ClamWin, a free antivirus program. It does not run in the background however, so I set-up a scheduled task to run it daily or weekly.

A handy setting in ClamWin is to set it to email you if it finds a virus. I set it to email my Linux server; fo this to work, I did not put in a username or password, but had to set the server to relay messages from the Windows machine's IP Address.

Install Ubuntu Linux

You can order *free* CD's or download the Ubuntu Linux ISO image from here and burn it onto CD yourself.

Then insert the new CD and restart the machine. The install is very easy, and Ubuntu detects most modern hardware without a problem.


During the installation you can set your network connections, but if you want to modify your network settings later, use the netconfig utility. Another thing to remember is to update your /etc/resolv.conf file to add in any additional nameserver ip addresses (check your isp or your registrar for these - I use changeip.com to manage mine.)

For example these were my settings (changed for privacy):

hostname: myhost
domain: mydomain.org
static ip address:
netmask (local):
gateway address: (that's where my router is)
accessing a nameserver? yes
nameserver ip:
after complete, edit /etc/resolv.conf,add a 2nd nameserver:

Graphical GRUB

The default Ubuntu boot manager is GRUB. It will allow you to switch between Windows and Linux when the machine starts.

Here's how you change the background for GRUB:

Download a gzipped XPM image from places like here and here

Copy it to the GRUB directory: sudo cp FILE.xpm.gz /boot/grub (Where FILE.xpm.gz is the file you just downloaded).

Tell GRUB to use the image: sudo gedit /boot/grub/menu.lst

Add a line under the "timeout" line to read like this: splashimage=(hdX,Y)/boot/grub/FILE.xpm.gz (Where X is the hard drive number Ubuntu is on, Y is the partition number (0-based), and FILE.xpm.gz is file you just downloaded and copied. For example, If / (the root directory) is /dev/hda8 you would write: splashimage=(hd0,7)/boot/grub/FILE.xpm.gz. If you had a /boot partition as /dev/hdc1 you would write: splashimage=(hd2,0)/grub/FILE.xpm.gz)

Save the file, restart and you will now be able to see the logo in the background!


Nautilus is the default File Manager for Gnome. Unfortunately the Ubutu team saw fit to cripple it (damage the Spacial mode so that it destroys the parent window each time you open a sub-window). Rather that argue my case here, I'll simply show you how to set it as Gnome intended:

sudo gconf-editor -> apps -> nautilus -> preference -> no_ubuntu_spatial

Evolution and Connecting to an MS Exchange Server

The default mail client on Ubuntu is Evolution.

To setup Evolution to connect to a MS Exchange server:

Under the "Receiving Mail" tab;

Server Type: Microsoft Exchange
Exchange Server: mail.domainname.com (strip off the http://)
Windows Username: myusername

Under "Receiving Mail Options" tab:

Global Catalog Server Name: addresses.domainname.com
Mailbox name: myusername
OWA Path: /exchange
public folder server: addresses


This is documented here.

Media Player

There are many, several of which are installed by default; I'll just mention one extra that I like to add, the RealPlayer Media player;

You can download it from Here, then to install:

chmod a+x RealPlayer10GOLD.bin

Perl and CPAN

The Perl language is installed by default, as is CPAN. CPAN (Comprehensive Perl Archive Network) is the source for Perl modules and extensions. Thousands of useful modules and libraries are available in this repository, all are free. To get CPAN configured, type: cpan, then once cpan has started, type: o conf init. You should be able to accept the defaults from there, the important thing to find out is the correct URL's, which you can get from here; for example, I currently use: ftp://cpan.erlbaum.net/ and ftp://ftp.rge.com/pub/languages/perl/ as I'm close to NY, USA.

Oracle Client for Linux

The setup of Oracle InstantClient 10g is documented here.


On This document? Contact me here.

Where to find documentation on your system: in the /usr/doc directory.

Linux general? Start Here.

Linux Command-line commands? I have a document on this Here.

© Roqet 2018 :: 2018-05-11 17:07:10