The IT infrastructure of TECTRA Ltd is proudly what I call “potato-powered”.
And by that, I mean that it has always been frugal, measured yet effective, but even more so since the early 2000s, when we started switching to Linux, starting from the server.
Our first Linux server, in 2002, was a repurposed desktop PC with a pitiful Pentium II at 266 MHz, with 64 MB of RAM and a whopping (for the time) 40 GB IDE HDD. It initially ran SuSE Linux 7.3 and, starting in 2004, Slackware Linux 10.0. It provided Samba shares to Windows 95 and 98SE clients, as well as fetched email from our ISP with fetchmail, and served it internally via IMAP (dovecot, IIRC).
The next server, in 2005, was another repurposed desktop PC with a power-hungry, still-pitiful Pentium 4 at 1.6 GHz, with 512 MB of RAM. It ran Debian 3.1 “sarge” from two 80 GB IDE HDDs in an LVM/dm RAID-1 setup. The software stack remained the same.
By scanning everything into PaperPort, and storing all of the company’s emails since 1998, we started rapidly running out of disk space.
Thus, in 2006, I transplanted the entire setup, including the LVM/RAID-1 array into an even more power-hungry Pentium 4 3.2 HT with 1 GB of RAM and onto two 320 GB SATA HDDs. I merely grew the array; everything kept working. The whole operation took half a Saturday.
By that time, most PCs in the office were running Windows XP, so I added ClamAV scanning of the data storage. We have never had a virus.
From that day, until February 2020, that machine would be turned on every day, and turned off at the end of the work day.
The total amount of effort required on my end over 14 years is equal to… 5 or 6 ssh sessions from abroad, in order to clear an overfilled /tmp. That’s it. 10 or 12 minutes of effort over 14 years.
In February 2020, I set up the server anew; this time, a beefy Ryzen 5 3600 with 16 GB of RAM and an ext4 LV/dm RAID1 array of two 2 TB SATA HDDs, cached by a 32 GB partition on a cheap 128 GB SATA SSD, using bcache, and periodically synchronized to an off-site OrangePi Zero with a USB HDD. This time, Debian 10 and courier-imap instead of dovecot.
Alas, this setup idled at 70+ Watts. So, in August 2022 I switched the disks to a 6-Watt Celeron N3160 1.6 GHz with 8 GB RAM, and converted ext4 to btrfs, transparently zstd-compressed and nightly deduplicated. Total idle power draw is below 32 W.
It runs Debian 11 (dist-upgrade from 10), Samba4, NFSv3, courier-imap, borgbackup to an internal HDD, and a few VMs (NocoDB, Wekan, and internal microservices on Alpine Linux) with virt-manager, and acts as a Wireguard VPN beacon. Data are now periodically/incrementally rsync’ed to a total of three offsite locations, each running an ultra-low-power setup (2 to 8 W each).
It’s been 297 days since I last rebooted the machine after putting it together. Total required maintenance effort on my part since then is zero, besides “sudo update && sudo apt -y upgrade” now and then.
Why do we use Linux? Because we have work to do.