I'm looking to move my server as well. Originally I thought my quad core desktop would be overkill (and suck up more electricity) than my pentium dual core server I have there now, but some testing with a watt meter suggests my quad core desktop, despite having a PCI graphics card and 4 HDDs (pentium dual core box has integrated graphics and 2 HDDs) there's a 65w vs 125w idle difference. I only used 4 HDDs for worst case scenario for comparing... in actual practice I'll use 3. Even still, a more powerful yet more power efficient box in use that would otherwise just be sitting on the counter? Sure, why not?
I'll likely be editing my /etc/fstab via UUID just the same way we did here. If KSoD doesn't mind I'll blab about it a bit here so you guys can see what my plan of action is as I go into this, especially since a lot of what I do when setting up a box like this directly correlates what has been discussed in this thread. Perhaps some of my setup and backup preferences may interest you guys, so I'll tag some extra details in the mix too so no areas are missed... Right now the server is running 11.04 for no particular reason other than it was my Unity test-box that I ended up leaving running and set up file server services on it. I'm eyeing up Lubuntu 12.04 or Debian 6 LXDE. The main reason I'm aiming for a light desktop environment is to eliminate any unneeded graphic overhead if I VNC into it or something. The box will be running 247 for various reasons, such as torrent usage (I let it loop Linux ISO uploads), file sharing with friends, home video surveillance, etc., so it makes it a little nicer to have a GUI. Straight file server I'd probably not care much.
It'll run 3 hard drives... a single 160GB SATA HDD for the entire root drive (no reason to split home and root since I don't have any personal documents on the OS drive), and 2x500GB SATA HDD's already set up in a RAID'd mirror configuration. My plan of action is exactly as follows:
- Boot operating system via USB flash drive
- Select advanced partitioning
- Select 160GB drive, install OS
- Leave other two drives 100% absolutely untouched during the installation process (more on this later)
- Complete installation of OS, reboot
- Log in, install "mdadm" (software RAID), then reboot
- Log in, run sudo blkid. /dev/md* should be viewable now (the "virtual array" of the two other drives) since mdadm was installed to recognize the 2x500GB mirror that was already set up
- Set UUID of /dev/md* (likely /dev/md0 or something similar) to mount /media/storage (personal preference)
- Reboot
- Shares in /media/storage should already be existent since the array didn't change... will test my desktop*** and my fiance's laptop*** to make sure synchronization works fine.
- Add folder to /var/www that I have ownership of, likely "public"
- Install samba, apache2, No-IP***, ZoneMinder***
***Desktop - In Startup Applications, I set up a new startup application called "NAS Backup". If you notice when you set up a new startup application, you have a few options - name, command, comment, etc. So naturally, you can run a terminal command on system startup. The command it runs rsync's my data over SSH to the file server in /media/storage/jason/.
rsync -az --delete /home/jason/Pictures /home/jason/Documents jason@192.168.1.150:/media/storage/jason/Desktop
*Note - The reason my destination folder is called Desktop is because it's referring to my desktop computer. I also have a folder in there for my laptop as well, as my laptop runs an identical service.
I don't back up my entire home directory, because my home directory on my desktop is 1TB whereas this box is 500GB, so I just back up the most important stuff - mainly just Pictures (obvious reasoning) and Documents (resumes, documentation, etc). It runs every single time I log in transparently via terminal in the background. Every once in a while I'll log onto the server and watch it when I log in to make sure whatever data I saved last time I was on my desktop comes over. So far, no hiccups!
***Laptop - Fiance's XP laptop has "SyncBack Free Edition" installed, which synchronizes her data every day at 9 PM, which is the most likely time of day she'd be on the laptop. In her case, I'm taking her entire My Documents, music, videos and all, because her laptop of course has 1 hard drive. In my desktop, since it's RAID'd, I consider my music and other misc data as much lesser priority, because while RAID isn't meant for backup purposes (redundancy), the realistic side is I still have 2 copies of it on my desktop whereas she has 1 copy on her laptop, which is why only my most important stuff gets backed up and ALL of her stuff gets backed up.
***No-IP is a package for DDNS. Makes it easier to give friends my DDNS address/public (aka,
www.mywebsite.com/public) and they have full downloadable (but not editable) access to whatever is in /var/www/public, allowing me to host items. Makes it SUPER easy for vacation pictures. I always bring my laptop, then right before vacation is over, I gather everyone's camera, back up their SD cards to my laptop, go home, compress everything into a large .zip, host it in /var/www/public, link everybody on Facebook, right click - save target as - download pictures.zip, uncompress, oh hello everyone's vacation pictures that would have been a headache to share otherwise! (yes, I know there's snapfish and stuff, but how easy is that to have one central location for all pictures to fire out to anybody?)
***ZoneMinder is a Linux based home surveillance system. It allows me to hook up almost any camera (of course, check brand compatibility before you go crazy buying stuff) to it and run as a surveillance camera. I've tested USB webcams that work great, and I've also used network based cameras. Give the camera a static IP, go into ZoneMinder, add the camera via brand/make/model/IP/resolution, set record mode (constant, motion detect, scheduled time, etc.), done deal.
That'll be my Saturday morning coffee.