logoalt Hacker News

JdeBP08/11/20250 repliesview on HN

Outwith the world where only Debian and other Linux distributions exist, though, this isn't really systemd doing bad things to poor old Debian. To a wider world it is Debian and other Linux distributions exceedingly slowly reinventing things from Unix.

AIX had /usr/sbin/skulker from at least as early as version 1.2.

For AT&T System 5, Fielder and Hunter were popularizing a similar utility named rmtrash that is run nightly.

Fielder and Hunter exemplify traditional Unix thinking in their 1986 book on Unix system administration, which includes rmtrash:

> By putting all temporary files in one or two directories, it is easy to clean them all out at regular intervals. For this reason, it's a good idea to encourage users to use /tmp for all files they need only a short while.

skulker is not in the old comp.unix.aix Usenet FAQ document, but given the number of times "That's what skulker does, and you should be running it daily." seems to have been the answer over the years, it probably should have been. (-:

To old hands, this is not a systemd novelty at all. The novelty, to old hands, is the idea of doing this not using a script. I remember the war stories from the 1990s and turn of the 21st century when users did things like include LF in the names of temporary files, and administrators suddenly learned the utility of find -print0 and xargs -0 or find -exec rm {} +. Stéphane Chazelas for one has had a lot to say on the subject over the years.

That said, mtree (from 1989) already existed at the point that systemd-tmpfiles was invented, and already had the idea of working from a specification file with names and owners and permissions and whatnot. It is surprising that no-one ever apparently tried mtree for completely wiping /tmp. The BSDs are using find to this day in the several places with they auto-delete stuff in /tmp including the daily periodic, although they did spot that their own find had a -delete option in 1999. (-: Hell, even I am still using find.

https://github.com/freebsd/freebsd-src/blob/main/usr.sbin/pe...