summaryrefslogtreecommitdiff
path: root/units
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2011-03-25 05:07:20 +0100
committerLennart Poettering <lennart@poettering.net>2011-03-28 23:00:00 +0200
commit2b583ce6576d4a074ce6f1570b3e60b65c64ae7d (patch)
treec5cfa0138219cc79a6412bb69abe13ece385009c /units
parent37f85e66e8f396b6f758e063531b95531aef628e (diff)
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
Diffstat (limited to 'units')
-rw-r--r--units/fsck-root.service.in2
-rw-r--r--units/plymouth-start.service2
-rw-r--r--units/systemd-ask-password-console.path2
-rw-r--r--units/systemd-ask-password-plymouth.path2
-rw-r--r--units/systemd-ask-password-wall.path2
-rw-r--r--units/systemd-logger.socket2
-rw-r--r--units/systemd-shutdownd.socket2
-rw-r--r--units/var-lock.mount8
-rw-r--r--units/var-run.mount4
9 files changed, 15 insertions, 11 deletions
diff --git a/units/fsck-root.service.in b/units/fsck-root.service.in
index ae6ea924a2..8f4adc48e0 100644
--- a/units/fsck-root.service.in
+++ b/units/fsck-root.service.in
@@ -12,7 +12,7 @@ After=systemd-readahead-collect.service systemd-readahead-replay.service
Before=local-fs.target shutdown.target remount-rootfs.service quotacheck.service
# Dracut informs us with this flag file if the root fsck was already run
-ConditionPathExists=!/dev/.run/initramfs/root-fsck
+ConditionPathExists=!/run/initramfs/root-fsck
[Service]
Type=oneshot
diff --git a/units/plymouth-start.service b/units/plymouth-start.service
index 4ef2bcc020..eb336e619e 100644
--- a/units/plymouth-start.service
+++ b/units/plymouth-start.service
@@ -13,7 +13,7 @@ After=systemd-vconsole-setup.service udev-settle.service
Before=systemd-ask-password-plymouth.service
# Dracut informs us with this flag file if plymouth is already running
-ConditionPathExists=!/dev/.run/initramfs/plymouth
+ConditionPathExists=!/run/initramfs/plymouth
[Service]
ExecStart=/sbin/plymouthd --mode=boot
diff --git a/units/systemd-ask-password-console.path b/units/systemd-ask-password-console.path
index ac76fc170e..4005a27734 100644
--- a/units/systemd-ask-password-console.path
+++ b/units/systemd-ask-password-console.path
@@ -12,4 +12,4 @@ Conflicts=shutdown.target
Before=basic.target shutdown.target
[Path]
-DirectoryNotEmpty=/dev/.run/systemd/ask-password
+DirectoryNotEmpty=/run/systemd/ask-password
diff --git a/units/systemd-ask-password-plymouth.path b/units/systemd-ask-password-plymouth.path
index b339b5e261..a2aec44122 100644
--- a/units/systemd-ask-password-plymouth.path
+++ b/units/systemd-ask-password-plymouth.path
@@ -12,4 +12,4 @@ Conflicts=shutdown.target systemd-ask-password-console.path systemd-ask-password
Before=basic.target shutdown.target
[Path]
-DirectoryNotEmpty=/dev/.run/systemd/ask-password
+DirectoryNotEmpty=/run/systemd/ask-password
diff --git a/units/systemd-ask-password-wall.path b/units/systemd-ask-password-wall.path
index c277563b74..7a883d5af8 100644
--- a/units/systemd-ask-password-wall.path
+++ b/units/systemd-ask-password-wall.path
@@ -12,4 +12,4 @@ Conflicts=shutdown.target
Before=basic.target shutdown.target
[Path]
-DirectoryNotEmpty=/dev/.run/systemd/ask-password
+DirectoryNotEmpty=/run/systemd/ask-password
diff --git a/units/systemd-logger.socket b/units/systemd-logger.socket
index 5cf6a9b0bf..9b2d202f2b 100644
--- a/units/systemd-logger.socket
+++ b/units/systemd-logger.socket
@@ -13,4 +13,4 @@ DefaultDependencies=no
Before=sockets.target
[Socket]
-ListenStream=/dev/.run/systemd/logger
+ListenStream=/run/systemd/logger
diff --git a/units/systemd-shutdownd.socket b/units/systemd-shutdownd.socket
index 6faf36f0e2..b30a6657cf 100644
--- a/units/systemd-shutdownd.socket
+++ b/units/systemd-shutdownd.socket
@@ -13,4 +13,4 @@ DefaultDependencies=no
Before=sockets.target
[Socket]
-ListenDatagram=/dev/.run/systemd/shutdownd
+ListenDatagram=/run/systemd/shutdownd
diff --git a/units/var-lock.mount b/units/var-lock.mount
index 0ea2599b71..80e1bab261 100644
--- a/units/var-lock.mount
+++ b/units/var-lock.mount
@@ -8,9 +8,11 @@
[Unit]
Description=Lock Directory
Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/lock
[Mount]
-What=tmpfs
+What=/run/lock
Where=/var/lock
-Type=tmpfs
-Options=mode=775,gid=lock,nosuid,nodev,noexec
+Type=bind
+Options=bind
diff --git a/units/var-run.mount b/units/var-run.mount
index cd3889ebce..c513dfecd2 100644
--- a/units/var-run.mount
+++ b/units/var-run.mount
@@ -8,9 +8,11 @@
[Unit]
Description=Runtime Directory
Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/run
[Mount]
-What=/dev/.run
+What=/run
Where=/var/run
Type=bind
Options=bind