web-dev-qa-db-fra.com

Dites-moi où est l'erreur dans une tâche anacron?

J'ai essayé de faire cette tâche pour abacron:

dm@dm-system:~$ cat /etc/anacrontab 
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.

Shell=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/root
LOGNAME=root

# These replace cron's entries
1   5   cron.daily  run-parts --report /etc/cron.daily
7   10  cron.weekly run-parts --report /etc/cron.weekly
@monthly    15  cron.monthly    run-parts --report /etc/cron.monthly
@daily 5 /home/dm/Devel/btsync && notify-send "Btsync loaded (pid `pidof btsync`)" "Link <a href='http://0.0.0.0:8888/gui/'>here</a>."

cette commande bien faite depuis mon terminal xubuntu

/home/dm/Devel/btsync && notify-send "Btsync loaded (pid `pidof btsync`)" "Link <a href='http://0.0.0.0:8888/gui/'>here</a>."

mais quand j'ai commencé mon cahier, j'ai vu dans/var/syslog:

Aug 14 10:49:06 dm-system anacron[904]: Anacron 2.3 started on 2014-08-14
Aug 14 10:49:06 dm-system anacron[904]: Invalid syntax in /etc/anacrontab on line 14 - skipping this line
Aug 14 10:49:06 dm-system cron[841]: (CRON) INFO (pidfile fd = 3)
Aug 14 10:49:06 dm-system cron[998]: (CRON) STARTUP (fork ok)
Aug 14 10:49:06 dm-system cron[998]: (CRON) INFO (Running @reboot jobs)
Aug 14 10:49:07 dm-system anacron[904]: Will run job `cron.daily' in 5 min.
Aug 14 10:49:07 dm-system anacron[904]: Jobs will be executed sequentially
Aug 14 10:54:04 dm-system anacron[904]: Job `cron.daily' started
Aug 14 10:54:05 dm-system anacron[2616]: Invalid syntax in /etc/anacrontab on line 14 - skipping this line
Aug 14 10:54:05 dm-system anacron[2616]: Updated timestamp for job `cron.daily' to 2014-08-14
2
dmgl

La syntaxe de anacrontab est, selon la page de manuel :

Les lignes de description de poste ont l'une de ces deux formes:

      period  delay  job-identifier  command

      @period_name delay job-identify command

Je dirais qu'il te manque un job-identifier. Donc quelque chose comme;

@daily 5 btsync-job /home/dm/Devel/btsync && notify-send "Btsync loaded (pid `pidof btsync`)" "Link <a href='http://0.0.0.0:8888/gui/'>here</a>."

De plus, la page de manuel note que, à partir de maintenant, @period_name ne peut être que @monthly. Donc au lieu de @daily, il faudrait utiliser:

1 5 btsync-job /home/dm/Devel/btsync && notify-send "Btsync loaded ...

En dehors de, notify-send aurait besoin que la variable DISPLAY soit définie. C'est généralement :0, mais vous pouvez vérifier en utilisant echo $DISPLAY dans un terminal. Ainsi, l'entrée anacrontab devrait ressembler à:

DISPLAY=:0
1 5 btsync-job /home/dm/Devel/btsync && notify-send "Btsync loaded ...
4
muru