システム 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が作成されました。コーディネートブーツこれを使用できます。
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
私の間違いはどこにありますか?
カーネルオプションの独自のエントリを使用してgrub2からKodiを起動するsystemd.unit=kodi.target
答え1
それを発見。
/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を使用できるようになりました。