From: Mark Korenberg Date: Sun, 18 Dec 2016 12:54:13 +0000 (+0500) Subject: Fix startup of Ceph cluster manager daemon on Debian 8 X-Git-Tag: v11.1.1~20^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2ccd02a838ee92ec0ba4c9800f61b7df159d75a1;p=ceph.git Fix startup of Ceph cluster manager daemon on Debian 8 Signed-off-by: Mark Korenberg --- diff --git a/systemd/ceph-mgr@.service b/systemd/ceph-mgr@.service index 6b81f21ac39d..4de0b8c2d9fa 100644 --- a/systemd/ceph-mgr@.service +++ b/systemd/ceph-mgr@.service @@ -14,9 +14,11 @@ Environment=CLUSTER=ceph # permissions to create the mgr key. Failure is ignored at every step (the # '-' prefix) in case someone has already used some other trick to set # everything up manually. -ExecStartPre=-/usr/bin/mkdir -p /var/lib/ceph/mgr/${CLUSTER}-%i -ExecStartPre=-/usr/bin/sh -c "[ -f /var/lib/ceph/mgr/${CLUSTER}-%i/keyring ] || /usr/bin/ceph-authtool --create-keyring --gen-key --name=mgr.%i /var/lib/ceph/mgr/${CLUSTER}-%i/keyring" -ExecStartPre=-/usr/bin/chown -R ceph.ceph /var/lib/ceph/mgr/${CLUSTER}-%i +# `sh -c "exec ..."` is required, since different Linux ditributives have different rules on absolute paths of that executables. +# systemd requires to use absoulte paths. +ExecStartPre=-/bin/sh -c "exec mkdir -p /var/lib/ceph/mgr/${CLUSTER}-%i" +ExecStartPre=-/bin/sh -c "[ -f /var/lib/ceph/mgr/${CLUSTER}-%i/keyring ] || /usr/bin/ceph-authtool --create-keyring --gen-key --name=mgr.%i /var/lib/ceph/mgr/${CLUSTER}-%i/keyring" +ExecStartPre=-/bin/sh -c "exec chown -R ceph.ceph /var/lib/ceph/mgr/${CLUSTER}-%i" ExecStartPre=-/usr/bin/ceph -i /var/lib/ceph/mgr/${CLUSTER}-%i/keyring auth add mgr.%i mon 'allow *' --keyring=/var/lib/ceph/mon/${CLUSTER}-%i/keyring --name=mon. ExecStart=/usr/bin/ceph-mgr -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup ceph ExecReload=/bin/kill -HUP $MAINPID