JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Gestion des services et pannes dans Oracle Solaris 11.1     Oracle Solaris 11.1 Information Library (Français)
search filter icon
search icon

Informations document

Préface

1.  Gestion des services (présentation)

2.  Gestion des services (tâches)

Surveillance des services SMF

Surveillance des services (liste des tâches)

Procédure d'affichage du statut d'un service

Procédure d'affichage des personnalisations d'un service

Procédure d'affichage des services dépendants d'une instance de service

Procédure d'affichage des services dont dépend un service

Procédure de configuration de la notification pour les événements de transition SMF

Gestion des services SMF

Gestion des services SMF (liste des tâches)

Utilisation des profils de droits RBAC avec SMF

Procédure de création d'un service SMF

Procédure de désactivation d'une instance de service

Procédure d'activation d'une instance de service

Procédure de redémarrage d'un service

Procédure de restauration d'un service à l'état de maintenance

Procédure de création d'un profil SMF

Procédure de création manuelle d'un profil SMF

Procédure d'application d'un profil SMF

Configuration des services SMF

Configuration des services SMF (liste des tâches)

Procédure de modification d'une propriété de service SMF

Procédure de modification de propriétés multiples pour un seul service

Procédure de modification d'un service configuré par un fichier

Procédure de modification d'une variable d'environnement pour un service

Procédure de modification d'une propriété pour un service contrôlé inetd

Procédure de suppression des personnalisations d'un service

Procédure de modification d'un argument de ligne de commande pour un service contrôlé inetd

Procédure de conversion d'entrées inetd.conf

Utilisation de scripts de contrôle d'exécution

Utilisation de scripts de contrôle d'exécution (liste des tâches)

Procédure d'utilisation d'un script de contrôle d'exécution pour arrêter ou démarrer un service hérité

Procédure d'ajout d'un script de contrôle d'exécution

Procédure de désactivation d'un script de contrôle d'exécution

Procédure de conversion d'un script de contrôle d'exécution en service SMF

Dépannage de l'utilitaire de gestion des services (SMF)

Dépannage de SMF (liste des tâches)

Procédure de débogage d'un service dont le démarrage échoue

Procédure de réparation d'un référentiel endommagé

Procédure d'initialisation sans démarrer de services

Procédure d'initialisation en mode détaillé

Procédure d'affichage forcée d'une invite sulogin en cas d'échec du service system/filesystem/local:default lors de l'initialisation

3.  Utilisation du gestionnaire de pannes

Index

Utilisation de scripts de contrôle d'exécution

Les procédures suivantes indiquent comment utiliser des scripts de contrôle d'exécution pour arrêter ou démarrer un service hérité. Des instructions relatives à l'ajout ou à la suppression d'un script de contrôle d'exécution sont également fournies.

Utilisation de scripts de contrôle d'exécution (liste des tâches)

La liste des tâches suivante comprend plusieurs procédures associées à l'utilisation de scripts de contrôle d'exécution. Chaque ligne comprend une tâche, une description du moment auquel cette tâche doit être effectuée et un lien vers la tâche.

Tâche
Description
Voir
Arrêt ou démarrage d'un service hérité
Utiliser un script de contrôle d'exécution pour arrêter ou démarrer un service.
Ajout d'un script de contrôle d'exécution
Créer un script de contrôle d'exécution et l'ajouter à le répertoire /etc/init.d.
Désactivation d'un script de contrôle d'exécution
Désactiver un script de contrôle d'exécution en renommant le fichier.
Conversion d'un script de contrôle d'exécution pour qu'il utilise SMF.
Remplacer le script de contrôle d'exécution par un manifeste SMF afin que le service puisse être géré par le service SMF.

Procédure d'utilisation d'un script de contrôle d'exécution pour arrêter ou démarrer un service hérité

  1. Connectez-vous en tant qu'administrateur ou prenez un rôle incluant le profil de droits Service Management (Gestion des services).

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Arrêtez le service système.
    # /etc/init.d/filename stop
  3. Redémarrez le service système.
    # /etc/init.d/filename start
  4. Vérifiez que le service a été arrêté ou démarré.
    # pgrep -f service

Exemple 2-19 Utilisation d'un script de contrôle d'exécution pour arrêter ou démarrer un service

Par exemple, vous pouvez arrêter le démon du serveur PPPoE en saisissant la commande suivante :

# /etc/init.d/pppd stop
# pgrep -f nfs

Ensuite, vous pouvez redémarrer le démon du serveur NFS en tapant la commande suivante :

# /etc/init.d/pppd start
# pgrep -f ppp
101748
# pgrep -f ppp -d, | xargs ps -fp
     UID    PID   PPID   C    STIME TTY         TIME CMD
  daemon 101748      1   0   Sep 01 ?           0:06 /usr/lib/inet/pppoed

Procédure d'ajout d'un script de contrôle d'exécution

Si vous souhaitez ajouter un script de contrôle d'exécution pour démarrer et arrêter un service, copiez le script dans le répertoire /etc/init.d. Ensuite, créez des liens dans le répertoire rcn .d où vous souhaitez que le service démarre et s'arrête.

reportez-vous au fichier README dans chaque répertoire /etc/rc n.d pour plus d'informations sur le nommage des scripts de contrôle d'exécution. La procédure suivante décrit la procédure d'ajout d'un script de contrôle d'exécution.

  1. Connectez-vous en tant qu'administrateur ou prenez un rôle incluant le profil de droits Service Management (Gestion des services).

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Ajoutez un script de contrôle d'exécution au répertoire /etc/init.d .
    # cp filename/etc/init.d
    # chmod 0744 /etc/init.d/filename
    # chown root:sys /etc/init.d/filename
  3. Créez des liens vers le répertoire rcn.d approprié.
    # cd /etc/init.d
    # ln filename /etc/rc2.d/Snnfilename
    # ln filename /etc/rcn.d/Knnfilename
  4. Vérifiez que le script comporte des liens dans les répertoires spécifiés.
    # ls /etc/init.d/*filename /etc/rc2.d/*filename /etc/rcn.d/*filename

Exemple 2-20 Ajout d'un script de contrôle d'exécution

L'exemple suivant illustre comment ajouter un script de contrôle d'exécution pour le service xyz.

# cp xyz /etc/init.d
# chmod 0744 /etc/init.d/xyz
# chown root:sys /etc/init.d/xyz
# cd /etc/init.d
# ln xyz /etc/rc2.d/S99xyz
# ln xyz /etc/rc0.d/K99xyz
# ls /etc/init.d/*xyz /etc/rc2.d/*xyz /etc/rc0.d/*xyz

Procédure de désactivation d'un script de contrôle d'exécution

Vous pouvez désactiver un script de contrôle d'exécution en ajoutant un trait de soulignement (_) au début du nom de fichier. Les fichiers qui commencent par un trait de soulignement ou un point ne sont pas exécutés. Si vous copiez un fichier en y ajoutant un suffixe, les deux fichiers seront exécutés.

  1. Connectez-vous en tant qu'administrateur ou prenez un rôle incluant le profil de droits Service Management (Gestion des services).

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Renommez le script en ajoutant un trait de soulignement (_) au début du nouveau fichier.
    # cd /etc/rcn.d
    # mv filename_filename
  3. Vérifiez que le script a été renommé.
    # ls _*
    _filename

Exemple 2-21 Désactivation d'un script de contrôle d'exécution

L'exemple suivant illustre comment renommer le script S99datainit.

# cd /etc/rc2.d
# mv S99datainit _S99datainit
# ls _*
_S99datainit

Procédure de conversion d'un script de contrôle d'exécution en service SMF

Cette procédure décrit comment utiliser les avantages de SMF pour prendre en charge un script de contrôle d'exécution existant. Pour plus d'informations, reportez-vous à la page de manuel svcbundle (1M).

Avant de commencer

Déterminez tout d'abord le modèle de service dont le script a besoin. Si le script réalise certaines tâches et s'arrête, sans démarrer de processus à longue durée d'exécution, il s'agit probablement d'un service transitoire. Si le script démarre un démon à longue durée d'exécution, puis s'arrête, il s'agit alors d'un service de contrat. Pour de plus amples informations sur les modèles de service, reportez-vous à la section relative à la durée de la page de manuel svc.startd(1M).

Déterminez ensuite le niveau d'exécution approprié pour le service. Pour ce faire, identifiez le répertoire auquel le script est lié, par exemple /etc/rc3.d.

  1. Connectez-vous en tant qu'administrateur ou prenez un rôle incluant le profil de droits Service Management (Gestion des services).

    Pour plus d'informations, reportez-vous à la section Utilisation de vos droits d’administration du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

  2. Créez un manifeste temporaire.

    Dans cet exemple, le nom du service est ex_svc. Il s'agit d'un contrat de service qui s'exécute au niveau 3.

    # svcbundle -o /tmp/ex_svc.xml -s service-name=ex_svc
          -s start-method=/lib/svc/method/ex_svc -s model=transient
  3. Apportez toutes les modifications nécessaires au manifeste.

    Vérifiez que le contenu du manifeste dans /tmp/ex_svc.xml correspond à vos besoins.

  4. Copiez le manifeste dans le répertoire approprié.
    # cp /tmp/ex_svc.xml /lib/svc/manifest/site/ex_svc.xml
  5. Arrêtez le service existant.
    # /etc/init.d/ex_svc stop
  6. Désactivez le script de contrôle d'exécution.

    Supprimez tous les liens vers le script de contrôle d'exécution des répertoires rc n.d appropriés.

  7. Importez le manifeste et copiez le service.
    # svcadm restart svc:/system/manifest-import