ANDESI Index du Forum ANDESI
Forum francophone pour la Debian
 
 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

[DOCUMENTATION] Lancer un programme au démarrage (suite)

 
Poster un nouveau sujet   Répondre au sujet    ANDESI Index du Forum -> Documentations et liens intéressants
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
arnaud
Administrateur


Inscrit le: 23 Mar 2003
Messages: 130
Localisation: Savoie

MessagePosté le: 06 Juil 2003 19:55    Sujet du message: [DOCUMENTATION] Lancer un programme au démarrage (suite)

salut,

J'ai également amélioré l'article que j'avais posté sur le précédent sujet en suivant tout ce qui a été dit sur celui-ci. Merci à tous ceux qui ont participé sans qui l'article sur update-rc.d serait certainement incomplet à l'heure qu'il est.

Je poste aussi cet article afin que vous puissiez le critiquer dans le but de l'améliorer de nouveau.

Cet article est aussi disponible dans différents formats :
http://www.andesi.org/articles/html/services.html (html seul)
http://www.andesi.org/articles/latex/services.tex (latex)

++ Arnaud
==========================================
Gérer les services lancés au démarrage
**************************************
Table des matières
*=*=*=*=*=*=*=*=*=
- 1 Introduction
- 2 Comment sont lancés les services au démarrage et à l'arrêt de
votre système
- 3 Création d'un script de démarrage
- 4 Installation de liens vers les scripts de démarrage
- 5 Désinstallation de liens vers les scripts de démarrage
- 6 Pour en savoir plus

1 Introduction
*=*=*=*=*=*=*=*

A la différence des distributions telles que RedHat ou Mandrake, la
distribution Debian n'utilise pas de fichier rc.local permettant de
faire des liens vers des scripts de démarrage. La commande update-rc.d
provenant du paquet sysv-rc est spécifique à Debian et remplace
avantageusement ce script. En lisant la page de manuel de update-rc.d
(# man update-rc.d) qui décrit assez bien la fonction de cet utilitaire
: update-rc.d met à jour automatiquement les liens vers les scripts
d'initialisation de type System-V. Pour le néophyte cela signifie que
cette commande permet de gérer les liens vers les scripts de démarrage,
si cela vous paraît un peu confus, c'est normal à ce stade, la suite de
cet article devrait éclaircir cette explication.


2 Comment sont lancés les services au démarrage et à l'arrêt de votre
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
système
*=*=*=*

Init a pour rôle de démarrer vos services (comme par exemple gdm qui
est un prompt graphique) par l'intermédiaire du fichier de
configuration /etc/inittab qui contient les scripts à démarrer. Ce
fichier permet de définir un runlevel (ou niveau de démarrage) qui
permettra seulement l'exécution d'un groupe de services. Il existe par
convention 6 runlevel. Le runlevel 0 et 6 sont réservés respectivement à
l'arrêt et au redémarrage du système, le niveau 1 permet de démarrer
le mode utilisateur unique.

Ainsi les liens vers les scripts de démarrage se trouvent dans rcX.d
où X représente le niveau de démarrage (runlevel) tandis que les
scripts proprement dit se situent dans /etc/init.d. Les 7 niveaux de
démarrage sont donc :

- 0 - arrêt du système (halt)

- 1 - mode utilisateur unique (single user). Ce mode est utilisé
généralement si vous rencontrez des problèmes avec certains
services lancés au démarrage car le minimun de services sont démarrés
et vous pouvez seulement vous identifiez en tant qu'utilisateur
root.

- 2 à 5 - mode multi-utilisateur car sous Debian tous ces niveaux sont
identiques. Ce mode vous permet de vous identifiez en n'importe
quel utilisateur.

- 6 - redémarrage (reboot)

Le changement du niveau de démarage peut être effectué par root avec
la commande init en tapant par exemple : # init 1. Ce niveau de
démarrage est défini dans le fichier /etc/inittab par une ligne comme
celle-ci où 2 représente le niveau de démarrage actuel :
id:2:initdefault:

Maintenant que nous avons défini les différents niveaux de démarrage
et leurs rôle, nous allons désormais expliquer de quelle manière se
lance les services. Pour qu'un service, que nous appelerons exemple, se
lance au niveau de démarrage 0, 2 et 6 sans passer par la commande
update-rc.d, il faut faire des liens symboliques vers le script de
démarrage se trouvant dans /etc/init.d :
# ln -s /etc/init.d/exemple /etc/rc0.d/K20exemple
# ln -s /etc/init.d/exemple /etc/rc2.d/S20exemple
# ln -s /etc/init.d/exemple /etc/rc6.d/K20exemple

Nous pouvons également démarrer et arrêter manuellement un service en
tapant respectivement :
# /etc/init.d/exemple start
# /etc/init.d/exemple stop

Ces liens sont nommés selon une méthode précise : une lettre (K ou S
suivant le niveau de démarrage) suivi d'un chiffre (20 dans cet
exemple) et enfin du nom de votre script (exemple ici). Le S signifie
que le script doit être lancé (argument passé au script : start) alors
que le K signifie que le script doit être arrêté (argument passé au
script : stop). Enfin le chiffre définie l'ordre de lancement et
d'arrêt des scripts, ainsi S20exemple sera démarré avant S10syslogkd,
cependant K20exemple sera arrêté après K10syslogkd.

Passons désormais à la pratique en écrivant un script de démarrage et
en précisant le fonctionnement de la commande update-rc.d afin d'éviter
la création des liens assez fastidieuse. Vous pouvez également
utiliser des outils remplissant la même fonction que update-rc.d en mode
graphique tel que ksysv (paquet du même nom).


3 Création d'un script de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

L'écriture d'un script de démarrage se révèle en fait plus simple
que vous ne le pensez. Vous devez néanmoins posséder quelques bases en
programmation shell. Pour obtenir plus d'informations consultez la page
de manuel de votre shell (pour bash qui est le shell par défaut sur
Debian : # man bash).

Voici un exemple commenté de script de démarrage possible :
#!/bin/sh

## Script basique donné à titre d'exemple et destiné à montrer
comment fonctionne un script de démarrage.
## On pourrait utiliser la commande start-stop-daemon comme dans le
script initial d'apache mais cela sortira du cadre de cet article icon_wink.gif
## On précise tout d'abord que c'est un script écrit en shell avec la
ligne ci-dessus

## /etc/init.d/apache`_'exemple: démarre et arrête le service apache

## On définit la valeur de quelques variables avant de commencer le
script proprement dit.
# Répertoires contenant de nombreux programmes exécutables
PATH=/bin:/usr/bin:/sbin:/usr/sbin
# Chemin vers le programme qui démarrera Apache
DAEMON=/usr/sbin/apache
# Optionnel : définit le nom et la description qui s'afficheront lors
du démarrage ou de l'arrêt du script
NAME=apache
DESC="Webserver"

## Début du script proprement dit
# On vérifie tout d'abord que le programme apachectl est exécutable,
sinon fin du script
test -x `$'DAEMON || exit 0

# Suivant l'argument que l'on va ajouter après le nom du script, on
va définir différentes possibilités aux script grâce à l'instruction
case
case "`$'1" in
# si on tape # /etc/init.d/apache`_'exemple start, les
instructions qui suivent vont être exécutées
start)
# Affiche : « Starting Webserver: apache »
# `$'DESC et `$'NAME sont bien entendu les variables que l'on
a définit plus haut
echo -n "Starting `$'DESC: `$'NAME"
# Lance le serveur web Apache
apache `&' >`&' /dev/null
echo "."
;;
# Fin des instructions si on met l'argument start après le nom du
script
# si on tape # /etc/init.d/apache`_'exemple stop, les
instructions suivantes vont être exécutées
stop)
# Affiche : « Stopping Webserver: apache »
echo -n "Stopping `$'DESC: `$'NAME"
# Tue tous les processus portant le nom « apache »
sauvagement (« -9 ») et n'affiche pas le résultat (« /dev/null »)
killall -9 apache >`&' /dev/null
echo "."
;;
# Fin des instructions si on met l'argument stop après le nom
du script
# si on tape /etc/init.d/apache`_'exemple restart, les
instructions suivantes vont être exécutées
restart)
# Affiche : « Restarting Webserver: apache»
echo -n "Restarting `$'DESC: `$'NAME"
# Vérifie si le processus apache est déjà lancé ou non
if [ -z "`$'(ps ax | egrep apache)" ]; then
# Si il n'est pas lancé alors on affiche : « Apache isn't
running, so not killed »
echo " Apache isn't running, so not killed" ;
else
# Sinon on tue tous les processus portant le nom apache comme
décrit précédemment
killall -9 apache >`&' /dev/null ;
fi
# Attente d'une seconde avant de continuer le script
sleep 1
# Enfin on démarre le serveur apache
apache >`&' /dev/null
echo "."
;;
# Si on tape # /etc/init.d/apache alors le script affichera les
différents arguments que l'on peut donner au script
`*')
echo "Usage: /etc/init.d/`$'NAME start|stop|restart" >`&'2
exit 1
;;
esac

exit 0
# Fin du script ! Une fois que vous avez enregistrer ce
fichier dans le répertoire /etc/init.d sous le nom apache`_'exemple,
il ne vous reste plus qu'à le rendre exécutables. Pour cela, vous pouvez
procéder de deux manières qui aboutissent exactement au même résultat
dans ce cas-là :
# chmod +x /etc/init.d/apache`_'exemple
# chmod 755 /etc/init.d/apache`_'exemple

Vous pouvez désormais vérifier que votre script fonctionne avec les
commandes suivantes :
# /etc/init.d/apache`_'exemple start
# /etc/init.d/apache`_'exemple stop

Nous allons ensuite décrire le fonctionnement de la commande
update-rc.d pour que votre script soit lancé lors du démarrage ou de
l'arrêt du système.

4 Installation de liens vers les scripts de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

Imaginons que vous vouliez exécuter notre script apache`_'exemple au
démarrage dans un runlevel particulier tel que décrit plus haut.

Commençons par un exemple simple qui devrait convenir à la plupart
des utilisateurs :
# update-rc.d apache`_'exemple defaults 20
Adding system startup for /etc/init.d/apache`_'exemple ...
/etc/rc0.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc1.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc6.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc2.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc3.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc4.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc5.d/S19apache`_'exemple -> ../init.d/apache`_'exemple

De cette façon les liens sont tous créés avec la lettre S pour les
niveaux de démarrage standard du système et K pour les autres, ainsi
qu'avec le chiffre 20 quelque soit le niveau de démarrage.

Un autre exemple d'utilisation, cette fois-ci un peu plus poussé :
# update-rc.d apache`_'exemple start 20 5 . stop 40 6
Adding system startup for /etc/init.d/apache`_'exemple ...
/etc/rc6.d/K40apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc5.d/S10apache`_'exemple -> ../init.d/apache`_'exemple

De cette autre façon les liens sont créés uniquement pour les niveau
5 et 6 de démarrage. De plus on a assigné des numéro différents
suivant le runlevel.
Vérifiez bien que les liens sont bien placés et grâce à cette
magnifique commande qu'est update-rc.d votre script sera lancé au
prochain redémarrage.

5 Désinstallation de liens vers les scripts de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

Imaginons maintenant que vous voulez désinstaller le script
précédent afin qu'il ne soit plus lancé au démarrage. Deux cas de
figure se présente à vous :

- Vous n'avez plus besoin du script donc vous supprimez le script du
répertoire /etc/init.d.

- Sinon vous gardez ce script afin de pouvoir éventuellement le
réutiliser plus tard.
Dans le premier cas, il vous suffit de taper :
# rm /etc/init.d/apache`_'exemple
# update-rc.d apache`_'exemple remove

Dans le second cas vous taperez alors :
# update-rc.d apache`_'exemple remove

6 Pour en savoir plus
*=*=*=*=*=*=*=*=*=*=*=

Si vous voulez en apprendre davantage sur la commande update-rc.d et
sur le système init, les pages de manuels sont très utiles surtout si
vous les installez en français (apt-get install manpages-fr :
# man update-rc.d
# man init
==========================================
Revenir en haut
Voir le profil de l'utilisateur Visiter le site web du posteur
kagou
Administrateur


Inscrit le: 21 Mar 2003
Messages: 367
Localisation: Gard

MessagePosté le: 06 Juil 2003 20:29    Sujet du message:

Citation:
Vous pouvez également utiliser la commande update-rc.d dont le fonctionnement est expliqué dans l'article Gérer les services lancés au démarrage mais pensez tout de même à supprimer les liens vers le script hdparm dans les répertoires rc0.d et rc6.d.


Un exemple pour update-rd.d icon_wink.gif

Super taf
CrayonGomme si tu nous regarde ....
Revenir en haut
Voir le profil de l'utilisateur
arnaud
Administrateur


Inscrit le: 23 Mar 2003
Messages: 130
Localisation: Savoie

MessagePosté le: 07 Juil 2003 13:25    Sujet du message:

salut,

Plus d'autres remarques à propos de cet article ? Je le publie alors ? icon_wink.gif

++ Arnaud
Revenir en haut
Voir le profil de l'utilisateur Visiter le site web du posteur
crayongomme
Tout Nouveau



Inscrit le: 03 Mai 2003
Messages: 11

MessagePosté le: 07 Juil 2003 19:57    Sujet du message: Re: [DOCUMENTATION] Lancer un programme au démarrage (suite)

arnaud a écrit:


Gérer les services lancés au démarrage
**************************************
Table des matières
*=*=*=*=*=*=*=*=*=
- 1 Introduction
- 2 Comment sont lancés les services au démarrage et à l'arrêt de
votre système
- 3 Création d'un script de démarrage
- 4 Installation de liens vers les scripts de démarrage
- 5 Désinstallation de liens vers les scripts de démarrage
- 6 Pour en savoir plus

1 Introduction
*=*=*=*=*=*=*=*

A la différence des distributions telles que RedHat ou Mandrake, la
distribution Debian n'utilise pas de fichier rc.local permettant de
faire des liens vers des scripts de démarrage. La commande update-rc.d
provenant du paquet sysv-rc est spécifique à Debian et remplace
avantageusement ce script. En lisant la page de manuel de update-rc.d
(# man update-rc.d) qui décrit assez bien la fonction de cet utilitaire
: update-rc.d met à jour automatiquement les liens vers les scripts
d'initialisation de type System-V. Pour le néophyte cela signifie que
cette commande permet de gérer les liens vers les scripts de démarrage,
si cela vous paraît un peu confus, c'est normal à ce stade, la suite de
cet article devrait éclaircir cette explication.


2 Comment sont lancés les services au démarrage et à l'arrêt de votre
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
système
*=*=*=*

Init a pour rôle de démarrer vos services (comme par exemple gdm qui
est un prompt graphique) par l'intermédiaire du fichier de
configuration /etc/inittab qui contient les scripts à démarrer. Ce
fichier permet de définir un runlevel (ou niveau de démarrage) qui

permettra seulement l'exécution d'un groupe de services. Il existe par

convention 6 runlevels. Le runlevel 0 et 6 sont réservés respectivement à
l'arrêt et au redémarrage du système, le niveau 1 permet de démarrer
le mode utilisateur unique.

Ainsi les liens vers les scripts de démarrage se trouvent dans rcX.d
où X représente le niveau de démarrage (runlevel) tandis que les
scripts proprement dit se situent dans /etc/init.d. Les 7 niveaux de
démarrage sont donc :

- 0 - arrêt du système (halt)

- 1 - mode utilisateur unique (single user). Ce mode est utilisé
généralement si vous rencontrez des problèmes avec certains
services lancés au démarrage car le minimun de services sont démarrés
et vous pouvez seulement vous identifier en tant qu'utilisateur
root.

- 2 à 5 - mode multi-utilisateur car sous Debian tous ces niveaux sont
identiques. Ce mode vous permet de vous identifier en n'importe
quel utilisateur.

- 6 - redémarrage (reboot)

Le changement du niveau de démarage peut être effectué par root avec
la commande init en tapant par exemple : # init 1. Ce niveau de
démarrage est défini dans le fichier /etc/inittab par une ligne comme
celle-ci où 2 représente le niveau de démarrage actuel :
id:2:initdefault:

Maintenant que nous avons défini les différents niveaux de démarrage
et leur rôle, nous allons désormais expliquer de quelle manière se
lancent les services. Pour qu'un service, que nous appelerons exemple, se
lance au niveau de démarrage 0, 2 et 6 sans passer par la commande
update-rc.d, il faut faire des liens symboliques vers le script de
démarrage se trouvant dans /etc/init.d :
# ln -s /etc/init.d/exemple /etc/rc0.d/K20exemple
# ln -s /etc/init.d/exemple /etc/rc2.d/S20exemple
# ln -s /etc/init.d/exemple /etc/rc6.d/K20exemple

Nous pouvons également démarrer et arrêter manuellement un service en
tapant respectivement :
# /etc/init.d/exemple start
# /etc/init.d/exemple stop

Ces liens sont nommés selon une méthode précise : une lettre (K ou S
suivant le niveau de démarrage) suivi d'un chiffre (20 dans cet
exemple) et enfin du nom de votre script (exemple ici). Le S signifie
que le script doit être lancé (argument passé au script : start) alors
que le K signifie que le script doit être arrêté (argument passé au
script : stop). Enfin le chiffre définit l'ordre de lancement et
d'arrêt des scripts, ainsi S20exemple sera démarré avant S10syslogkd,
cependant K20exemple sera arrêté après K10syslogkd.

Passons désormais à la pratique en écrivant un script de démarrage et
en précisant le fonctionnement de la commande update-rc.d afin d'éviter
la création des liens assez fastidieuse. Vous pouvez également
utiliser des outils remplissant la même fonction que update-rc.d en mode
graphique tel que ksysv (paquet du même nom).


3 Création d'un script de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

L'écriture d'un script de démarrage se révèle en fait plus simple
que vous ne le pensez. Vous devez néanmoins posséder quelques bases en
programmation shell. Pour obtenir plus d'informations consultez la page
de manuel de votre shell (pour bash qui est le shell par défaut sur
Debian : # man bash).

Voici un exemple commenté de script de démarrage possible :
#!/bin/sh

## Script basique donné à titre d'exemple et destiné à montrer
comment fonctionne un script de démarrage.
## On pourrait utiliser la commande start-stop-daemon comme dans le
script initial d'apache mais cela sortira du cadre de cet article icon_wink.gif
## On précise tout d'abord que c'est un script écrit en shell avec la
ligne ci-dessus

## /etc/init.d/apache`_'exemple: démarre et arrête le service apache

## On définit la valeur de quelques variables avant de commencer le
script proprement dit.
# Répertoires contenant de nombreux programmes exécutables
PATH=/bin:/usr/bin:/sbin:/usr/sbin
# Chemin vers le programme qui démarrera Apache
DAEMON=/usr/sbin/apache
# Optionnel : définit le nom et la description qui s'afficheront lors
du démarrage ou de l'arrêt du script
NAME=apache
DESC="Webserver"

## Début du script proprement dit
# On vérifie tout d'abord que le programme apachectl est exécutable,
sinon fin du script
test -x `$'DAEMON || exit 0

# Suivant l'argument que l'on va ajouter après le nom du script, on
va définir différentes possibilités aux script grâce à l'instruction
case
case "`$'1" in
# si on tape # /etc/init.d/apache`_'exemple start, les
instructions qui suivent vont être exécutées
start)
# Affiche : « Starting Webserver: apache »
# `$'DESC et `$'NAME sont bien entendu les variables que l'on
a défini plus haut
echo -n "Starting `$'DESC: `$'NAME"
# Lance le serveur web Apache
apache `&' >`&' /dev/null
echo "."
;;
# Fin des instructions si on met l'argument start après le nom du
script
# si on tape # /etc/init.d/apache`_'exemple stop, les
instructions suivantes vont être exécutées
stop)
# Affiche : « Stopping Webserver: apache »
echo -n "Stopping `$'DESC: `$'NAME"
# Tue tous les processus portant le nom « apache »
sauvagement (« -9 ») et n'affiche pas le résultat (« /dev/null »)
killall -9 apache >`&' /dev/null
echo "."
;;
# Fin des instructions si on met l'argument stop après le nom
du script
# si on tape /etc/init.d/apache`_'exemple restart, les
instructions suivantes vont être exécutées
restart)
# Affiche : « Restarting Webserver: apache»
echo -n "Restarting `$'DESC: `$'NAME"
# Vérifie si le processus apache est déjà lancé ou non
if [ -z "`$'(ps ax | egrep apache)" ]; then
# Si il n'est pas lancé alors on affiche : « Apache isn't
running, so not killed »
echo " Apache isn't running, so not killed" ;
else
# Sinon on tue tous les processus portant le nom apache comme
décrit précédemment
killall -9 apache >`&' /dev/null ;
fi
# Attente d'une seconde avant de continuer le script
sleep 1
# Enfin on démarre le serveur apache
apache >`&' /dev/null
echo "."
;;
# Si on tape # /etc/init.d/apache alors le script affichera les
différents arguments que l'on peut donner au script
`*')
echo "Usage: /etc/init.d/`$'NAME start|stop|restart" >`&'2
exit 1
;;
esac

exit 0
# Fin du script ! Une fois que vous avez enregistré ce
fichier dans le répertoire /etc/init.d sous le nom apache`_'exemple,
il ne vous reste plus qu'à le rendre exécutable. Pour cela, vous pouvez
procéder de deux manières qui aboutissent exactement au même résultat
dans ce cas-là :
# chmod +x /etc/init.d/apache`_'exemple
# chmod 755 /etc/init.d/apache`_'exemple

Vous pouvez désormais vérifier que votre script fonctionne avec les
commandes suivantes :
# /etc/init.d/apache`_'exemple start
# /etc/init.d/apache`_'exemple stop

Nous allons ensuite décrire le fonctionnement de la commande
update-rc.d pour que votre script soit lancé lors du démarrage ou de
l'arrêt du système.

4 Installation de liens vers les scripts de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

Imaginons que vous vouliez exécuter notre script apache`_'exemple au
démarrage dans un runlevel particulier tel que décrit plus haut.

Commençons par un exemple simple qui devrait convenir à la plupart
des utilisateurs :
# update-rc.d apache`_'exemple defaults 20
Adding system startup for /etc/init.d/apache`_'exemple ...
/etc/rc0.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc1.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc6.d/K19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc2.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc3.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc4.d/S19apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc5.d/S19apache`_'exemple -> ../init.d/apache`_'exemple

De cette façon les liens sont tous créés avec la lettre S pour les
niveaux de démarrage standard du système et K pour les autres, ainsi
qu'avec le chiffre 20 quelque soit le niveau de démarrage.

Un autre exemple d'utilisation, cette fois-ci un peu plus poussé :
# update-rc.d apache`_'exemple start 20 5 . stop 40 6
Adding system startup for /etc/init.d/apache`_'exemple ...
/etc/rc6.d/K40apache`_'exemple -> ../init.d/apache`_'exemple
/etc/rc5.d/S10apache`_'exemple -> ../init.d/apache`_'exemple

De cette autre façon les liens sont créés uniquement pour les niveaux
5 et 6 de démarrage. De plus on a assigné des numéro différents
suivant le runlevel.
Vérifiez bien que les liens sont bien placés et grâce à cette
magnifique commande qu'est update-rc.d votre script sera lancé au
prochain redémarrage.

5 Désinstallation de liens vers les scripts de démarrage
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

Imaginons maintenant que vous voulez désinstaller le script
précédent afin qu'il ne soit plus lancé au démarrage. Deux cas de
figure se présentent à vous :

- Vous n'avez plus besoin du script donc vous supprimez le script du
répertoire /etc/init.d.

- Sinon vous gardez ce script afin de pouvoir éventuellement le
réutiliser plus tard.
Dans le premier cas, il vous suffit de taper :
# rm /etc/init.d/apache`_'exemple
# update-rc.d apache`_'exemple remove

Dans le second cas vous taperez alors :
# update-rc.d apache`_'exemple remove

6 Pour en savoir plus
*=*=*=*=*=*=*=*=*=*=*=

Si vous voulez en apprendre davantage sur la commande update-rc.d et
sur le système init, les pages de manuel sont très utiles surtout si
vous les installez en français (apt-get install manpages-fr :
# man update-rc.d
# man init
==========================================


c'était ma contrib du jour... icon_wink.gif

sinon ça n'est pas trop hermetique pour le newbie que je suis, c'est bon signe !

CG
icon_cool.gif
Revenir en haut
Voir le profil de l'utilisateur
kagou
Administrateur


Inscrit le: 21 Mar 2003
Messages: 367
Localisation: Gard

MessagePosté le: 07 Juil 2003 20:25    Sujet du message:

En effet icon_lol.gif
Revenir en haut
Voir le profil de l'utilisateur
arnaud
Administrateur


Inscrit le: 23 Mar 2003
Messages: 130
Localisation: Savoie

MessagePosté le: 07 Juil 2003 20:27    Sujet du message:

Salut,

Merci crayongomme pour ces corrections très utiles icon_lol.gif

++ Arnaud
Revenir en haut
Voir le profil de l'utilisateur Visiter le site web du posteur
arnaud
Administrateur


Inscrit le: 23 Mar 2003
Messages: 130
Localisation: Savoie

MessagePosté le: 08 Juil 2003 01:45    Sujet du message: Publication

Salut,

Je viens de publier l'articles fait en partie sur le forum :
http://www.andesi.org/article.php?id=services

Donnez moi votre avis... Je tiens encore à remercier tous ceux qui ont participé à la rédaction de cet article et également à leur correction icon_wink.gif sans qui cet article ne serait pas aussi complet qu'il l'est maintenant.

++ Arnaud
Revenir en haut
Voir le profil de l'utilisateur Visiter le site web du posteur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    ANDESI Index du Forum -> Documentations et liens intéressants Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB 2.0.5 © 2001, 2002 phpBB Group
Traduction par : phpBB-fr.com