Recently I’ve been writing code to spawn child processes that had to deal with the POSIX functions for querying and manipulating environment variables. I’ve only just realised how truly awful this interface is in the context of modern multi-threaded applications, and this post is simply me sharing the pain.
I finally took a little time to get my head around POSIX process groups and sessions.
If you have the luxury of migrating your Linux installation to a new hard disk before the old one packs up entirely, it’s quite easily done with standard tools.
File capabilities offer a secure alternative to SUID executables, but can be a little confusing at first.
How to share pthreads primitives across processes.
Ubuntu’s apport
service is less then helpful for developers — learn how to disable it.
Expanding a substring of “$*” in bash seems to magically add command-line parameter zero.