Changelog
sysvinit (2.88dsf-13.3) experimental; urgency=low
[ Roger Leigh ] * Non-maintainer upload. * Support for new top-level directory /run to replace /var/run, /var/lock, /dev/shm and /lib/init/rw as a place to store transient writable data which should not be preserved across a system reboot (Closes: #186892, #616571, #620191). /run fixes existing issues with RAMRUN and RAMLOCK options using tmpfs on /var/run and /var/lock (Closes: #423405, #481546, #564635, #607136, #620735). Additionally, /run/shm replaces /dev/shm and may share the same tmpfs as /run if RAMSHM is set to "no" in /etc/default/rcS. /tmp may also be configured to be a tmpfs if RAMTMP is set to "yes" in /etc/default/rcS. /tmp may also be configured to use /run directly if it is symlinked to /run/tmp, for example. Summary: /var/run → /run /var/lock → /run/lock /dev/shm → /run/shm /lib/init/rw → /run (not transitioned automatically) /dev/.* → /run (not transitioned automatically) These changes do not take effect until the system is rebooted as is currently done for /lib/init/rw setup. Prior to a reboot, the paths are made available via bind/nullfs/firmlink mounts, depending on the platform. Following a reboot, the old paths will be converted to symlinks, or bind/nullfs/firmlink mounts where symlinking is not possible, to allow access via either the old or new paths, to permit programs using the old paths to transition to use the new paths for wheezy. - debian/initscripts.postinst: Take chroot detection logic from udev postinst (existing logic was broken). Add detection logic for vserver environments and Hurd. Trigger reboot to complete transition. If the system has not yet transitioned to a tmpfs-based /run, set up bind mounts as follows: /var/run → /run /var/lock → /run/lock /dev/shm → /run/shm On reboot, the system will complete the migration to a tmpfs-based /run; this creates the directory heierachy from the old paths to enable the use of the new /run paths prior to a restart. This means packages may transition to using /run with a versioned dependency upon initscripts. Remove special handling for RAMRUN and RAMLOCK, which is now taken care of by /run. If in a chroot environment, just create symlinks from the new names to the existing locations, since otherwise the changes would be lost, and since rcS scripts aren't run the transition won't complete. - debian/src/initscripts/Makefile: Provide top-level /run. - debian/src/initscripts/doc/README.Debian: Document new use of RUN_SIZE and LOCK_SIZE. Document use of /run rather than /lib/init/rw. Document use of SHM_SIZE and TMP_SIZE. - debian/src/initscripts/etc/init.d/checkroot.sh: Use /run in place of /lib/init/rw. - debian/src/initscripts/etc/default/tmpfs: Document TMPFS_SIZE, RUN_SIZE and LOCK_SIZE (Closes: #483643). Document TMP_SIZE and SHM_SIZE. - debian/src/initscripts/etc/init.d/mountkernfs.sh: Create /run, /run/sendsigs.omit.d and /run/lock. Mount /run/lock as a separate tmpfs if RAMLOCK=yes. /run/lock has 01777 permissions to match /var/lock. Mount /tmp as a separate tmpfs if RAMTMP=yes or / is being mounted read-only (Closes: #503805, #585543). Drop mounting of /var/run and /var/lock. - debian/src/initscripts/etc/init.d/mountdevsubfs.sh: Create /run/shm. Mount /run/shm as a separate tmpfs if RAMSHM=yes. - debian/src/initscripts/etc/init.d/mtab.sh: domtab mirrors behaviour of domount in mount-functions exactly, to prevent duplicate mounts (required for bind mount support). Bind mount /run/init and drop mounting of /var/run. Mount /run/lock in place of /var/lock. Mount /tmp if RAMTMP=yes. Mount /run/shm if RAMSHM=yes. - debian/src/initscripts/etc/init.d/sendsigs: Use new paths: files: /run/sendsigs.omit /lib/init/rw/sendsigs.omit dirs: /run/sendsigs.omit.d/ /lib/init/rw/sendsigs.omit.d/ - debian/src/initscripts/etc/init.d/umountfs: Ignore /run. Continue to ignore /lib/init/rw in order to handle clean shutdown. No longer ignore /var/run and /var/lock. - debian/src/initscripts/etc/init.d/umountnfs.sh: Check for presence of .ramfs than configuration variable when skipping /var/run and /var/lock. Ignore /run. Continue to ignore /lib/init/rw in order to handle clean shutdown. No longer ignore /var/run and /var/lock. - debian/src/initscripts/lib/init/bootclean.sh Don't clean /var/run and /var/lock (Closes: #378776). Because these directories are now a tmpfs, cleaning no longer makes sense. - debian/src/initscripts/lib/init/tmpfs.sh: Read /etc/default/tmpfs and provide defaults if unset. - debian/src/initscripts/lib/init/mount-functions.sh: Support bind mounts in domount() (Closes: #353943). Drop support for mounting /var/run and /var/lock as separate tmpfs filesystems. Symlink /var/run to /run and /var/lock to /run/lock if possible. If /var/run and /var/lock are directories, attempt to remove and symlink if successful, or else bind mount. - debian/src/initscripts/lib/init/vars.sh: Read /etc/default/rcS and provide defaults if unset. - debian/src/initscripts/man/rcS.5: Drop documentation of RAMRUN. Update documentation for RAMLOCK (Closes: #406685). Document RAMTMP and RAMSHM. - debian/src/initscripts/share/default.rcS: Remove RAMRUN. Add RAMSHM and RAMTMP. RAMLOCK, RAMSHM and RAMTMP default to enabled for new installs. [ Michael Biebl ] * Remove dead usplash support code (Closes: #599241, #599734, #612594). [ Martin F. Krafft ] * Add comments to /etc/default/rcS (Closes: #530582). [ Samuel Thibault ] Hurd portability for initscripts postinst and init scripts. Hurd does not currently support tmpfs mounts, but will do in the future. Use firmlinks in place of bind mounts. -- Roger Leigh <email address hidden> Sat, 16 Apr 2011 01:17:29 +0100