Due to some limitations of the preinstalled Xandros, I'm switching to EEEbuntu. I hope to get this ubuntu-based distribution boot faster with some tweaking. In the meanwhile I'm also keeping Xandros, because I like its 15 sec. boot time. My 900 model has two SSDs, 4GB (faster) and 16GB (slower); so I'm planning to boot both Xandros and EEEbuntu from the first small but faster device: I'll have to split the EEEbuntu installation across two partitions on two different devices.
[..]
I'm trying now with version 3.0.
- get EEEbuntu Base;
- install in a partition on the 16GB one (let's say /dev/sdb2);
- reboot (boot time 46 sec., from grub menu to welcome sound with autologin);
- take a snapshot of /dev/sdb2 with partimage (record 1);
- shrink the Xandros partition to make room for an EEEbuntu partition (let's say /dev/sda3);
- move everything except /usr from /dev/sdb2 to /dev/sda3;
- on /dev/sdb2, move everything in /usr to the parent directory (/);
- on /dev/sda3, make a new /usr folder;
- on /dev/sda3, edit /etc/fstab to mount /dev/sdb2 to /usr;
- fix grub boot instructions accordingly (grub root is now "(hd0,2)", kernel option "root=/dev/sda3");
- reboot (boot time 40 sec.);
- if ok, take a snapshot of /dev/sda3 and /dev/sdb2 with partimage (record 2);
- install a faster kernel (eeepc-lean) from array.org;
- fix grub boot instructions accordingly;
- reboot (boot time 38 sec.);
- fix some hardware (Fn-) keys issues (EEEbuntu forum #1) with eee-control installed from synaptic;
- run eee-control tray applet at startup (System -> Control center -> Sessions -> Add, fill with /usr/bin/eee-control-tray);
install TuxOnIce (my way);- improve boot time by disabling some services (Knowledge76 article):
als-utils
anacron
apmd
apparmor
apport
atd
bluetooth
bootlogd
cron
dns-clean
pcmciautils
ppp-dns
rmnologin
rsync
stop-bootlogd
stop-bootlogd-single
sysklogd
ufw
usplash - remove cron, logrotate, sysklogd (Debian WiKi):
# apt-get remove cron logrotate sysklogd
- remove "splash" option from grub boot instructions (usplash service is removed);
- add "rootfstype=ext2" to grub boot instructions (avoid kernel very little guessing time, Debian Italia post);
- add "noresume" options to grub boot instructions (if hibernation disabled, avoid kernel looking for resume image Debian Italia post);
- remove some virtual consoles (tty7 is for X and tty1 is for text, same Knowledge76 article):
# rm /etc/event.d/tty2
..
# rm /etc/event.d/tty6 - replace the bash shell with the faster (for scripts) dash shell (Ubuntu wiki):
# apt-get install dash
# dpkg-reconfigure dash - reorder boot scripts with right dependencies (Debian User forum post):
# apt-get install insserv
# dpkg-reconfigure insserv - reboot (boot time 35 sec.);
- remove create_floppy_devices, pcmcia-check-broken-cis, pcmcia-socket-startup from /lib/udev;
fix hwclock time out (Debian WiKi);- improve performance by setting "noatime" option (instead of "relatime" or "atime") in fstab entries (same Debian User forum post);
- boot once with "profile" option in grub entry, to update the profile for "readahead";
- reboot (boot time 34 sec.);
- install mc and mcedit;
- set mcedit as default editor for mc, by setting "use internal editor" under Option ->Configuration of mc (Ubuntu launchpad);
- take a snapshot of /dev/sda3 (record 3);
- no real benefit from "readahead", remove it by disabling some services (same Knowledge76 article):
readahead
readahead-desktop
stop-readahead - re-run insserv;
- reboot (boot time 33 sec.);
install LXDE:# apt-get install lxdemake LXDE the default desktop manager instead of GNOME (from login menu, after hitting ctrl-alt-bkspc);reboot (boot time 31 sec.);- prepend "exit" to /etc/init.d/hwclock.sh and to /etc/init.d/hwclockfirst.sh (the scripts are called but nothing is done);
install compiz (Ubuntu Help);install avant-window-navigator (AWN);fix compiz and AWN startup (my way);set AWN bar position through gconf-editor (this post);reboot (boot time sec. 33);- install xcompmgr and make it autostart;
- install cairo-dock and make it autostart;
- take a snapshot of /dev/sda3 and /dev/sdb2 with partimage (record 4);
[..]
I'm trying now with version 3.0.