WireGuard Setup

Setting up WireGuard end to end: interface, key pairs, IP forwarding, config files and a systemd unit for auto start.

Extract TLD from string by bash

Extracting the registrable domain in bash with a short awk expression, so .com and .co.uk both come out right.

Amazon SES with Postfix in Ubuntu

Relaying mail through Amazon SES from Postfix on Ubuntu, filling in the steps the AWS documentation leaves out.

Lets Encrypt nginx SSL certificate renewal via cron

Renewing a Let's Encrypt certificate from cron with the webroot plugin, the matching nginx SSL block, and a stronger dhparam.

rpmlib(FileDigests) / rpmlib(PayloadIsXz) is needed

Installing a CentOS 6 built RPM on CentOS 5: rebuild it with rpmrebuild and the older file digest and payload macros.

gnu parallel

GNU Parallel's citation notice, what --bibtex actually prints, and how to make it stop.

Disable msi with minimal interruption

Disabling MSI on a bnx2 NIC by reloading the module with disable_msi=1 while keeping the link up, including the bonded interface case.

3TB partition support in Linux

Making a 3TB disk usable in Linux with a GPT label under parted and ext4 with 1% reservation, plus the HP array controller catch.

How to increase VM disk size without re-deploy the machine

Growing a Linux VM disk in place with a new partition, pvcreate, vgextend, lvextend and resize2fs, with no redeploy.

Fix Hadoop leap second bug without rebooting

The 2012 leap second pinned Hadoop nodes at 100% CPU. Resetting the clock with date and restarting ntpd fixes it without a reboot.

Facebook scribe with hdfs

Build order and configure flags for compiling Facebook Scribe with HDFS support: boost, thrift, fb303, then scribe itself.