Welcome to my blog! Expect posts about the web, live event and radio production, and whatever else I find interesting. Read more about me, or find my latest posts below.
A tool to design networks for entertainment venues
To finish my MSci Computer Science course at the University of St Andrews in 2024, I wrote a dissertation titled “A tool to design networks for entertainment venues”.
Continue reading “A tool to design networks for entertainment venues”
Mail-in-a-Box with IPv6 on Linode
Linode automatically assigns servers IPv6 addresses using SLAAC, but unlike the auto-assigned IPv4 addresses, you can’t transfer these addresses between Linodes. When running an email server with something like Mail-in-a-Box, this is a problem for updating to new major versions of the software or restoring to a new Linode from a backup. Ideally, you’d like to keep your IP addresses the same to minimise the amount of change during an update and to keep the good reputation you built with your address.
Continue reading “Mail-in-a-Box with IPv6 on Linode”
Symlinks to backup servers
Let’s say you want to backup some files on a server, but not clone the whole thing. Here’s a way to do it that’s nice and easy to maintain over time.
Continue reading “Symlinks to backup servers”
SSH as one user, get a terminal as another
I want to SSH into a server with one user account, but be presented with another user’s prompt — as if I connected and immediately ran sudo -su someone-else.
Continue reading “SSH as one user, get a terminal as another”
msmtp and Google's SMTP Relay Service
If you’re using msmtp to send email through Google’s SMTP Relay Service, you might get this error: “the server sent an empty reply”.
Continue reading “msmtp and Google's SMTP Relay Service”
Recursively set all file and folder permissions
Let’s say your current working directory is full of subdirectories and files. You want all the subdirectories to have one set of file permissions (say, 664), and all of the files to have a different set of permissions (for example, 775).
Continue reading “Recursively set all file and folder permissions”