Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#30213 - [networkmanager] Upper case letters in "NetworkManager.service" lead to strange systemd behavior

Attached to Project: Arch Linux
Opened by Bernhard Dunkl (bernhard_dunkl) - Saturday, 09 June 2012, 07:41 GMT
Last edited by Tom Gundersen (tomegun) - Thursday, 19 September 2013, 16:52 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

It seems that systemd is inconsistent when it comes to upper case letters in unit filenames like "NetworkManager.service":

output of "systemctl list-units --all":
...
networkmanager.service loaded active running networkmanager.service
...

systemctl start networkmanager.service -> works
systemctl enable networkmanager.service -> fails: "Failed to issue method call: No such file or directory"
systemctl enable NetworkManager.service -> works
This task depends upon

Closed by  Tom Gundersen (tomegun)
Thursday, 19 September 2013, 16:52 GMT
Reason for closing:  Upstream
Comment by Ionut Biru (wonder) - Saturday, 09 June 2012, 08:52 GMT
logically, since the name of the file is called NetworkManager.service. use it like that.
Comment by Nicolas Michel (sylock) - Wednesday, 15 August 2012, 15:32 GMT
  • Field changed: Percent Complete (100% → 0%)
It's not that simple. Today, there is a symbolic link networkmanager.service to NetworkManager.service

So when looking into /usr/lib/systemd/system I saw the one in lowercases and tried some times unsucessfully before searching on the net and find this bug report. So as said here I tried with the one with Uppercase and it worked.

So if the symbolic links are not working with systemd, please remove it :

ls -l networkmanager.service
lrwxrwxrwx 1 root root 22 Jun 15 21:21 networkmanager.service -> NetworkManager.service
[sylock@vboxnmi system]$ pwd
/usr/lib/systemd/system
[sylock@vboxnmi system]$ pacman -Qo networkmanager.service
networkmanager.service is owned by networkmanager 0.9.4.0-6


Comment by Tom Gundersen (tomegun) - Wednesday, 15 August 2012, 15:33 GMT
The symlink is there for compatibility, as the name changed from lowercase to uppercase. At some point this will go away, but at the moment I think we should keep this as it is as it prevents people from losing NetworkManager when rebooting with systemd.
Comment by Tom Gundersen (tomegun) - Wednesday, 15 August 2012, 15:33 GMT
(rebooting from initscripts to systemd, without doing any configuration)
Comment by Nicolas Michel (sylock) - Thursday, 16 August 2012, 07:27 GMT
I agree with that legacy symlink for the transition period but maybe it would be a good idea to open a bug report upstream in systemd?
Because that behavior is weird: starting the service with the symbolic link in lowercase works but add it to the boot process with "systemctl enable networkmanager.service" fails.

Maybe this is because a "systemctl enable" only add a symlink to the service definition file and because networkmanager.service is itself a symlink? So it would fails because a symlink of a symlink is not authorized?
In that cas this is an exclusive behavior of systemd because I tested and from an OS point of view, a symlink of a symlink do works.
Comment by David Benfell (n4rky) - Thursday, 16 August 2012, 19:26 GMT
Yes, my assumption is that my workaround will break when and if this is ever actually fixed.

Loading...