If foo@bar.service symlink is present, it is impossible to enable it: bor@opensuse:~> ll /run/systemd/system итого 8 lrwxrwxrwx 1 root root 32 авг 18 21:06 foo@bar.service -> /run/systemd/system/foo@.service -rwxr-xr-x 1 root root 1032 авг 18 21:06 foo@.service bor@opensuse:~> sudo systemctl enable foo@bar.service Failed to issue method call: No such file or directory bor@opensuse:~>
The problem is, unit_file_search() is called with allow_symlink=false when used in enable codepath, which means that every attempt to open will end up wither in ELOOP or ENOENT. At the end it exits with the last error (ENOENT in this case, but this obviously depends on in which directory symlink is created). Is it really intentional? I'm actually all for disallowing such symlinks :) but in this case at least meaningful error message is required. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel