Por que a apresentação de slides não inicia a partir do script que fiz para um trabalho cron horário?

1

Eu criei alguns scripts bash dentro da pasta cron.hourly para executar algumas tarefas por hora quando uma máquina está ligada.

Os scripts cron_pull e cron_update_images funcionam bem no trabalho cron.

53 * * * 2 /etc/cron.hourly/cron_pull
55 * * * 2 /etc/cron.hourly/cron_update_images
57 * * * 2 /etc/cron.hourly/cron_start_slideshow #This is the problem script

O script final não funciona como esperado e não sei por quê. Se eu executar o script manualmente, ele iniciará a apresentação de slides sem problemas. Aqui está o código dentro do cron_start_slideshow.

# Code that will prevent duplicate cronjobs from happening
PIDFILE=~/Documents/scripts/cron_pull.pid
if [ -f $PIDFILE ]
then
  PID=$(cat $PIDFILE)
  ps -p $PID > /dev/null 2>&1
  if [ $? -eq 0 ]
  then
    echo "Process is already running"
    exit 1
  else
    # Process not found, assume it is not running
    echo $$ > $PIDFILE
    if [ $? -ne 0 ]
    then
      echo "Could not create PID file"
      exit 1
    fi
  fi
else
  echo $$ > $PIDFILE
  if [ $? -ne 0 ]
  then
    echo "Could not create PID file"
    exit 1
  fi
fi

# Start the slideshow of images
eog --slide-show /media/images

# Remove the PID file showing the process is complete
rm $PIDFILE

Tudo ajuda, obrigado!

    
por Michael Sherman 31.10.2017 / 18:43

1 resposta

1

Primeiro de tudo, eu acho que o que você quer fazer é iniciar esta apresentação de slides quando o gerenciador de janelas é iniciado, então inicie-o com o script de auto-inicialização, dependendo de qual gerenciador de janelas você está. Se não for o caso, você terá que dizer a qualquer um dos seus programas que você deseja se conectar a uma exibição específica quando você executá-lo a partir dos scripts de inicialização.

Você tentou adicionar a variável de exibição que pode encontrar na página man eog como eog --display=0.0 --slide-show /media/images

    
por Philippe Gachoud 31.10.2017 / 21:31