|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
Bonjour,
j'ai crée un script 'SC1' contenant la commande suivante : Code :
après j'ai fait les étapes suivantes : Code :
cp /etc/init.d/skeleton /etc/init.d/SC1 Code :
Code :
|
||||||
|
|
11
|
|
|
#2 |
![]() ![]() Inscription : décembre 2004 Messages : 1 653 ![]() |
Bonjour,
Il faut définir les arguments start et stop dans ton script d'init.d. Tu appelles start mais s'il n'existe pas, cela ne fonctionnera surement pas. Jettes un oeil dans un des scripts contenus dans /etc/init.d pour comprendre leur fonctionnement. Cela t'aidera beaucoup. |
|
|
30
|
|
|
#3 | ||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
voila mon fichier dans /etc/init.d :
Code :
|
||
|
|
20
|
|
|
#4 |
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
|
|
|
11
|
|
|
#5 |
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
oui il s'appel qos.... il figure dans /usr/bin...
apparament le script de mon daemon ne permet pas de le relancer automatiquement en cas d'arret de service non? |
|
|
20
|
|
|
#6 | |
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
Citation:
Il faut utiliser d'autres mécanismes, comme : - écrire un script de surveillance / relance et l'intégrer dans une crontab - utiliser des outils dédiés (comme monit) - déclarer le lancement de la commande dans le fichier /etc/inittab (pour les systèmes qui l'utilisent encore) avec l'action respawn (solution pas propre) |
|
|
|
20
|
|
|
#7 |
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
laquelle est la plus utilisé?
Est ce que je peux créer par exemple un crontab qui me permet de relancer mon application en cas d'arret? |
|
|
11
|
|
|
#8 | |
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
Citation:
|
|
|
|
30
|
|
|
#9 | ||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
mon daemon fonctionne c'est bon
je le lance désormais avec Citation:
Citation:
|
||
|
|
20
|
|
|
#10 |
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
Il faut enlever le # devant la définition de la variable RESTART
Sinon, si la commande pgrep existe sur ton poste et est bien sous /usr/bin/pgrep, c'est bon. Il suffit maintenant de créer la crontab : - soit créer une entrée dans la crontab d'un utilisateur qui a le droit de lancer la commande "/etc/init.d/qos restart" (par exemple, l'utilisateur root) Lancement toutes les minutes : $ crontab -l * * * * * /path/to/script.sh >/dev/null 2>&1 - soit rajouter un fichier dans /etc/cron.d (la syntaxe est légèrement différente) Lancement toutes les minutes : $ cat /etc/cron.d/qos * * * * * root /path/to/script.sh >/dev/null 2>&1 Je trouve que passer par un fichier dans /etc/cron.d est un petit peu plus propre |
|
|
30
|
|
|
#11 | |||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
Citation:
pour la commande pgrep, elle existe, quand je fait whereis pgrep j'ai ca comme résultat Code :
/usr/bin/pgrep /usr/share/man/man1/pgrep.1.gz Code :
|
|||
|
|
20
|
|
|
#12 | |||||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
j'ai essayé les deux méthode ,
la 1ere me dit, no crontab for root la 2eme : cat: qos: No such file or directory donc j'ai fait ca j'ai par la suite crée le premier fichier contenant : Code :
Citation:
Code :
et bien rien ne change |
|||||
|
|
20
|
|
|
#13 | ||
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
quand j'essaye le script tous seul, je recoit ce message :
Code :
|
||
|
|
20
|
|
|
#14 | |||||||
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
Oui
Non Si tu penses que le démarrage peut prendre plus d'une minute, il vaut mieux lancer le script toutes les x minutes. Par exemple, pour un lancement toutes les 5 minutes : Code :
Citation:
Il suffit juste de s'assurer que le compte root peut exécuter le script. Et enlever le commentaire style C++ : Code :
Concernant le message : Oui, le script cronqos.sh a pour rôle de lancer, si nécessaire, un démon ; or un démon est sensé être lancé via le compte root. C'est pour ça que, dans la crontab /etc/cron.d/qos, le 6ème champ vaut root |
|||||||
|
|
20
|
|
|
#15 |
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
enfet je t'explique, moi j'ai crée mon daemon ( qui contient mon application .jar) , je l'ai nommé qos... il fonctionne :
mais je rencontre parfois des problemes au niveau de mon application ( arret du daemon) , ce que je veux, c'est à chaque fois que je detecte un arret du daemon, je le relance automatiquement.... Mon application fait des traitement séquentiels , si à chaque minute le cron relance l'application je terminerai jamais tous les traitements mais je ferai seulement les 1er. est ce que le cron que j'ai crée relance l'application si elle est arreté ou bien il la relance tout simplement chaque minute indépendamment du fait qu'elle fonctionne ou non...car si c'est le ca.... je n'aurai que le 1er traitement qui se refait... merci à vous |
|
|
10
|
|
|
#16 | ||||
|
Membre du Club
![]() E LInscription : juin 2011 Messages : 19 ![]() |
Citation:
Citation:
C'est le rôle du code : Code :
|
||||
|
|
10
|
|
|
#17 |
|
Membre chevronné
![]() Inscription : août 2010 Messages : 416 ![]() |
Effectivement, c'est ce que je pensais, car j'ai bien tester le script avant de l'utiliser...
Je vais tester ca et te mettre au courant
|
|
|
10
|
|
|
#18 |
|
Membre à l'essai
![]() |
merci ça m'a bien aidé ici
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com