Coolermaster case on the right

Coolermaster case on the right

Φόβος is the name of my NAS, backup and home server. It's the successor to a Mac mini G4 and the (ultimately abandoned) Thecus n2100.

It's a small (ish) size, passively-cooled PC that I leave on 24/7 and performs various duties for me, most importantly being a large archive storage space and a separate backup space.

Hardware

Power consumption

Back-of-the-envelope,

  • SoC: 10W (Intel TDP), some people experiencing draw of about 14W idle with one SSD connected

Some notes

The Coolermaster case is high-quality (although I am having some problems with the front-most USB ports so there might be a fault there). It's much bigger than I'd like, but is the smallest case I could find at the time. It's about the same size as a HP Microserver (which I was continually recommended when I re-specced this machine) and there's at least growing room. I'd prefer something about the size of the ChenBro ES32067.

The Gigabyte mainboard has some quirks, most of which are listed below. In terms of hardware design, the mini-PCI slot is in a strange place on the board. There is no easy way to secure a mini-PCI card if inserted into the board – the card will protrude at roughly 45° from the plane of the board and if you try to smooth it down it extends beyond the board dimensions so there's no way to secure it with a screw or similar. I've found trying to plug SATA ports into it is enough to loosen the connection.

Firmware

Headless boot

Dummy VGA plug

Dummy VGA plug

Sadly, Vs 1-4 of the firmware for the Gigabyte board requires a connected display in order to boot in UEFI mode. This seriously limits the utility of this system, as I want to keep the machine on a bookshelf, away from my desk and any convenient display. It's possible that a newer firmware version fixes this.

I've had a report from someone else with this board that they can boot headless in legacy/CSM mode, with a old-style DOS partition table (not GPT).

In my case, I've constructed a dummy VGA plug that fools the board into thinking that there is an attached monitor. I bought a 15 pin D-SUB gender changer and three 15 Ohm resistors. Connecting the resistors across pins 1-6, 2-7, 3-8 (Red signal to Red ground, etc.) is sufficient.

USB keyboards with integrated hubs

My go-to external keyboard is an IBM Thinkpad Ultranav USB. It presents itself as a USB hub with a keyboard attached, because it has two USB ports built into it (and two pointing devices too). Sadly with V1 of the Firmware, you can't use this keyboard to operate the firmware. However this was fixed by Version 4.

Flashing firmware

I've managed this only twice. It's pretty tricky. If you get it to work I'd recommend keeping the USB stick that worked for future updates.

Build a FreeDOS USB stick and put the DOS-based flasher onto it. In the Gigabyte Firmware, ensure

  • CSM is enabled
  • boot mode dual (legacy, UEFI) or UEFI only

Oddly despite needing a legacy partition layout it's the UEFI boot that needs to run.

For me, the 'fdos' boot option (once the USB bootloader has been launched) did not work and I needed to use the 'odin' (cut-down freedos) option to proceed, but having done that I could run the flasher (which was on drive C:).

Software

Debian GNU/Linux for the operating system.

I'm currently not using RAID (which is not backup).

Most of my backups are scheduled via rdiff-backup, some are via Obnam. I also use backuppc to backup our Windows machine (mostly my Wife's work).

Remote decryption

I use full-disk encryption which necessitates supplying a passphrase when the machine is booted. Since this is a headless box, some additional work is needed to permit supplying this passphrase over the network. Luckily most of the work is done already by installing the dropbear Debian package and reconfiguring keys and authorized_keys files in /etc/initramfs-tools afterwards. This means I can SSH into the pre-boot environment. From there, I just need to write the passphrase to /lib/cryptsetup/passfifo. I will probably write a convenience script to make that last bit easier.

Notifications

blinkenlights!

blinkenlights!

I wanted to add a means of notifying me of events on the machine. I bought a Blinkstick Nano, a tiny USB stick with an LED on each side. It has a very simple programming interface. I just need to come up with a colour scheme or blinking pattern to signify different events, and sort out the plumbing. Watch this space!

USB issues

The case has some front-mounted USB ports that are blue coloured and described as USB 3. However, the mainboard only offers USB 2.0/1.1 via the header for such ports. I have problems with connecting block devices to these ports.


Comments

comment 1
Have you tried making a VGA dummy plug to fool the board into thinking a monitor is attached?
Comment by Guest
comment 2
Hi - I have the parts for a dummy vga plug on the way from Hong Kong but I haven't received or assembled them. Someone else has told me that the board doesn't complain about displays for them if they turn on CSM emulation mode, so I will try that too.
jmtd