It would be interesting to update or remove packages on the eee and retain those after a restore. Problem is that such changes are not retained and/or take up precious space on the user partition. While you can rely on additional images (e.g. http://www.xepc.org), we want some control over what we do…
This is a brief overview of how unionfs works.
First, you have two (main) partitions on your ssd - sda1 and sda2. sda1 is the system partition, it has everything that your computer has from the factory. sda2 is the user partition. it starts empty.
The unionfs mounts *both* of them to the same place. Changes made to the unionfs are saved in the user partition - deleting a file in normal operation:
1) if the file is on the user partition, delete it. 2) if the file is on the system partition, write a zero byte file to the user partition with the name ".wh.xxxxxxx" where xxxxxx is the name of the file in the system partition. (this is all invisible in normal operation)
This means that in practice,
/dev/sda1 is read-only when the system in operating normally. For any change to be permanent, i.e. still be there after a restore, you'll have to actually change
There's a number of ways listed in http://forum.eeeuser.com/viewtopic.php?id=1891
The most convenient (as it will allow you to do other stuff later) I found was to change the grub boot menu to include a “No UnionFS”-boot. It's best to start from a clean system, and as you're going to mess with
/dev/sda1/ as root, you can (will?) mess things up:
make sure that you know how to restore from the DVD before you start!
cp /boot/grub/menu.lst /home/user
nano /home/user/menu.lst) and copy the Normal Boot lines (4 lines starting with tile, root, kernel and initrd) twice, underneath that entry
title Rescue Console (leave root alone) kernel (whatever is there) XANDROSBOOTDEBUG=y (leave initrd alone)
title No UnionFS (leave root alone) (leave kernel alone) initrd /boot/initramfs-eeepc-nounionfs.img
- You should also check the fallback=2 line near the top of the file. If the system fails to boot properly Grub will use the specified fallback entry on the next boot attempt. The number 2 means that the third entry will be tried. (the first boot entry is 0) Replace the number 2 with the desired boot entry number. For example, if you want to fallback to the newly added Rescue Console entry, and if you placed it after the Normal Boot entry, change fallback=2 to fallback=1.
/home/user; they could be on a memory stick but you'll need to mount that first somewhere. If your eee has two hard drives, like the 901's 4 + 16, create it and the menu.lst in /boot instead of /home/user, so that you will know where to find the file. Change the cp path below from /mnt-user/home/user to /mnt-user/boot.)
mount /dev/sda1 /mnt-system mount /dev/sda2 /mnt-user
cp /mnt-user/home/user/menu.lst /mnt-system/boot/grub/ cp /mnt-user/home/user/initramfs-eeepc-nounionfs.img /mnt-system/boot/
umount /mnt-system umount /mnt-user
/dev/sda1so all changes made there will become permanent. This goes for everything from bookmarks to themes to installed packages - BE CAREFUL!
Notice, that booting into the no-unionfs assumes that the simple desktop is used. If you already applied the advanced desktop tricks (see Enable Advanced Desktop Mode) then you might end up in a dead-end boot loop. As a simple solution you could first switch to the simple desktop, and then reboot int the no-unionfs mode, or you could apply the advanced desktop mode changes directly into the /dev/sda1 “read-only” partition. Doing so requires booting into single-user mode (Rescue Mode or: How I Learned to Stop Worrying and Learned to Love Single-User Mode) and manually applying the steps necessary to make the system be aware of simple/advanced mode.
At the end, it's probably a good idea to tidy up:
apt-get leaves the packages in a cache (it may even run out of space). Just
rm *.deb from
/var/cache/apt/archives. Maybe also look in
/var/log to see whether anything can go from there…
After you're done, simply reboot or even better, do a factory reset. Everything you've done will still be there!
If you need to make more changes later, you can boot to No UnionFS again, make the necessary changes permanent and boot again to the normal state.
Once you're happy with what you've done, it's probably a good idea to back up /dev/sda1 to an external device. There's enough topics on the wiki/forum that detail how to do this. Just in case, note that a restore from the ASUS DVD will overwrite /dev/sda1 with the original image and your changes will be gone!!!
Thanks to: eee_jma, nevinera and loads of others who have contributed to the wiki & forum…