I have found that using a journaled file system can make thinks fairly robust when rooting from an sdcard. I have had good success with jfs and have been trying out ext3. So far ext3 has been working ok for me.
When rooting from onboard flash jffs2 there is the possibility of corruption unless you sync all writes
s
This paper has some pointers for making jffs2 more reliable
http://www.embedded-linux.co.uk/downloads/ESC-5.4-flash_filesystems-slides.pdf