Aide pour développer un script sous Debian - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 16-12-2005 à 23:19:00
Regarde du côté de /etc/init.d/skeleton pour avoir un fichier d'exemple sur la façon dont est créé un daemon.
Sinon utilises un script shell (bash par défaut) que tu places dans ta crontab pour planifier son exécution comme souhaité.
Pour la rédaction du script en lui-même tu n'as pas besoin de trop chercher : une condition if qui teste si la connexion est inactive auquel cas tu balance ta ligne avec un simple echo "la_date_et_l'heure:echec" > emplacement/nom_du_fichier.
Pour les détails, cherche un peu
Marsh Posté le 16-12-2005 à 23:21:21
Je verrais plutot un script lancer via crontab toutes les 5 minutes qu'un daemon...
Si tu veux faire un daemon, il faut que tu te tapes le script d'init, la gestion des timers...
Alors qu'un simple script avec crontab peut le faire de maniere plus propre.
Marsh Posté le 16-12-2005 à 23:28:32
l0ky a écrit : Je verrais plutot un script lancer via crontab toutes les 5 minutes qu'un daemon... |
Bon c'est pas super-compliqué non plus de faire un daemon, mais c'est vrai que dans son cas un script cron tout bête évite déjà de ne pas avoir gérer un timer à l'exécution
Marsh Posté le 17-12-2005 à 14:38:14
Après quelques recherches et en suivant ce que vous m'avez dit, j'ai fait un script qui marche. Mais je ne comprends pas tout, si quelqu'un pouvait m'expliquer quelques points, ce serait sympa !
Code :
|
Merci pour votre aide !
Marsh Posté le 17-12-2005 à 15:15:00
juste une suggestion, comme ca...
connexion perdue...
$? est la valeur de retour de ta derniere commande... donc,
[ $? -eq 0 ] && STATE=1
si la derniere commande utilisée a renvoyé une erreur, alors STATE vaux 1.
Marsh Posté le 17-12-2005 à 15:32:02
Moof2 a écrit : Après quelques recherches et en suivant ce que vous m'avez dit, j'ai fait un script qui marche. Mais je ne comprends pas tout, si quelqu'un pouvait m'expliquer quelques points, ce serait sympa !
|
le "> /dev/null 2>&1" permet de renvoyer tout l'affichage de la commande ping vers /dev/null c'est à dire vers le vide intersidéral. ça évite que ton script remplisse le terminal chaque fois qu'il est lancé.
le "[ $? -eq 0 ] && STATE=1" qui peut s'écrire plus simplement "test $? -eq 0 && STATE=1" ou de façon plus explicite
if [ $? -eq 0 ]
then
STATE=1
fi
teste la valeur de retour de la dernière commande exécutée ($?) et fixe la valeur de STATE en conséquence...
Marsh Posté le 17-12-2005 à 16:54:11
Y sert à rien le STATE
Code :
|
Marsh Posté le 16-12-2005 à 22:45:39
Bonjour,
Je suis sous Debian et je cherche à faire un script (démon ?) qui régulièrement (disons toutes les 5 minutes) vérifie que la connexion internet fonctionne bien (par exemple, en envoyant un ping sur google). Si la connexion n'est pas active, ce script écrit une ligne dans un fichier (par exemple : "jj/mm/aaaa h:min : internet marche po" ).
Voilà, je ne sais absolument pas comment faire ce genre de chose, ni quel langage de programmation il faut utiliser...
Je sais bien que google a réponse à tout, surtout pour ce genre de problème, mais le fait est que je ne sais même pas où chercher tellement je suis nul en la matière...
Merci !