Hello.
I have made some modifications in OpenZaurus with unionfs as a default root filesystem.
mtdblock4 is mounted in rw mode, but in union it's in ro mode (you can change it by altering /media/realroot/sbin/init.unionroot, if you dont' t llike it)
mtdblock6 mounted as /media/ram is on higher level branch in unionfs, so everything you write to / is actually written to /media/ram/packages.
I did not include unionroot-utils, because I didn't like their behaviour, these need some improvements.
If you want to test modified unionroot-utils, then send me PS or e-mail.
If you have programs installed to CF or MMC/SD card, then currently you can use them by adding unionfs branch with command:
unionctl /. --add /media/cf/packages
or
unionctl /. --add /media/card/packages
and before unmounting:
unionctl /. --del /media/cf/packages
or
unionctl /. --del /media/card/packages
Why unionfs?
Because it's stackable, you can merge the contents of directories, so you don't have to hassle with these symlinks anymore.
One more thing: I can use unionfs to save internal flash from wear levelling (maybe I'm paranoid?)
zImage-collie-40-24-2.4.18-rmk7-pxa3-embedix-r22.binopie-image-collie.rootfs-2005-09-30.jffs2 (unionfs-1.0.11)
opie-image-collie.rootfs-2005-10-02.jffs2 (unionfs-1.0.14)
opie-image-collie.rootfs-minifo-2005-10-03.jffs2 (mini_fo-0.6.1)
EDIT: OK, I have tested it for couple of days for now and found it sometimes gives still Oopses Here is a demostration:
[ Invalid Attachment ]
I have tested unionfs-1.0.14 as well and that didn't work at all, because setattr,delete=first mount flags were removed in that version. After chmod or write or etc working process freezed completely.
So, i think my next try is minifo filesystem.