From bf7d3153c925ca1404662a8fe031da27308f4187 Mon Sep 17 00:00:00 2001 From: "Michael H. Warfield" Date: Thu, 15 Aug 2013 13:57:50 -0400 Subject: [PATCH] lxc-fedrora: New patch for systemd detection and init configuration. Satoshi Matsumoto certainly had the right idea and in spotting a bug in the lxc-fedora template for systemd detection. Heart was in the right spot but patch was not what we needed. I've looked the patch code over for systemd support and init/upstart support and modified the logic appropriately. If /etc/systemd/system exists, we'll do the right thing by systemd. If /etc/rc.sysinit exists, we'll do the right thing by init / upstart. If both are installed, we'll trying and accommodate both in case someone is playing games with the two (I've done this). Patch was trivial, just took more time to actually test it and create some containers with it and verify them, than it did to code them. Signed-off-by: Michael H. Warfield Signed-off-by: Serge Hallyn --- templates/lxc-fedora.in | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/templates/lxc-fedora.in b/templates/lxc-fedora.in index 23728c6bd..841af161c 100644 --- a/templates/lxc-fedora.in +++ b/templates/lxc-fedora.in @@ -567,13 +567,20 @@ if [ $? -ne 0 ]; then exit 1 fi -type /bin/systemd >/dev/null 2>&1 -if [ $? -ne 0 ]; then - configure_fedora_init -else +# If the systemd configuration directory exists - set it up for what we need. +if [ -d ${rootfs_path}/etc/systemd/system ] +then configure_fedora_systemd fi +# This configuration (rc.sysinit) is not inconsistent with the systemd stuff +# above and may actually coexist on some upgraded systems. Let's just make +# sure that, if it exists, we update this file, even if it's not used... +if [ -f ${rootfs_path}/etc/rc.sysinit ] +then + configure_fedora_init +fi + if [ ! -z $clean ]; then clean || exit 1 exit 0 -- 2.47.2