X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Ftmpfiles.d.xml;h=343fad163c6c6371b91cb0588bcae73453b7d094;hp=9fc4b7cd8f9ad47a592cf9d9bb5475cb0bb69325;hb=d86dd07d462fb8502b1c7b4a9a4df4fba8318bdd;hpb=265ffa1e05acf12769a64d0734fd2472237c03c5 diff --git a/man/tmpfiles.d.xml b/man/tmpfiles.d.xml index 9fc4b7cd8..343fad163 100644 --- a/man/tmpfiles.d.xml +++ b/man/tmpfiles.d.xml @@ -61,29 +61,55 @@ temporary files and directories which usually reside in directories such as /run or /tmp. + + Volatile and temporary files and directories are + those located in /run (and its + alias /var/run), + /tmp, + /var/tmp, the API file systems + such as /sys or + /proc, as well as some other + directories below /var. + + System daemons frequently require private + runtime directories below /run to + place communication sockets and similar in. For these + consider declaring them in their unit files using + RuntimeDirectory= + (see systemd.exec5 for details), + if this is feasible. Configuration Format Each configuration file shall be named in the - style of <package>.conf. - Files in /etc/ override files - with the same name in /usr/lib/ - and /run/. Files in - /run/ override files with the same - name in /usr/lib/. Packages + style of + package.conf + or + package-part.conf. + The second variant should be used when it is desirable + to make it easy to override just this part of + configuration. + + Files in /etc/tmpfiles.d + override files with the same name in + /usr/lib/tmpfiles.d and + /run/tmpfiles.d. Files in + /run/tmpfiles.d override files + with the same name in + /usr/lib/tmpfiles.d. Packages should install their configuration files in - /usr/lib/. Files in - /etc/ are reserved for the local - administrator, who may use this logic to override the - configuration files installed by vendor packages. All - configuration files are sorted by their filename in - lexicographic order, regardless in which of the - directories they reside. If multiple files specify the - same path, the entry in the file with the lexicographically - earliest name will be applied, all all other conflicting - entries logged as errors. + /usr/lib/tmpfiles.d. Files in + /etc/tmpfiles.d are reserved for + the local administrator, who may use this logic to + override the configuration files installed by vendor + packages. All configuration files are sorted by their + filename in lexicographic order, regardless of which + of the directories they reside in. If multiple files + specify the same path, the entry in the file with the + lexicographically earliest name will be applied, all + all other conflicting entries logged as errors. If the administrator wants to disable a configuration file supplied by the vendor, the @@ -93,28 +119,30 @@ same filename. The configuration format is one line per path - containing action, path, mode, ownership, age and argument + containing type, path, mode, ownership, age, and argument fields: - Type Path Mode UID GID Age Argument + #Type Path Mode UID GID Age Argument d /run/user 0755 root root 10d - L /tmp/foobar - - - - /dev/null - Type + The type consists of a single letter and + optionally an exclamation mark. + The following line types are understood: f - Create a file if it does not exist yet (optionally writing a short string into it, if the argument parameter is passed) + Create a file if it does not exist yet. If the argument parameter is given, it will be written to the file. F - Create or truncate a file (optionally writing a short string into it, if the argument parameter is passed) + Create or truncate a file. If the argument parameter is given, it will be written to the file. @@ -127,42 +155,42 @@ L /tmp/foobar - - - - /dev/null d - Create a directory if it does not exist yet + Create a directory if it does not exist yet. D - Create or empty a directory + Create or empty a directory. p - Create a named pipe (FIFO) if it does not exist yet + Create a named pipe (FIFO) if it does not exist yet. L - Create a symlink if it does not exist yet + Create a symlink if it does not exist yet. c - Create a character device node if it does not exist yet + Create a character device node if it does not exist yet. b - Create a block device node if it does not exist yet + Create a block device node if it does not exist yet. m If the - specified file path exists + specified file path exists, adjust its access mode, group and user to the specified values and reset the SELinux - label. If it doesn't exist do + security context. If it does not exist, do nothing. @@ -174,38 +202,45 @@ L /tmp/foobar - - - - /dev/null as controlled with the Age parameter. Note that lines of this type do not influence the - effect of r or R lines. Lines - of this type accept + effect of r + or R lines. + Lines of this type accept shell-style globs in place of - normal path - names. + normal path names. + X Ignore a path - during cleanup. Use this type - to prevent path removal as - controlled with the Age parameter. - Note that if path is a directory, - content of a directory is not - excluded from clean-up, only - directory itself. Lines of this - type accept shell-style globs - in place of normal path - names. + during cleaning. Use this type + to exclude paths from clean-up + as controlled with the Age + parameter. Unlike + x, this + parameter will not exclude the + content if path is a + directory, but only directory + itself. Note that lines of + this type do not influence the + effect of r + or R lines. + Lines of this type accept + shell-style globs in place of + normal path names. + r Remove a file - or directory if it - exists. This may not be used - to remove non-empty - directories, use R for - that. Lines of this type - accept shell-style globs in - place of normal path + or directory if it exists. + This may not be used to remove + non-empty directories, use + R for that. + Lines of this type accept + shell-style globs in place of + normal path names. @@ -223,7 +258,7 @@ L /tmp/foobar - - - - /dev/null z Restore - SELinux security context label + SELinux security context and set ownership and access mode of a file or directory if it exists. Lines of this type @@ -236,7 +271,7 @@ L /tmp/foobar - - - - /dev/null Z Recursively restore SELinux security - context label and set + context and set ownership and access mode of a path and all its subdirectories (if it is a @@ -246,6 +281,26 @@ L /tmp/foobar - - - - /dev/null names. + + If the exclamation mark is used, this + line is only safe of execute during boot, and + can break a running system. Lines without the + exclamation mark are presumed to be safe to + execute at any time, e.g. on package upgrades. + systemd-tmpfiles will + execute line with an exclamation mark only if + option is given. + + + For example: + # Make sure these are created by default so that nobody else can +d /tmp/.X11-unix 1777 root root 10d + +# Unlink the X11 lock files +r! /tmp/.X[0-9]*-lock + The second line in contrast to the first one + would break a running system, and will only be + executed with . @@ -305,11 +360,14 @@ L /tmp/foobar - - - - /dev/null The file access mode to use when creating this file or directory. If omitted or when set to -, the default is used: 0755 for - directories, 0644 for all other file - objects. For z, Z lines, if omitted or when set - to -, the file access mode will not be - modified. This parameter is ignored for x, r, - R, L lines. + directories, 0644 for all other file objects. + For z, Z + lines, if omitted or when set to + -, the file access mode + will not be modified. This parameter is + ignored for x, + r, R, + L lines. @@ -318,10 +376,15 @@ L /tmp/foobar - - - - /dev/null The user and group to use for this file or directory. This may either be a numeric user/group ID or a user or group name. If - omitted or when set to -, the default 0 (root) - is used. For z, Z lines, when omitted or when set to -, - the file ownership will not be modified. - These parameters are ignored for x, r, R, L lines. + omitted or when set to -, + the default 0 (root) is used. For + z, Z + lines, when omitted or when set to -, the file + ownership will not be modified. These + parameters are ignored for + x, r, + R, L + lines. @@ -354,28 +417,37 @@ L /tmp/foobar - - - - /dev/null When the age is set to zero, the files are cleaned unconditionally. - The age field only applies to lines starting with - d, D and x. If omitted or set to -, no automatic clean-up - is done. + The age field only applies to lines + starting with d, + D, and + x. If omitted or set to + -, no automatic clean-up is + done. If the age field starts with a tilde - character (~), the clean-up is only applied to - files and directories one level inside the - directory specified, but not the files and - directories immediately inside it. + character ~, the clean-up + is only applied to files and directories one + level inside the directory specified, but not + the files and directories immediately inside + it. Argument - For L lines determines the destination - path of the symlink. For c, b determines the + For L lines + determines the destination path of the + symlink. For c, + b determines the major/minor of the device node, with major and - minor formatted as integers, separated by :, - e.g. "1:3". For f, F, w may be used to specify - a short string that is written to the file, - suffixed by a newline. Ignored for all other - lines. + minor formatted as integers, separated by + :, e.g. + 1:3. For + f, F, + and w may be used to + specify a short string that is written to the + file, suffixed by a newline. Ignored for all + other lines. @@ -386,8 +458,8 @@ L /tmp/foobar - - - - /dev/null /etc/tmpfiles.d/screen.conf example screen needs two directories created at boot with specific modes and ownership. - d /var/run/screens 1777 root root 10d -d /var/run/uscreens 0755 root root 10d12h + d /run/screens 1777 root root 10d +d /run/uscreens 0755 root root 10d12h /etc/tmpfiles.d/abrt.conf example @@ -403,7 +475,8 @@ x /var/tmp/abrt/* systemd1, systemd-tmpfiles8, - systemd-delta1 + systemd-delta1, + systemd.exec5