Our great sponsors
-
kanagawa.nvim
NeoVim dark colorscheme inspired by the colors of the famous painting by Katsushika Hokusai.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Systemd uses a cgroup to track the processes started by each connection, which makes sense. However, in 2016, Systemd changed the default value of KillUserProcesses to yes. As a result, when an SSH connection is dropped, the entire cgroup is sent SIGTERM instead of being sent SIGHUP. The only reason that this this didn't impact most users is because distro maintainers stepped in and overrode the systemd default to keep KillUserProcesses=no.
I've recently learned to love Kanagawa and now use it everywhere.
There was also a huge amount of flak because systemd started raising bug reports (e.g. tmux github issue and Hacker News discussion) saying that because systemd changed to a completely unreasonable default, everybody else should now update to the blessed and systemd-approved method for having persistent processes. And this all arose because some GNOME processes had inappropriately started using SIGHUP to indicate refreshing of resources instead of a HangUP, which led to GNOME failing to respond and propagate to children the actual SIGHUP being sent, which led to systemd developers deciding that the best way to fix that was by using the user-process groups to send SIGTERM instead of SIGHUP.
Related posts
- Ubuntu 24.04 (and Debian) removed libsystemd from SSH server dependencies
- Systemd minimizing required dependencies for libsystemd
- Going in circles without a real-time clock
- Excellent succinct breakdown of the xz mess, from an OpenBSD developer
- What we know about the xz Utils backdoor that almost infected the world