Lucid 10.04 dual monitors 1600 x 1968

I broke my hip skiing in January 2010, split up with my girlfriend, and was between contracts, but working on my own idea again. My recuperation required lots of walking, and losing weight, so the obvious thing to do was buy a netbook, install Unbuntu and go to India.

I chose an Asus eeePC 1101HA; the model I bought on Ebay has: Atom dual core 1.33GHz, 2G Ram, 250G hardrive, GMA500 graphics chip, and a 1366 x 768 resolution 11.6" display. On battery, its supposed to go up to 11 hours, easily manages 6, weighs less than 1kg. And feels robust.

Internal Screen: taskbars withdrawn, migrating karmic home to lucid home 1366 x 768

Internal Screen: taskbars withdrawn, running on battery 1366 x 768

Lucid 10.04, poulsbo & Windows7

I now have a tri boot Win7/Ubuntu 9.10/Lucid 10.04 which can drive the internal screen, with an external monitor both at full resolution, and a sensible partition map. Look left.

The rather busy screenshot on the right spans two monitors. The internal monitor has two "Monitor Preferences" one with the internal screen highlighted, the other the external.

The rest of the screen show the source code of this page and Xampp server symbolic links; all obscuring a browser rendering this page.

My eeePC came with Windows7 Home Premium installed, and with a legal product key which is not a bad thing. I booted into Windows7; installed Firefox, and Netbeans, and observed that the inbuilt screen was brilliant

Furthermore Win7 could drive my external 1600x1200 monitor rotated, something my Lenovo T60 running Ubuntu could not. In the screenshot below the two small windows are the inbuilt 1366x768, and the big window takes up the 1200x1600 external monitor.

Windows7 dual monitors 1366 x 2368

Step 1: Create Windows7 boot USB stick

The Windows7 on the recovery DVD, and preinstalled on the eeePC comes with lots of goodies you'll probably never want, which clutter the registry and eat disk space. There is also a recovery partition taking up about 10G which is a nice idea, but installing grub makes it unusable. You will gain about 20G by downloading a nice clean Win7 iso image of the same edition as your licensed edition from

If you have a Windows boot, or Virtual Box that can directly access a USB stick, then you can use the Windows 7 USB/DVD Download Tool to create a boot USB stick.

My WinXP in a virtual box had stopped talking to USB devices, and I'd trashed my Win7 so I had to make a boot Win7 usbstick the fun way.

You need the grapihical partition editor, and the ability to format ntfs. Type the following commands in a shell:

sudo apt-get install gparted
sudo gparted

sudo umount /dev/sdb

This will start the grapihical partition editor. Insert your USB stick. It must be at least 4G for Win7 or 1G for Ubuntu. You will have to unmount the usbstick manually under Lucid. gparted will tell you which device the usbstick is. Assuming /dev/sdb

GParted: Creating bootable ntfs formatted USB stick

In the top right corner of the "GParted" window there's a pull down prompt to select the device. Make sure you select your USB stick "/dev/sdb", or "/dev/sdc". "/dev/sda" is your hard drive and you don't want to do what comes next to your hard drive.

From the "Device menu" take "Create Partition Table". After answering yes, the whole stick will be unallocated. Click on the big grey blob of unused space to select it, then "Partition"->"New". Change the "File System" to "ntfs", then click "Add". Then "Edit"->"Apply All Operations" This will take a while. When its finished: "Parititon"->"Manage Flags" and click on the "Boot" checkbox and then "Close". Exit "gparted"

Copy all the files from the Win7 iso onto the USB stick. Unfortunately I don't know of any Unix tool that can read the Win7 iso. 7Zip can but runs only under Windows, and did work in my virtual box.

Step 2, Reinstall Windows7

Shutdown the eeePC, insert the USB stick, and power up. When the Grey screen comes up inviting you to press "F2 to enter Setup" do so! When the "BIOS SETUP UTILITY" is running, press the right arrow until the "Boot" tab is highlighted, down arrow to "Hard Disk Drives" and press Enter. The USB stick should be listed second. Arrow down to it, and press Enter and finally F10

The netbook will now boot from the USB drive, and Windows install will take you through the procedure. You'll be asked at some state to partition the hard drive.

I just let Windows have the entire drive. There were 1 or 2 semi failed Unix experiments, and the recovery partition, and to be honest I was scared of the Windows partitioner, and knew that the Ubuntu install partitioner was good at resizing Windows partitions.

Also Windows7 needs 2 parititions, one about 100M to do with booting, and then Win7 itself. When I resized I gave my Win7 partition 30G. The delivered Win7 needs about 20G, but the clean Win7 with 6 browsers and NetBeans installed takes about 13G. So I would make the Win7 partition between 20 and 25G, if doing it again.

You can use your product key (which was on a label on the bottom of my eeePC) when Win7 asks for it. And once you connect to the Internet Win7 will automatically fetch all the correct drivers, and everything will eventually work

Step 3, Install Lucid 10.04

There are instructions on the Ubuntu website for creating a bootable USB stick under Windows, Unix, Mac etc. I used usb-creator and I observed that the installer remembers information you've entered. If mysterious things seem to be going wrong, recreate the boot USB stick to get a clean start.


On Mon 10 May 2010 I installed Win7, and Karmic 9.10 on my eeePC. Below describes how I created the partitions then.

Happy with my Karmic, I started writing the "Karmic on eeePC 1101" page. On Wed 12 May the poulsbo drivers became available for Lucid 10.04, which had been out since 1 May 2010.

/dev/sda615 GBext3/Root Lucid 10.04
/dev/sda75 GBswapSwap partition

I end up installing Karmic 6 times, and Lucid 4 times, with this disk partitioning remaining intact. The last time I installed Lucid I made these mounts in the install partitioner;

mkdir lucid
sudo mount /dev/sda6 lucid
gedit /etc/fstab &
sudo gedit lucid/etc/fstab
cd lucid/home
sudo cp -R /home/big/francis .
sudo chown -R francis francis
sudo chgrp -R francis francis

I migrated /home/francis from Karmic to Lucid by mounting /dev/sda6 the Lucid root file system while running Karmic at /home/francis/lucid and editing it's /etc/fstab by copying the lines to mount /dev/sda5 -> /work, and /dev/sda8 -> /home from the Karmic /etc/fstab and changing the /dev/sda8 mount point to /home/big

You can see the reverse being done, Lucid changing the mount point from /home to /home/big and copying /home/big/francis to /home/francis.

Note this is not a good way of migrating, see Step 9 migrating. However if it didn't work properly I had nothing tolose because only a copy of /home/francis would be corrupted. What is important however is that whenever I copied to or from /home/francis the operating system using this directory was not running.

Partitioning under Karmic

First I resized /dev/sda2 to 30G. This left the rest of the disk unallocated. I then created the partitions in the table below:

15 GBext4/Root Karmic 9.10
15 GBntfs/workShared with Win7
15 GBext3Scratch install
5 GBswapSwap partition
restext4/homeAll user data

partitioning on install

As Win7 could drive dual monitors I wanted to be able to do Java Script work under Win7. The ntfs partition, mounted as /work is attached as the D drive under Win7.

It's very useful having a scratch partition to test install a new operating system which I'll do again when I have a better idea why the poulsbo drivers didn't work for me under Lucid. I made it ext3 to distinguish it from the Root system, to avoid partitioning accidents

Doing it again I'd mount the rest of the space as /home/big. The idea is very large items like movies and pictures go in /home/big. If this partition fills up; Unix, and user(s) will have enough space to do whatever they want on the root 15G partition. Except VirtualBox. I'd have to move my disk files to /home/big, or they'd swamp the root partition

Another advantage of having /home on a seperate partition, is that all your user data and settings will be preserved over repeated installs with the same username. However this can be a big disadvantage if you mess up your display settings. See "Step 8 External monitor".

When you click forward, ignore the message that the ext3 partition, in my case /dev/sda6, is not used. This is exactly how you want it. When operating system install withdrawl gets too bad, you can install something on this partition well isolated from this your live install.

This is how I would now partition my hard drive

100 MBntfsboot Win7
20 GBntfsWin7
10 GBntfs/workShared with Win7
6 GBext4Scratch /
4 GBext4Scratch /home
6 GBext3/Lucid /
4 GBext3/homeLucid /home
6 GBext2Karmic /
4 GBext2Karmic /home
5 GBswapSwap partition
5 GBext4/home/subversionSource code control
25 GBext4/home/_vBox/HardDisksVirtualBox disk images
restext4/home/bigBig things

Step 4, Boot Win7

Windows7 creating D: drive 1366 x 768

The Grub boot menu gives you various options and then starts it's preference, your new Licid 10.04 install if you do nothing for 8s. Use the arrow keys to move down to probably the last option Windows7 boot loader. Select this and boot Win7

Click on Start, then "Control Panel". Click on "System and Security", and then in the bottom right "Create and format hard disk partitions". This will start the "Disk Management" right.

Most of the partitions are unlabelled. (C:) will be an NTFS "File System". There'll be the 100MB NTFS boot partition, and one more NTFS partition about the size you created in the previous step. Right click on its icon and take: "Change Drive Letter and Paths...". Click "Add". Make sure the "Assign the following driver letter" is ticked and the drive is D. Click "ok".

Create or copy a simple text file onto the D: drive, which is currently empty

Updating kernel 2.6.32-21-generic to 2.6.32-22-generic 1024 x 768

Step 5, Update Lucid

Boot into your Ubuntu installation. Check that the file you created on D: under Win7 can now be seen in /work.

On Thursday 13 May 2010 installing the updates upgraded the kernal from 2.6.32-21-generic to 2.6.32-22-generic. I'm pretty sure this kernel upgrade is essential to getting the poulsbo drivers to work, and am speculating it was made by the poulsbo maintainer(s) to enable poulsbo to compile into Lucid.

I first tried this install on Wed 12 May, and I was unable to update, the package respository seemed temporarily corrupted. The script reported a fail at most steps. On rebooting I got a flashing login prompt, which restoring xorg.conf from a recovery console didn’t fix.

"System"->Administration"->"Update Manager". Ignore the message that "Your system is up-to-date", and click on "Check".

Click "Install Update", and you'll get the latest kernel, and lots of vital security(bug) fixes. This will take a while, and then you'll have to restart.

You'll notice the grub menu has changed, you now have a choice of two kernels, the latest the chosen one, and both kernels also have a "(recovery mode)".

Step 6, Compile poulsbo drivers into kernel

This is one of the few times you'll see both CPUs working 100% for a long time.

Compiling source code is one of the few operations where the CPU, not memory, or disks is the bottleneck.

The screen shot below was taken after rebooting with the rebuilt kernel, and with my 1600 x 1200 monitor attached. The external monitor is set to 1280 x 960 resolution, and the internal screen overlaps the external monitor. The "Display Preferences" window is partly covering a screen shot taken while compiling in the poulsbo drivers.

You can also see me make two mistakes trying to backup xorg.conf

Type the following command in a shell: It will save the results in poulsbo.log

wget && bash ./ | tee poulsbo.log

Viewing rebuild, after rebooting with rebuilt kernel, overlapping monitors, funny resolution, cp xorg.conf 1366 x 968

This is a copy of my poulsbo.log when things went succesfully, which you can compare to your log if things don't go well

Step 7, Some Housekeeping

Start a shell and before doing anything else type:

cd /etc/X11
sudo cp xorg.conf xorg.conf.good1366x768

Setting hide buttons for task bar

Display Preferences: Laptop 11", no external monitor

Your 1366 x 768, or 1024 x 600 screen doesn't have many lines.

You can let an application use the entire screen by hiding the task bars. Right click on the upper task bar, and take "Properties". Tick the boxes as above, and now when you click on the grey blobs, the task bar will vanish. Click on the blob and it returns

When you checked the file from Windows on /work, you might have noticed it had a strange owner, group, and permission and was a rather ugly shade of green. chown, and chmod will not work on files in /work. Its not a Unix file system. When it's mounted owner, group, and permission are defined for all files on this partition

cd /work
ls -l

I needed my Xampp server to pickup files from /work, and because of the owner/permission it couldn't. You can find your uid and gid (1st and 2nd numbers) by grepping your username. Then you edit /etc/fstab

grep francis /etc/passwd
(result) ==> francis:x:1000:1000:Francis Cagney,,,:/home/francis:/bin/bash
sudo gedit /etc/fstab

Change the line containing /work as follows. The UUID will be specific to your installation and is not to be touched:

UUID=5780D42D1D35A08A /work ntfs defaults,nls=utf8,umask=007,gid=46 0 0
UUID=5780D42D1D35A08A /work ntfs defaults,nls=utf8,umask=002,uid=1000,gid=1000 0 0

Now you will own the files, and all will have rw permission on them. And my Xampp server can serve them

It's a bad idea to answer yes

Display Preferences: Samsung 20" at 1280x966 obscuring Laptop 11"

Display Preferences: Laptop 11", Samsung 20"

If you restart with an external 1600 x 1200 monitor attached and take "System->Monitors", you'll see what's on the left. If you click on the Monitor picture, the two will spring apart. Any attempt to let this page change your "virtual resolution" in "your configuration file" (/etc/X11/xorg.conf), will probably end in no good.

Instead add the following lines to the start of /etc/xorg.conf:

Section "Screen"
  Device "Configured Video Device"
  SubSection "Display"
    Virtual 2048 2048

Or you can download my xorg.conf file.

2011-05-04 12:06:56 Janessa

Now that’s sublte! Great to hear from you.
2011-08-04 21:16:52 JohnBush

Hello! Very good job(this site)! Thank you man.
2011-10-30 22:22:24 edoitaly

thank you, this is helpfull! will this work for ubuntu 11.10 too?
2012-09-25 18:43:15 Anita

Please tell me that youre going to keep this up! Its so excellent and so itaormpnt. I cant wait to read more from you. I just really feel like you know so much and know how to make people listen to what you might have to say. This weblog is just also cool to be missed. Excellent things, genuinely. Please, PLEASE keep it up!
2014-12-13 13:29:37 Essie

Most help articles on the web are inaccurate or inneheroct. Not this!

You can leave a comment with the form below. Your Email address is not compulsory, and if entered will not be displayed. It will be used solely if I wish to contact you regarding a comment you made. Like to inform you it's being deleted!

Name Email