Systemd

kodi-standalone 無法關機和重啟

  • March 6, 2018

系統 Debian 伸展。我為 kodi-standalone 創建了一個自己的目標。

cat kodi.target


[Unit]
Description=standalone-kodi
Wants=kodi.service
After=basic.target rescue.service rescue.target
Conflicts=rescue.target rescue.service 
AllowIsolate=yes

和一個kodi.service。

cat kodi.service 
[Unit]
Description=Starts instance of Kodi using xinit
Requires=basic.target
After=systemd-user-sessions.service sound.target
Conflicts=rescue.service rescue.target
After=basic.target rescue.service rescue.target



[Service]
User=kodi
Group=kodi
PAMName=login
TTYPath=/dev/tty1
ExecStart=/usr/bin/xinit /usr/bin/kodi-standalone -- :0 -nolisten tcp vt7
Restart=on-abort
StandardInput=tty

[Install]
WantedBy=kodi.target

兩者都在 /etc/systemd/system 中。但是我錯過了在 kodi-standalone 中重新啟動或關閉 gui 的可能性。使用者 kodi 是 createtd。Kodi 靴子,我可以使用它。

ls -al kodi.target.wants/
insgesamt 8
drwxr-xr-x  2 root root 4096 Okt  3 21:52 .
drwxr-xr-x 15 root root 4096 Okt  3 21:29 ..
lrwxrwxrwx  1 root root   32 Okt  3 21:52 dbus.service -> /lib/systemd/system/dbus.service
lrwxrwxrwx  1 root root   32 Okt  3 21:29 kodi.service -> /etc/systemd/system/kodi.service 

我的錯誤在哪裡?

Kodi 從 grub2 開始,有一個帶有 kerneloption 的條目systemd.unit=kodi.target

找到了。

/etc/polkit-1/localauthority/50-local.d/custom-actions.pkla 用以下內容創建

[Actions for kodi user]
Identity=unix-user:kodi
Action=org.freedesktop.consolekit.system.*;org.freedesktop.udisks2.*;org.freedesktop.login1.*
ResultAny=yes
ResultInactive=yes
ResultActive=yes

現在使用者 kodi 可以重新啟動並關閉待機電源並使用 udisks2。

引用自:https://unix.stackexchange.com/questions/395914