On my own time I've been working to build a low power server. Something I can leave on all the time without burning holes in my wallet. Really that's just an excuse...any money I would have saved was dumped into good hardware and setup time, but whatever. I think the main point is that (when I've finished) I should have a server that I can leave on and have reliable file storage/access anywhere. And I will have learned something (supposedly).
The Server:
- Mobo/Proc: SUPERMICRO MBD-X7SPE-HF-D525-O
- OS HD: OCZ Vertex 2 SSD (This server is my first build with an SSD...Fast!)
- RAM: Crucial 2x2GB CT2KIT25664BC1339
- Raid 5 HDs: WD Caviar Green WD20EARS 2TB Currently RMA-ing 2 of these...SMART errors
- Power Supply: Antec NEO ECO 520C
- Case: Antec 300 Best cases I've ever used...this is the third one I've owned.
I don't think I'll go into full detail with every software thing I've done so far (I can't remember most of the steps, and I'm not really qualified to explain them). I will however give the short list:
- Ubuntu Server 11.4
- LAMP (Apache, mySQL, PHP) Mostly so I can have a quick easy status check from any device.
- smartmontools - For S.M.A.R.T hard drive monitoring
- mdadm - For raid (still playing with raid drives, burning in disks and practicing for failures.)
- samba - still tinkering... local file share access (tests show ~100MB up/down speeds...awesome!)
- sftp - still tinkering... remote file share access (dunno yet...)
- lm-sensors - CPU temperature
- hddtemp - HD temperatures
- After a power failure/reboot I get an email immediately.
- The email has important/useful status information about the server before any users get there hands in the mix.
- The script serves as a library of useful sys-admin commands. Things I wouldn't normally use and, therefore, forget easily.
Create a file called onboot-report.sh with the following:
Note: You should change some@email.com to your own email...and you may need to change the FILE and MAIL_FILE locations... Most of those commands are explained very well here.
Now the only thing left is to make onboot-report.sh run after power-up:
In Ubuntu you just have to run the script in the file /etc/rc.local by adding the following:
I also have the following in /etc/rc.local I find it extremely useful because it lets me know that I can reestablish ssh sessions after a reboot without plugging in a monitor... It's not very complicated, it just makes the PC speaker beep three times after it's completely powered up.
Oh, maybe it's obvious, but after you install "beep" (sudo apt-get install beep) you can only test it from the server itself (tty1-ttyX) not via ssh (which will just beep your local PCs speaker).