When running ceph-disk trigger /dev/dm-1 with systemd, the path name is
translated into /dev/dm/1 because of systemd escape rules. Explicitly
translate - into \x2d for systemd to preserve the -.
It would be better to use systemd-escape
http://www.freedesktop.org/software/systemd/man/systemd-escape.html
but it does not appear to be generally available on CentOS 7 and
probably other distributions.
http://tracker.ceph.com/issues/13174 Fixes: #13174
Signed-off-by: Loic Dachary <ldachary@redhat.com>
###########################
def main_trigger(args):
+ LOG.debug("main_trigger: " + str(args))
if is_systemd() and not args.sync:
- service='ceph-disk@{dev}.service'.format(dev=args.dev)
+ # http://www.freedesktop.org/software/systemd/man/systemd-escape.html
+ escaped_dev = args.dev.replace('-', '\\x2d')
+ service='ceph-disk@{dev}.service'.format(dev=escaped_dev)
LOG.info('systemd detected, triggering %s' % service)
command(
[