From: Russ Allbery Date: Fri, 13 Jan 2012 17:21:28 +0000 (-0800) Subject: Merge branch 'master' into bug498300-rra X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=bec143010dd02798dbb7b6fa26d754a476cf0166;hp=f39fe9d4bc04304a4f7f561169892faa4a4f6c5e;p=debian%2Fdebian-policy.git Merge branch 'master' into bug498300-rra --- diff --git a/debian/changelog b/debian/changelog index bdcb016..3dcb3c4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -25,6 +25,11 @@ debian-policy (3.9.3.0) UNRELEASED; urgency=low Seconded: Cyril Brulebois Seconded: Raphaël Hertzog Closes: #23712 + * Policy: Add /run FHS exception, clarify rules for /run and /var/run + Wording: Russ Allbery + Seconded: Steve Langasek + Seconded: Roger Leigh + Closes: #620870, #532120 * MIME Policy: Retire this document and merge it with Policy Wording: Ben Finney Seconded: Russ Allbery @@ -54,6 +59,8 @@ debian-policy (3.9.3.0) UNRELEASED; urgency=low * Clarify that packages in main may not declare Pre-Depends or Build-Depends-Indep relationships outside of main either. Partly addresses #587279. + * Fix typo in the version numbers in the dpkg-divert examples. Thanks, + Slavko. * Add the release date of 3.9.2.0 to upgrading-checklist. * Fix ordering of the last entries in the 3.9.2.0 upgrading-checklist. * Fix typo in upgrading-checklist entry for multiarch paths. Thanks, diff --git a/policy.sgml b/policy.sgml index 0f1dbf9..23c1913 100644 --- a/policy.sgml +++ b/policy.sgml @@ -6246,6 +6246,25 @@ install -m644 debian/shlibs.package debian/package/DEBIAN/ symlinked there, is relaxed to a recommendation.

+ +

+ The additional directory /run in the root + file system is allowed. /run + replaces /var/run, and the + subdirectory /run/lock + replaces /var/lock, with + the /var directories replaced by symlinks + for backwards compatibility. /run + and /run/lock must follow all of the + requirements in the FHS for /var/run + and /var/lock, respectively, such as file + naming conventions, file format requirements, or the + requirement that files be cleared during the boot + process. Files and directories residing + in /run should be stored on a temporary + file system. +

+

The following directories in the root filesystem are @@ -6388,6 +6407,29 @@ rmdir /usr/local/share/emacs 2>/dev/null || true though the spool may still be physically located there.

+ + + /run and /run/lock + +

+ The directory /run is cleared at boot, normally + by being a mount point for a temporary file system. Packages + therefore must not assume that any files or directories + under /run other than /run/lock + exist unless the package has arranged to create those files or + directories since the last reboot. Normally, this is done by + the package via an init script. See + for more information. +

+ +

+ Packages must not include files or directories + under /run, or under the + older /var/run and /var/lock paths. + The latter paths will normally be symlinks or other + redirections to /run for backwards compatibility. +

+
@@ -6762,15 +6804,14 @@ test -f program-executed-later-in-script || exit 0

- /var/run and /var/lock may be mounted - as temporary filesystems - For example, using the RAMRUN and RAMLOCK - options in /etc/default/rcS. - , so the init.d scripts must handle this - correctly. This will typically amount to creating any required - subdirectories dynamically when the init.d script - is run, rather than including them in the package and relying on - dpkg to create them. + Files and directories under /run, including ones + referred to via the compatibility paths /var/run + and /var/lock, are normally stored on a temporary + filesystem and are normally not persistent across a reboot. + The init.d scripts must handle this correctly. + This will typically mean creating any required subdirectories + dynamically when the init.d script is run. + See for more information.

@@ -11328,7 +11369,7 @@ END-INFO-DIR-ENTRY dpkg-divert --package smailwrapper --remove --rename \ --divert /usr/sbin/smail.real /usr/sbin/smail fi - where 1.02-2 is the version at which the + where 1.0-2 is the version at which the diversion was first added to the package. The postrm should not remove the diversion on upgrades both because there's no reason to remove the diversion only to immediately re-add it and since the diff --git a/upgrading-checklist.sgml b/upgrading-checklist.sgml index dc62283..88c1950 100644 --- a/upgrading-checklist.sgml +++ b/upgrading-checklist.sgml @@ -49,6 +49,21 @@ Unreleased. now contain the value any all for source packages building both architecture-independent and architecture-dependent packages.
+9.1.1 + /run is allowed as an exception to the FHS and + replaces /var/run. /run/lock + replaces /var/lock. The FHS requirements for the older + directories apply to these directories as well. Backward compatibility + links will be maintained and packages need not switch to + referencing /run directly yet. Files in /run + should be stored in a temporary file system. + +9.1.4 + New section spelling out the requirements for packages that use + files in /run, /var/run, + or /var/lock. This generalizes information previously only + in 9.3.2. + 9.5 Cron job file names must not contain . or + or they will be ignored by cron. They should replace those characters