Aller au contenu
  • 0

Crontab Perdu Après Reboot Du Nas


filou59

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 ?

Lien vers le commentaire
Partager sur d’autres sites

4 réponses à cette question

Messages recommandés

  • 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.

Lien vers le commentaire
Partager sur d’autres 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.

Lien vers le commentaire
Partager sur d’autres 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:

Lien vers le commentaire
Partager sur d’autres 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.

Lien vers le commentaire
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invité
Répondre à cette question…

×   Vous avez collé du contenu avec mise en forme.   Supprimer la mise en forme

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...