Я не могу перезапустить сервисы как root на CentOS.
Unable to register authentication agent: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.PolicyKit1 was not provided by any .service files
Сервис polkit
не запускается при загрузке.
$> systemctl status polkit
● polkit.service - Authorization Manager
Loaded: loaded (/usr/lib/systemd/system/polkit.service; static; vendor preset: enabled)
Active: inactive (dead)
Docs: man:polkit(8)
Если я попытаюсь запустить его вручную:
$> systemctl status polkit
● polkit.service - Authorization Manager
Loaded: loaded (/usr/lib/systemd/system/polkit.service; static; vendor preset: enabled)
Active: active (running) since Wed 2016-12-07 11:15:26 GMT; 2s ago
Docs: man:polkit(8)
Main PID: 2079 (polkitd)
CGroup: /system.slice/polkit.service
└─2079 /usr/lib/polkit-1/polkitd --no-debug
Dec 07 11:15:26 sk-generic systemd[1]: Starting Authorization Manager...
Dec 07 11:15:26 sk-generic polkitd[2079]: Started polkitd version 0.112
Dec 07 11:15:26 sk-generic polkitd[2079]: Loading rules from directory /etc/polkit-1/rules.d
Dec 07 11:15:26 sk-generic polkitd[2079]: Loading rules from directory /usr/share/polkit-1/rules.d
Dec 07 11:15:26 sk-generic polkitd[2079]: Error opening rules directory: Error opening directory '/usr/share/polkit-1/rules.d': Permission denied (g-file-error-quark, 2)
Dec 07 11:15:26 sk-generic polkitd[2079]: Finished loading, compiling and executing 2 rules
Dec 07 11:15:26 sk-generic systemd[1]: Started Authorization Manager.
Dec 07 11:15:26 sk-generic polkitd[2079]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
Ошибка « permission denied
является подозрительной (тем не менее служба, похоже, работает).
$> ls -l /usr/share/ | grep polkit-1
lrwxrwxrwx. 1 root root 25 Dec 7 11:04 polkit-1 -> /usr/share.local/polkit-1
$> ls -l /usr/share.local/ | grep polkit-1
drwxr-xr-x. 4 root root 34 Jun 9 2014 polkit-1
$> ls -l /usr/share.local/polkit-1/
total 4
drwxr-xr-x. 2 root root 4096 Dec 7 10:53 actions
drwx------. 2 polkitd root 6 Jun 9 2014 rules.d
Я переместил /usr/share
и несколько других файлов после начальной установки в общий ресурс NFS. Тем не менее приведенные выше разрешения кажутся правильными, и /usr/share/polkit-1
является символической ссылкой на каталог в локальной файловой системе.
Теперь, если сделать что-то вроде этого:
$> service network restart
значок сети виртуальной машины на мгновение мигает, но затем вся машина полностью блокируется. systemctl restart network
завершается так же.
Моя первоначальная теория заключалась в том, что dbus не работал, потому что inotify не поддерживается в NFS.
$> systemctl status dbus -l
...
Cannot setup inotify for `/usr/share/dbus-1/...
Затем я переместил /usr/share/dbus-1
обратно в локальную файловую систему (через мягкую ссылку) и перезагрузился, systemctl status dbus -l
кажется, говорит, что все в порядке, пока я не запустил service network restart
после чего вся машина зависла с ошибкой policykit. Я переместил /usr/share/polkit-1
в локальную файловую систему, и это привело нас сюда.
Что не так с policykit? Или, скорее, почему сервисы не запускаются?