Evitando que o XBMC seja desligado

2

Eu tenho um servidor Ubuntu com o XBMC instalado e o servidor conectado a uma TV através de um cabo HDMI. Para iniciar o XBMC, estou executando o comando:

sudo init xbmc

Usando ssh para remoto para o servidor e, em seguida, executando o comando dessa maneira. Isso parece funcionar bem na época e eu poderei assistir a um filme ou a um programa de TV. Depois de algumas horas o XBMC parece parar de rodar quer esteja jogando algo ou não, o que significa que toda vez que eu quiser assistir algo eu tenho que fazer o ssh para o servidor e rodar esse comando.

Minha solução ideal seria apenas executar esse comando uma vez para desligar a TV e ir embora por um período indefinido, mas quando voltar posso usar o XBMC sem precisar fazer login e executar esse comando.

Eu acho que devo estar começando o XBMC incorretamente ou talvez haja algo nas configurações que eu não configurei corretamente, alguém pode ajudar?

    
por Aesir 24.02.2014 / 09:13

3 respostas

1

Existem várias maneiras de fazer isso , dependendo de como esse servidor é usado (ou seja, se é um HTPC dedicado ou não), um script upstart pode ser o melhor ajuste para você. Este do mesmo artigo Wiki do XBMC vinculado antes:

# xbmc-upstart
# starts XBMC on startup by using xinit.
# by default runs as xbmc, to change edit below.
env USER=xbmc

description     "XBMC-barebones-upstart-script"
author          "Matt Filetto"

start on (filesystem and stopped udevtrigger)
stop on runlevel [016]

# tell upstart to respawn the process if abnormal exit
respawn

script
  exec su -c "xinit /usr/bin/xbmc --standalone -- -nocursor :0" $USER
end script

Você também pode desativar o serviço de início automático, para você Ainda é possível fazer login remotamente via ssh e executar o XBMC.

    
por 15.04.2014 / 16:26
0

Você pode executar o programa em segundo plano adicionando um e comercial ao comando.

sudo init xbmc --standalone -- -nocursor :0 &

Isso garantirá que o xbmc não seja eliminado por um tempo limite sem ter que usar a tela.

    
por 16.04.2014 / 18:16
0

Você também pode usar uma solução alternativa : deixe uma verificação cron-job em intervalos de alguns minutos se o XMBC ainda estiver em execução e inicie-o novamente se não estiver. O bash correspondente poderia ser assim:

#!/bin/bash

if [ 'ps u | grep xmbc | wc -l' != "2" ]; then
    screen -dm init xmbc
fi

Talvez você precise ajustar a contagem de linhas (a "2" part) se o xmbc gerar processos filhos. Dependendo da sua configuração, também pode funcionar sem screen .

    
por 17.04.2014 / 12:03