You've really asked about two issues, how do I manage that many photos, and what do I do about backups?
Backups, IMO, is the easier one. What I do, get two identical hard drive enclosures, each with a suitably large drive in them (these days, look at 2Tb + each). Aim for a powered one (so you can use larger drives), preferably with eSata connectivity (for speed). Then mirror your photos and whatever else you want to back up regularly onto the drives. Then, every week or so swap drives, and take the now disconnected drive to somewhere off site (your work, parent's house, safety deposit box, etc). Doing the mirroring via an automatic scheduled task is better. Now you're covered for most risks, and if your house is on fire and you've got time to grab something on the way out, you grab the currently connected backup drive.
Now, how do you manage a large connection of photos, possibly stored across multiple machines? There's commercial solutions, with a pretty hefty price tag, but not much out there with distributed capabilities in the open source world. At least, not that I know of. For myself, I've kludged up something using f-spot as a base, and using Mercurial to track the photo database, but it's messy. And now, f-spot in Ubuntu 10.10 has become a pile of flaming crap, so I'm going to have to try the same approach in Shotwell.