Nombreux sont les utilisateurs qui choisissent d'installer
des logiciels tierce partie sous FreeBSD à partir du
catalogue des logiciels portés. Dans de nombreuses
situations, il peut être nécessaire de configurer
le logiciel de manière à ce qu'il soit
lancé au démarrage du système. Des
services comme mail/postfix
ou www/apache13
sont deux
exemples de logiciels parmi tant d'autres qui peuvent être
lancés à l'initialisation du système.
Cette section explique les procédures disponibles pour
démarrer certains logiciels tierce partie.
Sous FreeBSD, la plupart des services offerts, comme cron(8), sont lancés par l'intermédiaire des procédures de démarrage du système. Ces procédures peuvent varier en fonction de la version de FreeBSD, ou du fournisseur; cependant, l'aspect le plus important à considérer est que leur configuration de démarrage peut être gérée à l'aide de procédures de démarrage simples.
Avant l'avènement du système rc.d
, les
applications plaçaient une procédure simple de
lancement dans le répertoire /usr/local/etc/rc.d
qui était
lue par les scripts d'initialisation du système. Ces
procédures étant alors exécutées
lors des dernières étapes du démarrage du
système.
Bien que de nombreuses personnes aient passé des
heures à tenter de fusionner l'ancien mode de
configuration avec le nouveau, il reste que certains utilitaires
tierce partie ont toujours besoin d'un script placé dans
le répertoire précédemment
évoqué. Les différences subtiles dans les
scripts dépend de si le système rc.d
est
utilisé ou non. Avant FreeBSD 5.1 l'ancien style de
configuration était utilisé et dans presque tous
les cas la nouvelle procédure fonctionnera sans
problème.
Bien que chaque procédure doit remplir certains
pré-requis minimum, la plupart du temps ils seront
indépendants de la version de FreeBSD. Chaque
procédure doit avoir une extension
.sh
et doit être exécutable
par le système. Ce dernier point peut être
réalisé en utilisant la commande
chmod
et en fixant les permissions à
755
. Il doit y avoir, au minimum, une option
pour démarrer (start
) l'application et
une autre pour l'arrêter (stop
).
La procédure de démarrage la plus simple ressemblera à celle-ci:
Cette procédure offre des options
stop
et start
pour une
application appelée ici utility
.
L'application pourra être lancée manuellement avec:
#
/usr/local/etc/rc.d/utility.sh
start
Bien que toutes les applications tierce partie ne
nécessitent pas de ligne dans le fichier
rc.conf
, chaque jour un nouveau logiciel
porté sera modifié pour accepter cette
configuration. Contrôlez l'affichage final lors de
l'installation de l'application pour plus d'information à
ce sujet. Certains logiciels fourniront des procédures
qui permettrons à l'application d'être
utilisée avec le système rc.d
, cela sera
abordé dans la section suivante.
Maintenant que FreeBSD dispose du système rc.d
, la
configuration du démarrage des applications est plus
simple, et propose plus de possibilités.
En utilisant les mots clés présentés dans
la section sur le système rc.d, les applications
peuvent désormais être paramétrées
pour démarrer après certains services, par
exemple le DNS, des paramètres
supplémentaires peuvent être passés par
l'intermédiaire de rc.conf
au lieu
d'utiliser des paramètres fixes dans les
procédures de démarrage, etc. Une
procédure de base pourra ressembler à ce qui
suit:
Cette procédure s'assurera que l'application
utility sera lancée après le
le service
daemon
. Elle fournie également une
méthode de suivi du PID, ou encore
ID (identifiant) de processus.
Cette application pourra alors avoir la ligne suivante la
concernant dans le fichier
/etc/rc.conf
:
Cette nouvelle méthode permet également une
manipulation plus aisée des arguments en ligne de
commande, l'inclusion des fonctions offertes par défaut
dans /etc/rc.subr
, offre une
compatibilité avec l'utilitaire rcorder(8) et
fournie une configuration plus aisée par
l'intermédiaire du fichier
rc.conf
.
Certains services, comme les serveurs
POP3, IMAP, etc.,
peuvent être démarrés en utilisant
inetd(8). Cela implique d'installer le service à
partir du catalogue des logiciels portés et avec une
ligne de configuration ajoutée au fichier
/etc/inetd.conf
, ou en
décommentant une des lignes de configuration
déjà présentes. L'utilisation
d'inetd et sa configuration sont
décrits en profondeur dans la section concernant inetd.
Dans certains cas, il peut être plus
approprié d'utiliser le « daemon »
cron(8) pour démarrer des services. Cette
approche présente un certain nombre d'avantages parce
que cron
exécute ces processus sous
les privilèges du propriétaire de la table
crontab
. Cela permet aux utilisateurs
normaux de lancer et maintenir certaines applications.
L'utilitaire cron
offre une fonction
unique, @reboot
, qui peut être
utilisée en remplacement de la date d'exécution.
Cela provoquera l'exécution de la tâche quand
cron(8) est lancé, normalement lors de
l'initialisation du système.
Ce document, ainsi que d'autres peut être téléchargé sur ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Pour toutes questions à propos de FreeBSD, lisez la
documentation avant de contacter
<questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez
<doc@FreeBSD.org>.