Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 24/08/2016, à 02:39

josran

[Résolu] Problème dans l'utilisation de anacron

Bonjour,

Je veux faire exécuter par anacron le script suivant enregistré sous /usr/local/bin/mkdir_variable.sh :

#!/bin/bash
PATH=/bin:/usr/bin:/usr/local/bin
NEWREP=$(date +"%Y-%m-%d_%T")
DEVICE=/mnt/Backup_Linux/SauveIci/
touch /home/moi/mon-script.stamp
NEWMOUNT=${DEVICE}/$NEWREP

Pour cela, j’ai créé hier le fichier /etc/anacrontab suivant :

# /etc/anacrontab: configuration file for anacron
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/root
LOGNAME=root
1   5   tt-cron-daily   ./mkdir_variable.sh

J’ai également vérifié le dernier timestamp de anacron :

root @ monpc  /var/spool/anacron
└─ # ▶ cat cron.daily
20160823

Ainsi que le contenu de crontab :

└─ # ▶ crontab -l
# Edit this file to introduce tasks to be run by cron.
# m h  dom mon dow   command
*   *   *   *   *   root   anacron

Ce matin, 24/08/2016, je démarre mon PC et, après un peu plus d’une heure d’attente, je constate qu’aucun fichier mon-script.stamp ni aucun répertoire sous SauveIci n’ont été créés.
On ne trouve pas grand chose sur les forums (franco ou anglophones) qui décrive une mise en oeuvre aboutie de anacron. Si quelqu'un utilise anacron au quotidien, je le remercie par avance de me faire partager un peu de ses lumières.

Dernière modification par josran (Le 25/08/2016, à 15:57)

Hors ligne

#2 Le 24/08/2016, à 06:08

Watael

Re : [Résolu] Problème dans l'utilisation de anacron

salut,

donne tes sources, s'il te plaît. quel(s) tuto(s) as-tu suivi ?

une crontab ne prend pas de nom d'utilisateur.
c'est marqué : m h dom dow command
il n'y a pas marqué usr !

et je ne vois pas l'intérêt d'appeler anacron toutes les minutes.

apparemment, ton fichier de conf est erroné.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 24/08/2016, à 09:10

josran

Re : [Résolu] Problème dans l'utilisation de anacron

Salut Watael,

J'ai lu ce tuto  Planificateur de tâches.

Selon ce qu'on y lit, mon fichier de configuration anacrontab n'appelle pas anacron toutes les minutes parce que le chiffre 1 qu'il contient n'est pas un chiffre des minutes (à la différence d'avec une crontab) mais il exprime la périodicité en jours. Par ailleurs, tu sais sans doute qu'anacron, qui n'est pas un "démon", ne peut pas s'exécuter toutes les minutes.

A propos de crontab, on lit également dans ce tuto que "Ces crontabs ont une zone supplémentaire (en position 6) qui permet de spécifier le user qui doit lancer le script"; et l'exemple donné est le suivant :

17 * * * *	root cd / && run-parts --report /etc/cron.hourly

En fait, j'étais obligé de mentionner l'utilisateur root parce que anacron ne peut être lancé que par le super utilisateur.

Merci de m'avoir répondu.

Dernière modification par josran (Le 24/08/2016, à 09:13)

Hors ligne

#4 Le 24/08/2016, à 12:19

Watael

Re : [Résolu] Problème dans l'utilisation de anacron

relis l'article, car tu confonds les crontab utilisateurs, remplie avec crontab -e, et les crontab systèmes que l'on modifie directement avec un éditeur.

et quand je dis que tu appelles anacron toutes les minutes, je parle de la crontab que montres, et qui est une "crontab utilisateur" dans laquelle il n'y a pas de champs utilisateur.

tu nous montres 4 fichiers :

  • ton script

  • le fichier conf. d'anacron

  • le fichier màj d'anacron

  • et une crontab, dont je ne vois pas l'intérêt

anacron est exécuté au démarrage de la machine, et s'il y a lieu exécute les scripts inscrits dans le fichier de conf.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#5 Le 24/08/2016, à 12:35

grandtoubab

Re : [Résolu] Problème dans l'utilisation de anacron

Salut
Pour qu'un script soir executé quotidiennement il faut qu'il soit dans  /etc/cron.daily

# ls -alrt /etc/cron.daily
total 68
-rwxr-xr-x   1 root root   435 juin  13  2013 mlocate
-rwxr-xr-x   1 root root   355 oct.  17  2014 bsdmainutils
-rwxr-xr-x   1 root root    89 nov.   8  2014 logrotate
-rwxr-xr-x   1 root root   311 déc.  28  2014 0anacron
-rwxr-xr-x   1 root root  1293 déc.  31  2014 man-db
-rwxr-xr-x   1 root root    77 janv. 21  2015 apt-show-versions
-rw-r--r--   1 root root   102 juin  11  2015 .placeholder
-rwxr-xr-x   1 root root   249 nov.  18  2015 passwd
-rwxr-xr-x   1 root root  1597 nov.  26  2015 dpkg
-rwxr-xr-x   1 root root  4125 déc.  15  2015 exim4-base
-rwxr-xr-x   1 root root   314 déc.  19  2015 aptitude
-rwxr-xr-x   1 root root  1526 juil. 14 10:00 apt-compat
lrwxrwxrwx   1 root root    37 août   3 01:18 google-chrome -> /opt/google/chrome/cron/google-chrome

pour etre executé chaque heure /etc/cron.hourly

# ls -alrt /etc/cron.hourly
total 20
-rw-r--r--   1 root root   102 juin  11  2015 .placeholder

Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....

Hors ligne

#6 Le 24/08/2016, à 12:38

Watael

Re : [Résolu] Problème dans l'utilisation de anacron

soit, mais ce n'est pas accessible à un simple utilisateur, et ce n'est parce qu'un utilisateur à les droits administrateur qu'il doit y mettre ses tâches perso.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#7 Le 24/08/2016, à 14:40

grandtoubab

Re : [Résolu] Problème dans l'utilisation de anacron

Watael a écrit :

soit, mais ce n'est pas accessible à un simple utilisateur, et ce n'est parce qu'un utilisateur à les droits administrateur qu'il doit y mettre ses tâches perso.

Ah  le gag, le mec c'est son PC et il pourrait pas faire ce qu'il veut avec. On rêve


Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....

Hors ligne

#8 Le 24/08/2016, à 14:53

Watael

Re : [Résolu] Problème dans l'utilisation de anacron

on essaie de donner les bonnes pratiques (best practices), après si le gars veut faire un rm -rf en root sur /
bien sûr, c'est son problème.
on lui aura quand même expliquer pourquoi ne pas le faire.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#9 Le 25/08/2016, à 02:34

josran

Re : [Résolu] Problème dans l'utilisation de anacron

Bonjour,

A la lecture de vos commentaires ainsi que de ce tuto Les jobs anacron, j'ai compris l'intérêt de suivre la piste montrée par grandtoubab : celle du répertoire /etc/cron.daily; d'autant plus, qu'avec Ubuntu 16.04, anacron est déjà lancé par cron.

Après avoir supprimé ma crontab utilisateur, j'ai donc modifié le fichier /etc/cron.daily/0anacron :

#!/bin/sh
#
# anacron's cron script
#
# This script updates anacron time stamps. It is called through run-parts
# either by anacron itself or by cron.
#
# The script is called "0anacron" to assure that it will be executed
# _before_ all other scripts.

# test -x /usr/sbin/anacron || exit 0
# anacron -u cron.daily
anacron

ainsi que le fichier /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
1 1 tt-cron-daily ./mkdir_variable.sh

Résultat : aucune des actions de mon script (enregistré sous /usr/local/bin) n'est exécutée

#!/bin/bash
PATH=/bin:/usr/bin:/usr/local/bin
NEWREP=$(date +"%Y-%m-%d_%T")
DEVICE=/mnt/Backup_Linux/SauveIci/
touch /home/tt/mon-script.stamp
NEWMOUNT=${DEVICE}/$NEWREP
echo $NEWMOUNT
mkdir $NEWMOUNT

et, en plus, le fichier "timbre à date" d'anacron n'a pas bougé :

moi @ monpc  /var/spool/anacron
└─ $ ▶ sudo cat cron.daily
20160823

dur, dur, anacron...

Hors ligne

#10 Le 25/08/2016, à 05:05

Watael

Re : [Résolu] Problème dans l'utilisation de anacron

./mkdir_variable.sh

ici, anacron tente d'exécuter ton script dans un chemin relatif; mais relatif à quoi ?
autant les crontab utilisateurs se placent dans $HOME, autant pour anacron, je ne sais pas.
il faut donc, soit indiquer le chemin absolu du script, soit, puisqu'il est dans le $PATH, indiquer son nom seulement (comme tu appellerais crontab : sans aucun chemin).


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#11 Le 25/08/2016, à 10:04

grandtoubab

Re : [Résolu] Problème dans l'utilisation de anacron

Salut
le fichier 0anacron est lancé en premier pour "rattraper" le temps au demarrage du PC et permettre le lancement des scripts dans /etc/cron.daily meme si l'heure du demarrage du pc est postérieure a celle "normale' de lancement des scripts
ça assure que les scripts sont lancés sans avoir a attendre une journée entiere sans eteindre le pc, le a de anacron veut dire asynchrone

https://debian-handbook.info/browse/fr- … acron.html
casser le mecanisme anacron ne me semble pas une bonne idée pour le lancement des taches systeme prévues

Dernière modification par grandtoubab (Le 25/08/2016, à 10:12)


Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....

Hors ligne

#12 Le 25/08/2016, à 15:56

josran

Re : [Résolu] Problème dans l'utilisation de anacron

Bonjour Wataël et grandtoubab,

ça y est, ça marche : il a suffi que je remplace

./mkdir_variable.sh 

par

/usr/local/bin/mkdir_variable.sh

Merci donc à Wataël pour cet ultime conseil qui fut décisif. Merci aussi à grandtoubab pour son plus récent conseil.

Pour être franc, je suis assez enclin à suivre le précepte du Sage qui a écrit : "Le mec c'est son PC et il pourrait pas faire ce qu'il veut avec. On rêve". smile

Hors ligne