The problem
When the number of computers in your house starts to grow, a file server starts looking more attractive. A place to back up all your important files, as well as store central files (e.g. virtual machines, tools, photos, mp3s) that are used by multiple machines. Sure, you can burn em to CD or DVD, but that’s so slow, manual, and old school. Where exactly can you back up those files?
Option 1: Get a DAS (Direct Attached Storage)
AKA an external USB drive. USB enclosures are easy to get, and you can definitely store a lot of files on them. I have a few lying around, and you don’t even need an external power brick for the 2.5″ drive enclosures. I decided against them, though, since I needed to share files between multiple computers.
Advantages:
- Cheap
- Very quick & easy to use
- High transfer speed
Disadvantages:
- Can’t share files to multiple computers at the same time
- Connecting to a different client involves unplugging, lugging, & plugging.
Option 2: Build a File Server
You could also build a full-fledged file server. Get a no-frills computer, load Linux or Windows on it, stick a bunch of drives in there, and share them across the LAN. I decided against this option for the time being since I wanted something cheap, easy, small, & quiet.
Advantages:
- A file server can be used for other things, like a print server, mail server, web server, etc. Which can be fun, a source of geek pride, and educational.
- Administration is via the server GUI, which you probably already know very well. And if you don’t, it helps you build your resume. “Familiar with Windows Server administration” looks better than “Familiar with ECS EZ-NAS 2000.”
- Very good hardware support, including gigabit LAN
- Support for RAID (software or hardware), so you can mirror two drives in case one fails
- Advanced features like disk quotas, permissions, etc. You could also set up a WebDAV or FTP server to be able to access your files over the internet.
Disadvantages:
- Cost: running a full OS (especially Windows 2003 or a fancy Linux GUI) can require more powerful hardware, meaning more money. More powerful machines also use more power.
- Size: a normal server can be kinda bulky.
- Time: installing & configuring an OS can take a while. It’s not awful, but time is money!
- Noise: a full server can be noisy, too, unless you spend more money making it quiet.
Option 3: Get a SAN (Storage Area Network)
I’m not really considering this due to the cost, although you can create a SAN using a file server (above) that implements iSCSI. There is a good (albiet a bit older) walkthrough for Linux and Windows here and of course Wikipedia has plenty of blurbage on it.
Option 4: Store Files Online
You could FTP all your important files to your ISP’s server (or your server), or use your Gmail account like a hard drive, or use an online storage provider like Web 2.0 darling Box.net, collaboration tool Basecamp, or others. I use this method for sharing files with others, as offsite backup, and before travelling, but not as my main file storage.
Advantages:
- No local equipment needed. You don’t need to deal with hardware at all, which is attractive.
- Cheap, even free for smaller amounts of files. Like if you’re just backing up source code, documents, etc.
- Access from anywhere, even on the road. If you have a net connection, you’ve got your file.
- Reliable: in theory your ISP, Gmail, Basecamp, etc will have better backup & power systems than you do. So you don’t need to worry (as much) about your files getting destroyed due to fire, hardware failure, etc.
Disavantages:
- Slow, oh how slow. Basically as slow as your internet connection, which is probably 99% slower than your LAN. Which rules out videos and large files.
- Not a lot of storage. This is relative, of course. 1-5gb might be plenty for some people, but not for others. Upgrading to more storage might either be expensive or not an option.
- Out of your control. If the provider goes south, your files have, too.
Option 5: Get a NAS (Network Attached Storage)
This is the option I’m trying out. A NAS is basically external storage that you connect to your LAN. Your computers then access it over the network. You can always buy an enclosure for about $100 from NewEgg, etc (search on NAS), but I recently stumbled across NASLite and FreeNAS, embedded Linux kernels that turn an old PC (e.g. 200mhz!) into a NAS. Here is a very good and recent walkthough on FreeNAS, and here is a review on NASLite (plus a tip on making a 1.7mb floppy in order to boot NASLite). I’ll post an update once I have either FreeNAS or NASLite running.
Advantages:
- Inexpensive, especially if you already have an old PC lying around. If you don’t, you can always buy one from the Salvation Army, Craigslist, or vendors like RetroBox.
- Quiet: Old PCs don’t need a lot of fans, and can often get away with passive cooling. The NAS units you buy are also pretty quiet.
- Size: Old PCs aren’t small, but the dedicated devices are. And some of them are even cute, leading to a better WAF.
- Easy: Easy enough to get going.
- Stability: A simpler device means fewer moving parts, as well as very little (if any) risk of that server getting infected with trojans and viruses. That doesn’t mean that an infected client can’t stick a virus-laden file onto the NAS, though, so make sure all your client PCs have antivirus (hint: Google Pack has a free 6-month Norton Antivirus).
Disadvantages:
- Transfer speed: you’re limited by the speed of your network and the amount of memory in the server. If you’re running gigabit LAN, then it’s decent, but if you’re 100mbit or 10mbit, you’ll start to notice transfer times for larger files compared to USB or Firewire. You can still stream mp3s & copy files around, but streaming video might be an issue for slower networks.
- Size: Old PCs can be big.
- Features: Cheaper NAS solutions don’t offer RAID, which means if you lose the drive, your files are gone. FreeNAS does offer RAID, though, which is why I’m trying it first.
Conclusion
Hopefully the above helps you when considering storage solutions for your home network and important files. Keep an eye on DevelopmentNow for an update after my adventure with FreeNAS on a celeron 600.