Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1485 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Script d'arrêt sous Linux

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Script d'arrêt sous Linux

n°989893
kabouns
Posté le 11-12-2007 à 11:07:37  profilanswer
 

Bonjour,
 
Je souhaite modifier l'ordre d'arrêt de certains services sous Linux. Pour celà j'ai modifié le nom du lien symbolique dans le répertoire  rc0.d et rc6.d. Quand je teste les scripts manuellement ça fonctionne, par contre je crois que ça ne marche pas quand je fais un halt ou un reboot. En fait je sais pas comment vérifier si ça marche. Y a t'il des logs pour voir si  la modification des ordres fonctionnent  ?
 
Merci
 
Kab

mood
Publicité
Posté le 11-12-2007 à 11:07:37  profilanswer
 

n°989897
o'gure
Modérateur
Multi grognon de B_L
Posté le 11-12-2007 à 11:10:47  profilanswer
 

Tu as modifier quel script ? ceux qui commencent pas un S [:opus dei]


---------------
Relax. Take a deep breath !
n°989906
kabouns
Posté le 11-12-2007 à 11:19:10  profilanswer
 

Non en fait j'avais  un truc du genre dans RC0 et rc6:  
 
K06nom1
K30nom2
 
J'ai fais :  
mv K06nom1 K30nom1
mv K30nom2 K06nom2
 

n°989914
Ik12
Posté le 11-12-2007 à 11:22:57  profilanswer
 

Tu sais que tu l'a deplace dans le repertoire courant?


Message édité par Ik12 le 11-12-2007 à 11:23:05
n°989917
kabouns
Posté le 11-12-2007 à 11:25:12  profilanswer
 

enfin si tu préferes mv /etc/rc0.d/K06nom1 /etc/rc0.d/K30nom1.
C'est ça que j'ai fais.

n°990073
kabouns
Posté le 11-12-2007 à 15:36:03  profilanswer
 

UP, vous avez   pas une idée ?  Y a pas de log pour  voir ça ?

n°990076
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 11-12-2007 à 15:40:23  profilanswer
 

les distributions fournissent des outils pour ça :o

 

(ceci exclut les dinosaures de type slackwariens)

Message cité 1 fois
Message édité par black_lord le 11-12-2007 à 15:40:44

---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°990093
kabouns
Posté le 11-12-2007 à 16:00:16  profilanswer
 

ohhhh merci je  dois comprendre quoi.......Je veux juste savoir comment vérifier l'ordre d'arret de mes services de manière réelle  et  non en regardant rc0 et rc6.
 
merci
 
kab

n°990275
sputnick
bip...bip...bip...bip...bi...b
Posté le 11-12-2007 à 22:49:06  profilanswer
 

Hé l'ami, si tu nous disais quel est ta distro ?
On va pas te réciter toutes les solutions en fonction de toutes les distros quand même !?
 
:)

n°990277
o'gure
Modérateur
Multi grognon de B_L
Posté le 11-12-2007 à 22:52:39  profilanswer
 

Le début de son problème est ici

 

=> Red Hat Enterprise 5

kabouns a écrit :

ohhhh merci je  dois comprendre quoi.......Je veux juste savoir comment vérifier l'ordre d'arret de mes services de manière réelle  et  non en regardant rc0 et rc6.

 

Ca veut dire que, dans ton intéret, merci de donner l'ensemble des détails que tu as. Ca aurait été bien de donner ce topic directement dans ton premier post pour savoir ce que tu as fait et ce qu'on t'as dit.

 

Pratiquement chaque distrib a ses spécificité. Si tu décides de distiller des indices au compte goutte tu n'auras jamais ta réponse.

 

Cependant généralement, que ca soit les outils pour vérifier le séquençage ou pour le mettre en place, on se base sur l'ordre alpha-numérique des liens. sous debian invoke-rc.d ou update-rc.d modifie le nom du lien en conséquence. Idem pour chkconfig je suppose.

 

Peux tu nous dire qu'est ce qui te fais croire qu'il ne s'éxécute pas dans le bon ordre ?
Tu peux modifier ces scripts en placant un touch toto au bon endroit (dans le case du stop) pour vérifier qu'il s'éxécute bien...


Message édité par o'gure le 11-12-2007 à 22:58:48

---------------
Relax. Take a deep breath !
mood
Publicité
Posté le 11-12-2007 à 22:52:39  profilanswer
 

n°990282
o'gure
Modérateur
Multi grognon de B_L
Posté le 11-12-2007 à 23:04:24  profilanswer
 

Pour la RHEL-4 : http://www.redhat.com/docs/manuals [...] STOOL.html


---------------
Relax. Take a deep breath !
n°990380
kabouns
Posté le 12-12-2007 à 10:07:34  profilanswer
 

Citation :


Peux tu nous dire qu'est ce qui te fais croire qu'il ne s'éxécute pas dans le bon ordre ?


 
Donc mon problème est le suivant :  
 
Depuis que j'ai installé Avast et Avastguard mon serveur Redhat 5 se bloque sur "Killall services" à l'arrêt (ou au redémarrage). Dans la doc il est dit que avastguard doit s'arreter avant avastd, je vais vérifier, et je modifie rc0 et rc6 pour cet ordre (non respecté de base). Je redémarre ça change rien, j'arrête idem ça bloque.....Ensuite j'arrête mon  service avastguard manuellement et je  redémarre sans problème => j'en conclu qu'il y a un problème à l'arret.
 
merci
 
kab

n°990386
o'gure
Modérateur
Multi grognon de B_L
Posté le 12-12-2007 à 10:21:32  profilanswer
 

Normalement, les scripts s'exécutent séquentiellement :
 - pour le démarrage : les scripts s'exécutent suivant leur ordre de priorité S01 -> S99 avec en paramètre start
 - pour l'arrêt : les scripts s'éxécutent suivant leur ordre de priorité K01 -> K99 avec en paramètre stop
 
Tu as bien suivi ces règles quand tu as utilisé chkconfig pour les séquencer ?
Dans les scripts, chkconfig a t il rajouté un header avec le niveau de priorité en commentaire ?
Les liens sont ils bon ?
 
 
Dans le pire des cas, tu peux toujours modifiés les scripts où en créer un unique pour stopper les deux services en un coup
1. tu fermes le premier proprement /etc/init.d/premierscript stop
2. si tout c'est bien passé tu fermes le suivant /etc/init.d/secondscript stop
 
tu reprends le squelette des script d'init, tu le places dans /etc/init.d et tu fais les liens qui vont bien dans /etc/rc{0-5}.d
 


---------------
Relax. Take a deep breath !
n°990402
kabouns
Posté le 12-12-2007 à 10:36:08  profilanswer
 

o'gure a écrit :

Normalement, les scripts s'exécutent séquentiellement :
Tu as bien suivi ces règles quand tu as utilisé chkconfig pour les séquencer ?
Dans les scripts, chkconfig a t il rajouté un header avec le niveau de priorité en commentaire ?
Les liens sont ils bon ?


 
La je ne comprends pas trop, j'ai utilisé chkconfig de la manière suivante :  
 
chkconfig --level 345 avastd on
chkconfig --level 345 avastgard on
 
On ne peut pas définir l'ordre via cette commande.
En plus je ne comprends pas trop à quoi servent les liens dans rc3.d etc..... qui commence par K ? Il ne faut pas démarrer Kxxname au niveau 3 c'est ca ?
En ce qui concerne le header, je ne sais pas ce que  c'est à quoi ça sert mais  je  pense que c'est ça :  
 

Code :
  1. # RedHat comment block...
  2. #
  3. # chkconfig: 345 94 06
  4. # description: Resident avast! virus scanner.
  5. # pidfile: /var/run/avastd.pid
  6. # processname: avastd
  7. #
  8. ##
  9. # LSB comment block...
  10. #
  11. ### BEGIN INIT INFO
  12. # Provides:       avastd
  13. # Required-Start: $local_fs $network $syslog # Required-Stop:  $local_fs $network $syslog # Default-Start:  3 4 5
  14. # Default-Stop:   0 1 2 6
  15. # Description:    demonized avast! engine.
  16. ### END INIT INFO


n°990891
peyo22
Free heel :)
Posté le 13-12-2007 à 01:01:53  profilanswer
 

black_lord a écrit :

les distributions fournissent des outils pour ça :o
 
(ceci exclut les dinosaures de type slackwariens)


c'est sur, les inits BSD sont tellement simples a comprendre que ya pas besoin de tool pour les administrer ;)


---------------
"Se tromper est humain ; Vraiment foutre la merde necessite le mot de passe de root."
n°991076
kabouns
Posté le 13-12-2007 à 15:15:14  profilanswer
 

merci peyo22 mais mon problème n'est  pas la!!!!!

n°992015
kabouns
Posté le 17-12-2007 à 10:16:29  profilanswer
 

Bonjour à tous,
 
J'ai éclairci certaines choses. Alors en fait je me demandais si lors de l'arrêt ou le reboot de mon serveur le script d'init d'avast était bien pris en compte. Pour vérifier j'ai mis la  commande "service avastd stop" dans un  script d'init qui fonctionne. Et la miracle ça fonctionne. Mon probleme est  donc  le suivant : pourquoi mon script marche  de manière manuelle mais  n'est pas pris en compte par init à l'arret ?
 
merci
 
Kab

n°993165
kabouns
Posté le 19-12-2007 à 17:56:26  profilanswer
 

Bon alors j'ai trouvé la solution à mon problème, sous redhat 5 enterprise pour que les scripts d'arrêt soient pris en compte il faut que le fichier /var/lock/nom_du_service existe.  
Le probleme c'est que tous les scripts créent pas ce fichier.
Donc dans la fonction start du script init il faut ajouter :  
 
touch /var/lock/nom_du_service
 
Et dans la fonction stop :  
 
rm -rf /var/lock/nom_du_service
 
Voila voilou j'espere que ca pourra aider d'autres personnes.
 
Kab


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Script d'arrêt sous Linux

 

Sujets relatifs
Enlever Linux et démarrer sous windoScript QoS qui marche partiellement
Script Bash : appeler un script avec une chaîne en option[Résolut] Partage internet par Linux Debian pour Windows avec un hub
Authentification des utilisateurs avec OpenLDAP + OpenSSHScript Shell condition répertoire vide
Ecran de veille sous linuxjeux sous linux
script shell qui recherche un mot 
Plus de sujets relatifs à : Script d'arrêt sous Linux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR