Faster Boot Ubuntu 6.06 Desktop CD
Optimizing boot speed of Ubuntu Desktop CD with following methods.
- laying out files by first access(This is Krzysztof Lichota's work. see Kubuntu Dapper live CD optimization)
- running readahead-list on bootup.
- running xserver configuration in the background.
- using directly gconftool-2 instead of casper-reconfigure.
This Desktop CD supports following features.
-
non-utc timezone and hwclock with command line options.
e.g. command line option "tz=Asia/Tokyo utc=no" for Asia/Tokyo timezone and local time hardware clock.
- bootcharting
generate bootchart if command line option "initrd=/casper/chart.gz" is set.
Download ISO Image
Experimental Result
- Desktop
Pentium M 1.8GHz, 1GB RAM
- Laptop
Pentium M 1.7GHz, 512MB RAM (Dell INSPIRON 710m)
PC/CD Type | Normal | Optimized (readahead off) |
Optimized (readahead on) |
---|---|---|---|
Desktop | 2:06 | 1:11 (Bootchart) |
1:04 (Bootchart) |
Laptop | 2:23 | 1:10 | 1:05 |
Changes from normal Ubuntu 6.06.1 Desktop CD image
- casper/filesystem.squashfs
- add bootchart and librsvg2-bin package for bootcharting.
- laying out files by first access on the edge with the list generated with sort-files-by-first-access.py
- generate files list for readahead with sort-files-by-first-access-for-readahead.py and put it to /etc/readahead/rofs
These scripts are based on Krzysztof's script.
- casper/filesystem.readahead
file list for readahead-list.
- casper/initrd.gz
- init
Add parsing "tz" and "utc" command line options.
- etc/localtime
symbolic link to /root/etc/localtime
- usr/share/zoneinfo
symbolic link to /root/usr/share/zoneinfo/
- lib/casper/wait_xconfig
wait for end of xserver configuration
- scripts/casper-bottom/06readahead_rofs
kick readahead-list /cdrom/casper/filesystem.readahead if RAM size > 200MBytes
- scripts/casper-bottom/07timezone
set timezone and system clock(without doing this here, network interfaces won't acquire ip addresses if timezone > UTC)
- sbin/hwclock
kicked in 07timezone
- scripts/casper-bottom/20xconfig
run xserver configuration in background
- scripts/casper-bottom/22gnome_panel_data
run gconftool-2 instead of casper-reconfigure
- scripts/casper-bottom/32disable_hibernation
run gconftool-2 instead of casper-reconfigure
- init
- Remove all files on CD image except essential for live session.