From 63f28cad3e9b7a899606f9cf85f8e649b92b0b89 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Fri, 12 Apr 2019 14:45:53 +0200 Subject: [PATCH] tmpfiles: split tmp.conf out tmp.conf was dealing with 2 different kind of paths: one dealing with general temporary paths such as /var/tmp and /tmp and the other one dealing with temporary directories owned by systemd. If for example a user wants to adjust the age argument of the general paths only, he had to overload the whole file which is cumbersome and error prone since any future changes in tmp.conf shipped by systemd will be lost. So this patch splits out tmp.conf so the systemd directories are dealt separately in a dedicated conf file. It's named "systemd-tmp.conf" based on the naming recommendation made in tmpfiles.d man page. In practice it shouldn't cause any regression since it's very unlikely that users override paths owned by systemd. --- tmpfiles.d/meson.build | 1 + tmpfiles.d/systemd-tmp.conf | 18 ++++++++++++++++++ tmpfiles.d/tmp.conf | 10 ---------- 3 files changed, 19 insertions(+), 10 deletions(-) create mode 100644 tmpfiles.d/systemd-tmp.conf diff --git a/tmpfiles.d/meson.build b/tmpfiles.d/meson.build index 35eea2be5c..b94a9d0f47 100644 --- a/tmpfiles.d/meson.build +++ b/tmpfiles.d/meson.build @@ -6,6 +6,7 @@ tmpfiles = [['home.conf', ''], ['journal-nocow.conf', ''], ['systemd-nologin.conf', ''], ['systemd-nspawn.conf', 'ENABLE_MACHINED'], + ['systemd-tmp.conf', ''], ['portables.conf', 'ENABLE_PORTABLED'], ['tmp.conf', ''], ['x11.conf', ''], diff --git a/tmpfiles.d/systemd-tmp.conf b/tmpfiles.d/systemd-tmp.conf new file mode 100644 index 0000000000..beb77dd0e0 --- /dev/null +++ b/tmpfiles.d/systemd-tmp.conf @@ -0,0 +1,18 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +# See tmpfiles.d(5) for details + +# Exclude namespace mountpoints created with PrivateTmp=yes +x /tmp/systemd-private-%b-* +X /tmp/systemd-private-%b-*/tmp +x /var/tmp/systemd-private-%b-* +X /var/tmp/systemd-private-%b-*/tmp + +# Remove top-level private temporary directories on each boot +R! /tmp/systemd-private-* +R! /var/tmp/systemd-private-* diff --git a/tmpfiles.d/tmp.conf b/tmpfiles.d/tmp.conf index 22555a0076..fe5225d751 100644 --- a/tmpfiles.d/tmp.conf +++ b/tmpfiles.d/tmp.conf @@ -10,13 +10,3 @@ # Clear tmp directories separately, to make them easier to override q /tmp 1777 root root 10d q /var/tmp 1777 root root 30d - -# Exclude namespace mountpoints created with PrivateTmp=yes -x /tmp/systemd-private-%b-* -X /tmp/systemd-private-%b-*/tmp -x /var/tmp/systemd-private-%b-* -X /var/tmp/systemd-private-%b-*/tmp - -# Remove top-level private temporary directories on each boot -R! /tmp/systemd-private-* -R! /var/tmp/systemd-private-*