
Eu tenho uma caixa Linux com kodi e o seguinte script systemd para iniciar o kodi na inicialização:
[Unit]
Description = kodi-standalone using xinit
After = systemd-user-sessions.service network.target sound.target network-online.target
[Service]
User = kodi
Group = kodi
Type = simple
PAMName=login
ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/openbox-session -- :0 -nolisten tcp vt7
Restart = on-abort
[Install]
WantedBy = multi-user.target
Isso funcionou bem no Ubuntu 15.10, mas após uma atualização não funciona mais. O serviço não consegue iniciar
Apr 24 17:30:19 rasnas sudo[3644]: kodi : TTY=pts/0 ; PWD=/home/kodi ; USER=root ; COMMAND=/usr/sbin/service kodi start Apr 24 17:30:19 rasnas sudo[3644]: pam_unix(sudo:session): session opened for user root by kodi(uid=0) Apr 24 17:30:19 rasnas systemd[1]: Starting Detect the available GPUs and deal with any system changes... Apr 24 17:30:19 rasnas gpu-manager[3671]: /etc/modprobe.d is not a file Apr 24 17:30:19 rasnas gpu-manager[3671]: /etc/modprobe.d is not a file Apr 24 17:30:19 rasnas gpu-manager[3671]: /etc/modprobe.d is not a file Apr 24 17:30:19 rasnas gpu-manager[3671]: /etc/modprobe.d is not a file Apr 24 17:30:19 rasnas gpu-manager[3671]: /etc/modprobe.d is not a file Apr 24 17:30:19 rasnas gpu-manager[3671]: update-alternatives: error: no alternatives for x86_64-linux-gnu_gfxcore_conf Apr 24 17:30:19 rasnas systemd[1]: Started Detect the available GPUs and deal with any system changes. Apr 24 17:30:19 rasnas systemd[1]: Started kodi-standalone using xinit. Apr 24 17:30:19 rasnas sudo[3644]: pam_unix(sudo:session): session closed for user root Apr 24 17:30:19 rasnas systemd[3692]: pam_unix(login:session): session opened for user kodi by (uid=0) Apr 24 17:30:19 rasnas systemd[1]: Started Session 11 of user kodi. Apr 24 17:30:19 rasnas systemd[3692]: pam_ck_connector(login:session): cannot determine display-device Apr 24 17:30:19 rasnas xinit[3692]: X.Org X Server 1.18.3 Apr 24 17:30:19 rasnas xinit[3692]: Release Date: 2016-04-04 Apr 24 17:30:19 rasnas xinit[3692]: X Protocol Version 11, Revision 0 Apr 24 17:30:19 rasnas xinit[3692]: Build Operating System: Linux 3.13.0-85-generic x86_64 Ubuntu Apr 24 17:30:19 rasnas xinit[3692]: Current Operating System: Linux rasnas 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 Apr 24 17:30:19 rasnas xinit[3692]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-21-generic root=UUID=1bca803d-6ad4-4e76-bc0d-10d37e041d51 ro quiet splash vt.handoff=7 Apr 24 17:30:19 rasnas xinit[3692]: Build Date: 07 April 2016 09:18:50AM Apr 24 17:30:19 rasnas xinit[3692]: xorg-server 2:1.18.3-1ubuntu2 (For technical support please see http://www.ubuntu.com/support) Apr 24 17:30:19 rasnas xinit[3692]: Current version of pixman: 0.33.6 Apr 24 17:30:19 rasnas xinit[3692]: Before reporting problems, check http://wiki.x.org
Apr 24 17:30:19 rasnas xinit[3692]: to make sure that you have the latest version. Apr 24 17:30:19 rasnas xinit[3692]: Markers: (--) probed, (**) from config file, (==) default setting, Apr 24 17:30:19 rasnas xinit[3692]: (++) from command line, (!!) notice, (II) informational, Apr 24 17:30:19 rasnas xinit[3692]: (WW) warning, (EE) error, (NI) not implemented, (??) unknown. Apr 24 17:30:19 rasnas xinit[3692]: (==) Log file: "/home/kodi/.local/share/xorg/Xorg.0.log", Time: Sun Apr 24 17:30:19 2016 Apr 24 17:30:19 rasnas xinit[3692]: (==) Using system config directory "/usr/share/X11/xorg.conf.d" Apr 24 17:30:19 rasnas xinit[3692]: (EE) Apr 24 17:30:19 rasnas xinit[3692]: Fatal server error: Apr 24 17:30:19 rasnas xinit[3692]: (EE) xf86OpenConsole: Cannot open virtual console 7 (Permission denied) Apr 24 17:30:19 rasnas xinit[3692]: (EE) Apr 24 17:30:19 rasnas xinit[3692]: (EE) Apr 24 17:30:19 rasnas xinit[3692]: Please consult the The X.Org Foundation support Apr 24 17:30:19 rasnas xinit[3692]: at http://wiki.x.org
Apr 24 17:30:19 rasnas xinit[3692]: for help. Apr 24 17:30:19 rasnas xinit[3692]: (EE) Please also check the log file at "/home/kodi/.local/share/xorg/Xorg.0.log" for additional information. Apr 24 17:30:19 rasnas xinit[3692]: (EE) Apr 24 17:30:19 rasnas xinit[3692]: (EE) Server terminated with error (1). Closing log file. Apr 24 17:30:23 rasnas hyperiond[853]: V4L2 Grabber: Signal lost Apr 24 17:30:34 rasnas xinit[3692]: /usr/bin/xinit: giving up Apr 24 17:30:34 rasnas xinit[3692]: /usr/bin/xinit: unable to connect to X server: Connection refused Apr 24 17:30:34 rasnas xinit[3692]: /usr/bin/xinit: server error Apr 24 17:30:34 rasnas systemd[3697]: pam_unix(login:session): session closed for user kodi
Então, como posso consertar isso? Observe que tudo funcionou bem usando 15.10!
Obrigado!
Responder1
Encontrei esse erro hoje. Após alguma investigação, a solução é fornecidapelo guia Kodi. O capítulo 5 diz:
A partir do Ubuntu 16.04 (Xenial Xerus), você precisa instalar e reconfigurar o pacote
xserver-xorg-legacy
.
Funciona bem no meu equipamento.
Responder2
Ok, não é realmente a melhor solução disponível, mas alterar o trabalho de inicialização do systemd para chmod /dev/tty7
antes de iniciar o kodi parece "consertá-lo". Se alguém tiver uma maneira melhor e mais ubuntu de fazer isso, por favor, me esclareça: D
[Unidade] Descrição = kodi-standalone usando xinit Depois = systemd-user-sessions.service network.target sound.target network-online.target [Serviço] Usuário = kodi Grupo = kodi Tipo = simples PAMName=login ExecStartPre=/bin/chmod 777 /dev/tty7 PermissõesStartOnly=true ExecStart = /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/openbox-session -- :0 -nolisten tcp vt7 Reiniciar = ao abortar [Instalar] WantedBy = multiusuário.target
Responder3
Se você estiver usando o systemd de qualquer maneira, outra ideia que pode fazê-lo funcionar é fazer com que o systemd atue como um proxy entre o X e os privilégios de root.
Isso exigiria a instalação libpam-systemd
para que systemd-logind
o console começasse a funcionar corretamente (cf.Notas de lançamento do Debian 9 sobre o servidor Xorg que não requer mais root) e mudar do uso simples xinit
para o startx
wrapper (cf.Bug do Debian #801401).
Não conheço os detalhes desse caso de uso do Kodi, mas me deparei com essa questão enquanto pesquisava o problema genérico, então achei melhor escrever isso para ajudar alguém a conectar os pontos.