
Ces notes traitent de la mise en place d'un service sur HPUX. La version de HP-UX qui a été utilisée pour des tests est la 11i (B.11.11). La gestion des services est similaire sur la plupart des versions 10 et 11 de HP-UX.
Sont décrits ici la gestion des scripts de démarrage et d'arrêt de services, la gestion des niveaux d'exécution et à partir de quoi commencer à écrire un script de démarrage pour un nouveau service, ou bien, un service existant ne possédant pas de script de lancement et d'arrêt.
Contrairement à beaucoup de systèmes Unix/GNU Linux, où les scripts de contrôle des services se trouvent dans /etc/init.d/, pour HP-UX, ces scripts se trouvent rassemblés dans /sbin/init.d/.
Les niveaux d'exécution qui nous intéressent ici sont les suivants :
| Niveau 1 | Configuration minimale du système. |
| Niveau 2 | Lancement des services multiutilisateurs et réseaux (sauf NFS). |
| Niveau 3 | Services NFS et ceux qui en ont besoins. |
Dans la plupart des cas, un nouveau service à configuré sera défini pour un démarrage au niveau 2 (sauf, bien sûr, s'il est basé sur NFS) et un arrêt dans les autres niveaux.
La définition du démarrage ou de l'arrêt pour chaque niveau est déterminé par un lien particulier dans /sbin/rc<n>.d/, où <n> représente le numéro du niveau d'exécution.
Le lien symbolique est défini comme ceci : /sbin/rc<n>.d/DXXservice où :
| n | Niveau de démarrage. |
| D | S pour une définition d'un démarrage (start) ou K pour la définition d'un arrêt (kill). |
| XX | Nombre sur deux chiffres qui indique l'ordre de démarrage ou d'arrêt du service par rapport aux autres dans le même niveau d'exécution. |
| service | Le nom du service. En général, le nom du script sur lequel pointe le lien est repris ici. |
Exemple de lien de démarrage du script de lancement et d'arrêt du service bidon :
root# ls -l /sbin/rc2.d/S90bidon
0 lrwxrwxrwx 1 root root 17 Oct 7 2005 /sbin/rc2.d/S90bidon -> ../init.d/bidon
Pour écrire un nouveau script de démarrage/arrêt d'un service dans les rêgles de l'art, il est fortement conseillé de s'appuyer sur le modèle /sbin/init.d/template.