Como faço o "Hello World" para tentar usar o cron

0

Estou usando o Fedora 20 e, eventualmente, quero configurar backups automáticos. Eu consegui uma versão experimental na minha instalação anterior do Fedora 12, mas não consigo começar de novo. Eu estou usando o zshell.

Eu pensei em programar um programa shell para mostrar uma janela zenity com uma mensagem "Hello World" a cada minuto. A chamada do zenity é:

zenity --info --text='Something very nice has happened!' --title="Zenity"

que eu coloquei em um arquivo /testrsync/zenitytest.sh , que funciona muito bem quando eu chamo de uma linha de comando.

Eu editei crontab para conter: * * * * * /testrsync/zenitytest.sh

E nada acontece. Obviamente, estou negligenciando alguma coisa, mas ainda não consigo ver o que. (Eu tentei todo tipo de coisas, numerosas demais para descrever aqui.) Por favor, alguém pode ajudar?

Depois de mais pesquisas, tentei o seguinte,

[Harry@localhost]~/testrsync%  /sbin/service crond status -l
Redirecting to /bin/systemctl status  -l crond.service
crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled)
   Active: active (running) since Mon 2014-09-22 10:37:42 BST; 3h 24min ago
 Main PID: 709 (crond)
   CGroup: /system.slice/crond.service
           └─709 /usr/sbin/crond -n

Sep 22 13:58:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 13:58:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 13:59:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 13:59:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:00:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:00:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:01:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:01:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:02:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
Sep 22 14:02:01 localhost.localdomain crond[709]: sendmail: Cannot open mail:25
[Harry@localhost]~/testrsync% 

Em seguida, alterei meu crontab para ler:

* * * * * /testrsync/zenitytest.sh >/dev/null 2>&1

Mas o único efeito foi parar as mensagens de erro, as mesmas que as anteriores, com horários diferentes e a última linha:

Sep 22 14:04:01 localhost.localdomain crond[709]: (Harry) RELOAD (/var/spool/cron/Harry)

    
por Harry Weston 22.09.2014 / 14:32

1 resposta

3

Um aplicativo iniciado via cron não tem terminal conectado nem X disponível.

Portanto, não há nada onde sua janela possa ser exibida.

Para testar essas coisas, use um arquivo e acrescente qualquer coisa a isso. Depois, você pode procurar no arquivo (por exemplo, com tail -f ) e ver que o cron está sendo executado.

    
por 22.09.2014 / 14:40

Tags