Currently we use /run in various places, but we also still have the (now considered legacy) /var/run and /var/lock dirs. We should transition these directories to /run and /run/lock.
- Name: Colin Guthrie
- Email: firstname.lastname@example.org
QA will be needed to ensure the transition is smooth. Doing a transition on a running system is difficult as /var/run may be used for socket files and /var/lock may have locked files and thus any live adjustments are problematic.
- Targeted release: Mageia 3
- Last updated: 2012/06/05
- Percentage of completion: 90%
/var/run and /var/lock are cleaned out on every boot, so it is a natural transition to make them work with the /run filesystem which is tmpfs and is thus automatically "cleaned" on boot.
Why it would be good for Mageia to include it
It reduces the tasks and filesystem churn at boot. It also reduces disk hits when working with sockets for IPC (including dbus) which should speed up general usage (albeit in a very minor way).
Ensure that /var/run and /var/lock are symlinks.
Software / Packages Dependencies
- dracut: A module should be included to move any old directories out the way and add symlinks on boot prior to OS init.
- filesystem: Include symlinks by default (likely as a %post action with %ghost to allow for upgrades).
- all: All packages that include subdirs in /var/run for files (e.g. pid files) should be updated to ensure they include an appropriate tmpfiles.d snippet to ensure the folder is created on boot rather than being included in the package itself.
- all: All packages that refer to their pid files directly via /var/run... should be updated to use /run instead. This is not essential but longer term it would be nice to drop the /var/run symlinks completely.
What could disrupt development of this new feature
Nothing seems likely to disrupt this.
This is a relatively simple change, so the need for a contingency is unlikely, but if some fundamental issue crops up, the status quo should be OK.
This is now mostly complete although some packages still require updating to cope with the volatile nature of the /run filesystem (i.e. create files/folders on boot as needed.
The filesystem conversion happened as part of the Feature:UsrMove feature (see there for detailed instructions). Old directories are stored in /var/run.runmove~ and /var/lock.lockmove~ respectively. Administrators should check these folders and remove them assuming no non-packaged content remains inside.