I have an old Pentium-III system that does not support booting from USB in the BIOS, but I now have Mint7 installed and running off of a USB flash drive with no hard drives in the system. Note that this is running as a full install and not a "Live CD" clone, so application installs and updates are persistent.
The trick was to use a CF to IDE adapter and a small (128MB) Compact Flash card as the "/boot" partition. Of course you could just use a larger CF card and skip the USB flash drive altogether, but I didn't happen to have any larger CF cards laying around, and I did have a spare 8GB USB flash drive (and the IDE/CF adapter).
Turns out it not only works, but it was ridiculously easy to set up. The installer got to the partitioning stage and I chose manual. It displayed my IDE/CF card as sda, and my USB flash drive as sdb. So I just created an ext3 /boot partition on the 128MB CF card, and I split the 8GB USB flash drive into a large ext4 / partition, and a small swap partition. The installer continued without problems and the system rebooted into the Mint desktop when it was done.
This went especially well when you consider that I'm not even using the native USB ports on the motherboard, but instead I'm using the USB 2.0 ports on a 3rd party add-on card (Adaptec AUA-3121 USB2+Firewire PCI card).
Speed is surprisingly good. USB flash drives are slower than hard drives, but the system still boots and runs at a very usable performance level (MUCH faster than the live CD).
Now I'm thinking of possible uses for this little experiment. Like, maybe throwing some spare hard drives in it as a linear RAID (JBOD) and setting it up as network storage. It could also be a good candidate for a Linux based router. Or maybe a no hard drive torrent server (I have enough room for several Mint/CD iso images on the flash drive).
Anyway... it was a fun little afternoon project that I thought I'd share here.