systemd/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch
Marcus Meissner 28dd57258d Accepting request 176957 from home:fcrozat:branches:Base:System
- Update to release 204:
  + systemd-nspawn creates etc/resolv.conf in container if needed.
  + systemd-nspawn will store metadata about container in container
    cgroup including its root directory.
  + cgroup hierarchy has been reworked, all objects are now suffxed
    (with .session for user sessions, .user for users, .nspawn for
     containers). All cgroup names are now escaped to preven
     collision of object names.
  + systemctl list-dependencies gained --plain, --reverse, --after
    and --before switches.
  + systemd-inhibit shows processes name taking inhibitor lock.
  + nss-myhostname will now resolve "localhost" implicitly.
  + .include is not allowed recursively anymore and only in unit
    files. Drop-in files should be favored in most cases.
  + systemd-analyze gained "critical-chain" command, to get slowest
    chain of units run during boot-up.
  + systemd-nspawn@.service has been added to easily run nspawn
    container for system services. Just start
    "systemd-nspawn@foobar.service" and container from
    /var/lib/container/foobar" will be booted.
  + systemd-cgls has new --machine parameter to list processes from
    one container.
  + ConditionSecurity= can now check for apparmor and SMACK.
  + /etc/systemd/sleep.conf has been introduced to configure which
    kernel operation will be execute when "suspend", "hibernate" or
    "hybrid-sleep" is requrested. It allow new kernel "freeze"
    state to be used too. (This setting won't have any effect if
    pm-utils is installed).
  + ENV{SYSTEMD_WANTS} in udev rules will now implicitly escape
    passed argument if applicable.

OBS-URL: https://build.opensuse.org/request/show/176957
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=388
2013-05-29 15:26:40 +00:00

90 lines
2.5 KiB
Diff

From: Frederic Crozat <fcrozat@suse.com>
Date: Mon, 29 Oct 2012 13:01:20 +0000
Subject: restore /var/run and /var/lock bind mount if they aren't symlink
---
Makefile.am | 9 +++++++++
units/var-lock.mount | 19 +++++++++++++++++++
units/var-run.mount | 19 +++++++++++++++++++
3 files changed, 47 insertions(+)
create mode 100644 units/var-lock.mount
create mode 100644 units/var-run.mount
diff --git a/Makefile.am b/Makefile.am
index 8730f66..b8cf696 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -409,6 +409,12 @@ dist_systemunit_DATA = \
units/system-update.target \
units/initrd-switch-root.target
+if HAVE_SYSV_COMPAT
+dist_systemunit_DATA += \
+ units/var-run.mount \
+ units/var-lock.mount
+endif
+
nodist_systemunit_DATA = \
units/getty@.service \
units/serial-getty@.service \
@@ -4058,6 +4064,9 @@ RUNLEVEL4_TARGET_WANTS += \
systemd-update-utmp-runlevel.service
RUNLEVEL5_TARGET_WANTS += \
systemd-update-utmp-runlevel.service
+LOCAL_FS_TARGET_WANTS += \
+ var-run.mount \
+ var-lock.mount
endif
SHUTDOWN_TARGET_WANTS += \
systemd-update-utmp-shutdown.service
diff --git a/units/var-lock.mount b/units/var-lock.mount
new file mode 100644
index 0000000..07277ad
--- /dev/null
+++ b/units/var-lock.mount
@@ -0,0 +1,19 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Lock Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/lock
+ConditionPathIsSymbolicLink=!/var/lock
+
+[Mount]
+What=/run/lock
+Where=/var/lock
+Type=bind
+Options=bind
diff --git a/units/var-run.mount b/units/var-run.mount
new file mode 100644
index 0000000..ab4da42
--- /dev/null
+++ b/units/var-run.mount
@@ -0,0 +1,19 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Runtime Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/run
+ConditionPathIsSymbolicLink=!/var/run
+
+[Mount]
+What=/run
+Where=/var/run
+Type=bind
+Options=bind