inicie o aplicativo gráfico com cron

inicie o aplicativo gráfico com cron

Quero iniciar um aplicativo python tkinter no início da sessão, adiciono as próximas linhas ao meu usuário e root crontab

@reboot python3 /home/alvaro/Desktop/python/good.py

Mas quando eu reinicio o aplicativo não inicia

This is the output of the cron status
  ● cron.service - Regular background program processing daemon
     Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2021-04-19 10:35:07 CEST; 1min 46s ago
       Docs: man:cron(8)
   Main PID: 622 (cron)
      Tasks: 1 (limit: 9484)
     Memory: 19.6M
     CGroup: /system.slice/cron.service
             └─622 /usr/sbin/cron -f

abr 19 10:35:07 alvaro-VirtualBox cron[622]: (CRON) INFO (pidfile fd = 3)
abr 19 10:35:07 alvaro-VirtualBox cron[622]: (CRON) INFO (Running @reboot jobs)
abr 19 10:35:07 alvaro-VirtualBox CRON[631]: pam_unix(cron:session): session opened for user root by (uid=0)
abr 19 10:35:07 alvaro-VirtualBox CRON[636]: (root) CMD (python3 /home/alvaro/Desktop/python/good.py)
abr 19 10:35:07 alvaro-VirtualBox CRON[632]: pam_unix(cron:session): session opened for user alvaro by (uid=0)
abr 19 10:35:07 alvaro-VirtualBox CRON[693]: (alvaro) CMD (python3 /home/alvaro/Desktop/python/good.py)
abr 19 10:35:09 alvaro-VirtualBox CRON[631]: (CRON) info (No MTA installed, discarding output)
abr 19 10:35:09 alvaro-VirtualBox CRON[631]: pam_unix(cron:session): session closed for user root
abr 19 10:35:09 alvaro-VirtualBox CRON[632]: (CRON) info (No MTA installed, discarding output)
abr 19 10:35:09 alvaro-VirtualBox CRON[632]: pam_unix(cron:session): session closed for user alvaro

Responder1

O Cron não possui um ambiente gráfico, portanto você não pode executar programas GUI a partir dele. Além disso, ao executar um programa na reinicialização, você não está logado, portanto não há sessão gráfica disponível.

Adicione seu programa a "Aplicativos de inicialização" ("Preferência de aplicativos de inicialização") para que ele seja iniciado no login. Eventualmente, ative o "Login automático" para evitar fornecer nome de usuário e senha.

Além disso, você pode pesquisar por Ubuntu kiosk setup" para encontrar informações sobre como configurar uma solução KIOSK - que é uma configuração em que um aplicativo é iniciado automaticamente na inicialização, sem dar aos usuários acesso ao Desktop.

informação relacionada