Some regular readers may have seen my articles on building a Debian server from scratch.
This has been up and running faultlessly for over a year now, with only the occasional maintenance from me and has proven to be a robust and reliable machine.
So why another; you may ask?
Well, as all server admins will know, even though your server may be humming away not missing a beat, at some time in the future, all hell will break loose when some hardware or software glitch will decide to raise its ugly head and the whole thing comes to a grinding halt. And always at the most inconvenient time!
So rather than wait for that fatal day, it makes sense to have some kind of disaster recovery plan in place and in my case, the obvious solution was to have a spare server.
As it is only a spare, it did not need the full functionality of the main server as regards its RAID configuration. I decided I could get by with a machine that served web pages properly, but perhaps at a lesser performance and most of all, I didn't want it to take up loads more space. So how would this all be possible?
I've watched and been intrigued for some time now, with motherboards that have been greatly reduced in size, but have maintained a respectable (though no longer leading edge) performance. It seemed to me, they were a perfect candidate for what I wanted to achieve.
So what can you see in this image? There's the motherboard in its box, a Crucial memory box, a bag with a power brick in it, a bag with a power supply in it, a 512MB CF card I had laying around and the famous lunch-box.
You could be forgiven at this moment in time to assume I've totally lost it, but stay with me and you may be surprised!
Notes and Warning: wherever drilling is mentioned, all components were removed prior to drilling in order to protect them. If youngsters are reading this, adult supervision must be available before attempting the lunch-box modification. It is extremely easy to injure yourself, so don't take risks.
If you are thinking of following in my footsteps, please read the whole article before deciding whether it's for you.
Clearly this is an unconventional project, the lunch-box itself would suggest nothing less. So maybe now would be a good time to explain what function the lunch-box has. If you haven't already guessed, it will become the case to house the components. Why? Because for some unknown reason, while you can buy a midi computer case for a few pounds, nano cases cost upwards of £75 each. This puts an astronomical premium on what is meant to be a reasonably cheap project. Having said that, nano motherboards are not cheap. But if you consider they include the processor as well, the price becomes bearable.
The next image shows the main components out of their boxes with a 50p coin to give some perspective of size. The nano motherboard itself, is just 12cm square and the power supply, about 5.25cm square.
The first job was to determine the layout of the lunch-box, in order that all the components would fit. I decided the motherboard would live at one end and the power supply would live on the side of the opposite end. Each would be mounted on nylon "stand-offs" that are available from various component suppliers. The next image shows the power supply mounted in the box, on its stand-offs. This was just a matter of drilling a couple of holes in the correct position and screwing the stand-offs into position after attaching them to the power supply.
Once that was completed, I screwed the stand-offs to the motherboard and marked and drilled the holes for the motherboard to be secured. All that remained, was to attach the memory to its location and the CF card into its slot and screw the whole assembly into position. Once positioned, I marked out where the cut would need to go for the peripherals, made up a little switch plate and drilled a hole for the power supply input lead. Finally, I attached the power supply lead to the motherboard.
You can see some images of the completed server and its peripherals below
Problems you may come across.
It is essential you research your chosen motherboard thoroughly. Certainly this motherboard would not run on a "conventional" power supply - not that I wanted to use one. It would have taken up far too much room. So keep in mind you will probably need to source an appropriate power supply. There were a number to choose from, but the documentation clearly stated this motherboard had a power requirement of 36W, but it needed 65W for a fully configured system and possibly more if you added peripherals. Furthermore, the stumbling block was that it needed at least 2A on the +5VSB (5V standby lead). In order to meet this requirement, it was necessary to buy and install a 120W power supply. In addition, that power supply needs a 12V supply (it is not mains). In other words, just like a laptop or netbook, it needs a power brick to provide the 12V supply and this in turn needs to be able to produce enough power. In the end, I used a LCD screen power brick that met those requirements.
Just like a normal computer, it needs a power switch and reboot switch. Whereas a conventional case would come with these pre-installed, my lunch-box needed a switch panel to be able to start up the computer. I didn't bother with LED's for power and hard drive activity, as this computer has a power light built into the on-board power supply and I was using a CF card for the operating system. Two micro switches served the purpose and some switch extension leads provided the connection to the motherboard.
The 512MB CF card was one I had laying about and was only used for a proof of concept. In fact, I installed Puppy Linux to prove that it would work. Once I was happy it would work, I bought a 8GB card for the operating system, database and web files.
A Debian server is now fully functional, but initially, I could not install the stable version of Debian to the CF card. I had to go to the Debain "testing" version, (which is pretty stable anyway) and it installed without any further drama. Clearly, the existing stable versions installer, cannot cope with installing to a CF card.
As I started the installation from a CD, I had to "jerry rig" a CD drive onto the motherboard. Being so small, it is designed to take 2.5" drives, but I only had a 3.5". Fortunately, I had a 3.5" to 2.5" converter, which temporarily solved the problem. Once Debian is installed, any further work can be done directly over the Internet and the problem resolves itself. It may be possible to install from a USB stick, but I didn't investigate that option.
I didn't attempt to provide any ventilation for the lunch-box. This was quite intentional, as no ventilation means no dust while the computer is not working. The lid provides a nice dust free environment, but the side aperture does lend itself to some dust ingress. Storing it on its side, (aperture down) minimises that probability. However, it should be understood, that any time this computer is operational, the lid will be removed. It has probably become obvious too, that all of the components are passively cooled. Therefore, no fans are required and tests have shown the computer runs well within it's specified heat range. Naturally, it is silent!
For those that have reached this far; well done! This final section will show the main technical information of the computer, so anyone should be able to build something similar if they so desire.
- Operating System: Debian testing
- Motherboard: BCM Industrial NX15MXL
- CPU: Intel Atom 1.1GB on-board
- Cooling: Passive throughout - lid removed
- RAM: 1GB Crucial memory
- Hard drive: 8GB Dane-Elec High Speed CF card
- Power supply: Generic 120W
- Power brick: Generic model ST-008-097 input 100-250V-1.5A AC; output 12V-10A
- Total power usage at idle: approx 25W