Jump to content
  • 0
filou59

Crontab Perdu Après Reboot Du Nas

Question

Bonjour a tous

J'ai un TS 859 avec le firmware suivant : 3.4.4 0718T

Je voudrais ajouter un script dans mon crontab, et biensur que celui-ci soit toujours présent après chaque Reboot.

Mais là je sèche.

Tout d'abord, j'utilise la méthode de l'autorun, pour lancer un script placé sur un de mes DDur :

mount -t ext2 /dev/sdx6 /tmp/config

vi /tmp/config/autorun.sh


#!/bin/sh

/share/HDA_DATA/Script/autorunmaster.sh

Ca ca fonctionne. Dans ce fichier autorunmaster je lance un script : /share/HDA_DATA/Script/crontab.sh que voici :
#!/bin/sh

# location: /share/HDA_DATA/Script/crontab.sh

# script name: crontab script

# purpose: add entries to the crontab, which will survive a QNAP reboot

# designed for Qnap TS-859

tmpfile=/tmp/crontab.tmp


# read crontab and remove custom entries (usually not there since after a reboot

# QNAP restores to default crontab:

crontab -l | grep -vi "dynhost" | grep -vi "custom1.sh" | grep -vi "custom2.sh" > $tmpfile


# add custom entries to crontab

echo "*/2 * * * * /share/HDA_DATA/Script/DynHost/dynhost" >> $tmpfile

#echo "1 4 * * * /share/HDA_DATA/scripts/custom1.sh" >> $tmpfile

#echo "40 5 * * * /share/HDA_DATA/scripts/custom2.sh" >> $tmpfile


#load crontab from file

crontab $tmpfile


# remove temporary file

rm $tmpfile


# restart crontab

/etc/init.d/crond.sh restart
Si je lance le script autorunmaster.sh, le Crontab est bien mis a jour. Mais pendant un redémarrage le NAS exécute le script autorun un peu trop tôt on dirait, puisque le crontab est réécrit par la suite. Si je lance mon crond.sh en tache de fond et si j'ajoute une tempo Sleep pour la mise a jour du Crontab, ca marche mais cette solution n'est pas terrible je trouve. Lancement du crond.sh en tache de fond :
/share/HDA_DATA/Script/crontab.sh &
Temporisation dans le script crond.sh:
sleep 60

De plus si je modifie un paramètre (qui ajouterais une ligne dans le cron) via la page de config du Qnap, les modifications du script sont alors perdu.

Est-ce qu'il existe un autre moyen plus fiable ?

Share this post


Link to post
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Je viens de trouver la réponse a ma question.

Lors de modification dans le cron, il faut aussi faire la modification dans le fichier suivant : /etc/config/crontab

J'ai donc modifié mon script pour y ajouter cette ligne :

cat $tmpfile > /etc/config/crontab

Le crontab survie au Reboot et au modif de config.

Share this post


Link to post
Share on other sites
  • 0

Bonjour,

Je viens de trouver la réponse a ma question.

Lors de modification dans le cron, il faut aussi faire la modification dans le fichier suivant : /etc/config/crontab

J'ai donc modifié mon script pour y ajouter cette ligne :

cat $tmpfile > /etc/config/crontab

Le crontab survie au Reboot et au modif de config.

De plus, ce fichier étant sauvegardé .... normalement, pas besoin d'un autorun.sh .... (/etc/config est un lien vers un répertoire sur le disque dur .... )

Philippe.

Share this post


Link to post
Share on other sites
  • 0

Je suis pas encore expert la dedans, et je m'y perd encore un peu entre les fichiers qui sont écrasé après les reboot ou autre j'en perd mon latin.

Sur le WIKI il y a 2 méthodes, j'ai pris la mauvaise... :o , mais bon c'est comme ca que ca rentre, c'est en forgeant que lon devient forgeron :lol:

Dommage quand même que le NAS soit si long a démarrer :rolleyes:

Share this post


Link to post
Share on other sites
  • 0

Je viens aussi d'être victime de l'écrasement des crons ajoutés via crontab -e et ceci suite au paramétrage d'une tâche Antivirus via l'interface.

J'ai donc corrigé en reportant les modifications directement dans le fichier /etc/config/crontab

Par contre, pour que ces modifications soient à nouveau prises en compte, inutile de rebooter: il suffit de modifier une tache (type Antivirus) via l'interface pour que les crons soient mis à jour.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×