1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-07 01:27:11 +03:00
Commit Graph

11 Commits

Author SHA1 Message Date
Kay Sievers
2b583ce657 use /run instead of /dev/.run
Instead of the /dev/.run trick we have currently implemented, we decided
to move the early-boot runtime dir to /run.

An existing /var/run directory is bind-mounted to /run. If /var/run is
already a symlink, no action is taken.

An existing /var/lock directory is bind-mounted to /run/lock.
If /var/lock is already a symlink, no action is taken.

To implement the directory vs. symlink logic, we have a:
  ConditionPathIsDirectory=
now, which is used in the mount units.

Skipped mount unit in case of symlink:
  $ systemctl status var-run.mount
  var-run.mount - Runtime Directory
    Loaded: loaded (/lib/systemd/system/var-run.mount)
    Active: inactive (dead)
            start condition failed at Fri, 25 Mar 2011 04:51:41 +0100; 6min ago
     Where: /var/run
      What: /run
    CGroup: name=systemd:/system/var-run.mount

The systemd rpm needs to make sure to add something like:
  %pre
  mkdir -p -m0755 /run >/dev/null 2>&1 || :
or it needs to be added to filesystem.rpm.

Udev -git already uses /run if that exists, and is writable at bootup.
Otherwise it falls back to the current /dev/.udev.

Dracut and plymouth need to be adopted to switch from /dev/.run to run
too.

Cheers,
Kay
2011-03-28 23:00:00 +02:00
Lennart Poettering
cc5524ecc6 mount: use /dev/.run as an early boot alias for /var/run
During early boot, mount a tmpfs to /dev/.run and then bind mount it to
/var/run as soon as /var is available.

This makes it possible for programs involved in early boot to put
runtime data in /dev/.run which later on will show up in /var/run like
any other.

This can be used to solve the early-boot D-Bus problem: D-Bus may start
up with its socket bound to /dev/.run/dbus/system_bus_socket and after
/var it will also be available under the traditional name
/var/run/dbus/system_bus_socket.

This also is intended to be used as a better place for systemd, mount,
mdadm, blkid, plymouth, bootchart and dracut runtime data, which is
currently stored in various places in /dev/.xxx.
2011-03-09 02:51:45 +01:00
Lennart Poettering
a55c7d2ea0 mount: add nosuid,nodev,noexec switches to /var/lock and /var/run 2010-10-25 23:28:42 +02:00
Kay Sievers
65ae3821ff units: enable var-run + var-lock service by default 2010-09-21 21:43:40 +02:00
Kay Sievers
322198005a units: add missing After= for var-run.service, var-lock.service 2010-08-17 14:01:12 +02:00
Kay Sievers
3c268bdf8a units: add var-run.service var-lock.service 2010-08-17 10:17:42 +02:00
Lennart Poettering
bb4f237c65 units: fix default mode of /var/run and /var/lock 2010-07-16 18:58:52 +02:00
Lennart Poettering
3d88bf660d unit: add [Install] section to various service files 2010-06-18 21:56:21 +02:00
Lennart Poettering
dfca381db3 shorten copyright header of configuration files 2010-05-19 22:14:29 +02:00
Lennart Poettering
710bd14347 units: fix syntax of mount unit files 2010-05-18 04:17:05 +02:00
Lennart Poettering
670802d4b1 units: replace a few non-essential API mounts with automount units 2010-05-18 03:10:17 +02:00