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

Gestion des services SMF

Cette section contient des informations sur la gestion des services SMF.

Gestion des services SMF (liste des tâches)

La liste des tâches suivante décrit les procédures requises pour gérer les services SMF.

Tâche
Description
Voir
Création d'un service.
Permet la gestion d'un script par le biais du service SMF.
Désactivation d'une instance de service
Arrêter un service en cours d'exécution et empêcher son redémarrage.
Activation d'une instance du service
Démarrer un service. En outre, le service sera redémarré lors des réinitialisations suivantes.
Redémarrage d'un service
Redémarrer un service sans avoir à utiliser des commandes distinctes pour désactiver puis activer le service.
Restauration d'un service à l'état de maintenance
Montrer comment nettoyer et redémarrer un service qui a l'état en maintenance.
Création d'un profil.
Créer un profil pour déployer facilement les personnalisations sans exécuter la commande svccfg pour effectuer toutes les modifications.
Créer manuellement un profil pour déployer facilement les personnalisations.
Application d'un profil.
Utiliser les informations d'un profil pour activer, désactiver ou personnaliser des services en fonction des besoins.

Utilisation des profils de droits RBAC avec SMF

Vous pouvez utiliser les profils de droits RBAC pour permettre aux utilisateurs de gérer certains des services SMF, sans avoir à leur donner un accès root. Les profils de droits définissent les commandes que l'utilisateur peut exécuter. Pour SMF, les profils suivants ont été créés :

Pour obtenir des informations spécifiques sur les autorisations, reportez-vous à la page de manuel smf_security(5). Pour consulter des instructions sur l'affectation d'un profil de droits, reportez-vous à la section Modification des attributs de sécurité d’un utilisateur du manuel Administration d’Oracle Solaris 11.1 : Services de sécurité.

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

Les administrateurs écrivent souvent des scripts pour réaliser des tâches pendant que le système est en cours d'initialisation. Cette procédure décrit comment utiliser les avantages de SMF pour prendre en charge un script.

Avant de commencer

Déterminez le modèle de service requis par le script. 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).

  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. Copiez le script de méthode de démarrage sous /lib/svc/method/ex_svc .
  3. Créez un manifeste temporaire.

    Dans cet exemple, le nom de service est site/ex_svc . Il s'agit d'un service transitoire qui, en tant que tel, ne requiert pas de méthode d'arrêt.

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

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

  5. Copiez le manifeste dans le répertoire approprié.
    # cp /tmp/ex_svc.xml /lib/svc/manifest/site/ex_svc.xml
  6. Importez le manifeste et copiez le service.
    # svcadm restart svc:/system/manifest-import

Exemple 2-12 Installation automatique d'un manifeste généré

Pour installer automatiquement le manifeste dans /lib/svc/manifest/site , utilisez l'option -i avec la commande svcbundle , comme indiqué ci-après. Cette commande peut être exécutée à la place de la commande exécutée à l'étape 3, et vous n'avez pas besoin d'effectuer d'autres étapes.

# svcbundle -i -s service-name=site/ex_svc \
        -s start-method=/lib/svc/method/ex_svc -s model=transient

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

Suivez la procédure ci-après pour désactiver un service. Le changement d'état du service est enregistré dans le référentiel de configuration de service. Une fois que le service est désactivé, l'état désactivé sera conservé en cas de réinitialisation. Le seul moyen d'exécuter le service de nouveau consiste à l'activer.

  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. Vérifiez les dépendants du service que vous voulez désactiver.

    Si ce service a des dépendants dont vous avez besoin, vous ne pouvez pas le désactiver.

    # svcs -D FMRI
  3. Désactivez le service.
    # svcadm disable FMRI

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

Suivez la procédure ci-après pour activer un service. Le changement d'état du service est enregistré dans le référentiel de configuration de service. Une fois que le service est activé, l'état activé est conservé au fil des réinitialisations système ; toutefois, le service démarre uniquement si toutes les dépendances sont satisfaites.

  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. Activez un service.
    # svcadm enable FMRI
  3. Vérifiez que le service est bien activé.
    # svcs -x FMRI
  4. Activez les dépendances de service.

    Si les dépendances obligatoires sont désactivées, activez-les à l'aide de la commande suivante :

    # svcadm enable -r FMRI

Exemple 2-13 Activation d'un service en mode monoutilisateur

La commande suivante active rpcbind. L'option - t démarre le service en mode temporaire, lequel ne change pas le référentiel de service ; cette modification ne sera donc pas conservée après la réinitialisation. L'option -r démarre récursivement toutes les dépendances du service nommé.

# svcadm enable -rt rpc/bind

Procédure de redémarrage d'un service

Si un service est en cours d'exécution mais doit être redémarré en raison d'un changement de configuration ou pour un autre motif, vous pouvez effectuer l'opération sans avoir à saisir des commandes séparées pour l'arrêter puis le démarrer. La seule raison de désactiver un service, puis de l'activer se présente lorsque des modifications doivent être apportées entre la désactivation et l'activation du service.

  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. Redémarrez un service.
    # svcadm restart FMRI

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

  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. Déterminez la raison pour laquelle le service est en maintenance.
    # svcs -x FMRI

    Consultez le fichier journal ou la page de manuel mentionnés pour déterminer la nature de l'erreur.

  3. Déterminez si un processus dépendant du service n'a pas été arrêté.

    En règle générale, lorsqu'une instance de service est à l'état de maintenance, tous les processus associés à cette instance sont arrêtés. Cependant, vous devez vous en assurer avant de poursuivre. La commande suivante répertorie l'ID de contrat pour le FMRI sélectionné.

    # svcs -o CTID FMRI
  4. (Facultatif) Fermez les processus récents.

    Répétez cette étape pour tous les processus qui sont affichés par la commande svcs.

    # pkill -9 -c CTID
  5. Restaurez le service.
    # svcadm clear FMRI

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

Un profil est un fichier XML qui répertorie des services SMF et indique si chacun d'entre eux doit être activé ou désactivé. Les profils sont utilisés pour activer ou désactiver de nombreux services à la fois. Les profils sont également utilisés pour définir les valeurs de propriétés, ajouter des valeurs de propriétés et même créer un service et des instances de service. Il n'est pas nécessaire que tous les services soient répertoriés dans un profil. Chaque profil ne doit inclure les services devant être activés ou désactivés pour rendre le profil utile.

Le service svc:/system/rmtmpfiles est responsable du nettoyage du répertoire /tmp à l'initialisation. Par défaut, le service rmtmpfiles ne nettoie pas /var/tmp. Si vous souhaitez nettoyer /var/tmp au cours du processus d'initialisation, vous pouvez modifier le comportement en définissant la propriété options/clean_vartmp sur true. Si vous voulez effectuer cette action sur plusieurs systèmes, il est recommandé de créer un profil et de le placer dans /etc/svc/profile/site sur ces systèmes.

  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 le profil.

    Cette commande permet de créer un profil dans /tmp/rmtmpfiles.xml, qui peut ensuite être copié dans /etc/svc/profiles/site en fonction de vos besoins.

    # svcbundle -o /tmp/rmtmpfiles.xml -s service-name=system/rmtmpfiles \
            -s bundle-type=profile -s service-property=options:clean_vartmp:boolean:true
  3. Copiez le profil dans le répertoire approprié.
    # cp /tmp/rmtmpfiles.xml /etc/svc/profile/site/rmtmpfiles.xml
  4. Redémarrez le service manifest-import pour appliquer le profil au système.
    # svcadm restart svc:/system/manifest-import

Exemple 2-14 Installation automatique d'un profil SMF lors de sa création

L'option -i permet d'installer le profil généré. La commande écrit le profil dans /etc/svc/profile/site/rmtmpfiles.xml. La commande redémarre le service manifest-import pour appliquer le profil.

# svcbundle -i -s service-name=system/rmtmpfiles \
        -s bundle-type=profile -s service-property=options:clean_vartmp:boolean:true

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

Un profil est un fichier XML qui répertorie des services SMF et indique si chacun d'entre eux doit être activé ou désactivé. Les profils sont utilisés pour activer ou désactiver de nombreux services à la fois. Les profils sont également utilisés pour définir les valeurs de propriétés, ajouter des valeurs de propriétés et même créer un service et des instances de service. Il n'est pas nécessaire que tous les services soient répertoriés dans un profil. Chaque profil ne doit inclure les services devant être activés ou désactivés pour rendre le profil utile.

  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 profil.

    Dans cet exemple, la commande svccfg est utilisée pour créer un profil qui représente les personnalisations locales sur le système actuel. Alternativement, vous pouvez créer une copie d'un profil existant à modifier.

    # svccfg extract> profile.xml

    Si vous avez un grand nombre de systèmes identiques, ou si vous voulez archiver la configuration du système pour une restauration ultérieure, vous pouvez utiliser cette procédure pour créer une version unique d'un profil SMF.

  3. Editez le fichier profil.xml pour apporter les modifications nécessaires.
    1. Modifiez le nom du profil dans la déclaration service_bundle.

      Dans cet exemple, le nom est remplacé par profil.

      # cat profile.xml
        ...
      <service_bundle type=`profile` name=`profile`
          xmIns::xi='http://www.w3.org/2003/XInclude'
        ...
    2. Supprimez tous les services qui ne doivent pas être gérés par ce profil.

      Pour chaque service, supprimez les trois lignes qui décrivent le service. Chaque description de service commence par <service et se termine par </service. Cet exemple montre les lignes correspondantes pour le service client LDAP.

      # cat profile.xml
       ...
       <service name='network/ldap/client' version='1' type='service'>
               <instance  name='default' enabled='true'/>
       </service>
    3. Ajoutez tous les services qui doivent être gérés par ce profil.

      Chaque service doit être défini à l'aide de la syntaxe en trois lignes présentée ci-dessus.

    4. Si nécessaire, modifiez la valeur de l'indicateur activé pour les services sélectionnés.

      Dans cet exemple, le service sendmail est désactivé.

      # cat profile.xml
        ...
        <service  name='network/smtp' version='1' type='service'>
          <instance  name='sendmail' enabled='false'/>
        </service>
        ...
  4. Si nécessaire, appliquez le nouveau profil.

    Reportez-vous à la section Procédure d'application d'un profil SMF pour consulter des instructions.

Procédure d'application d'un profil SMF

  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. Appliquez un profil.

    Dans cet exemple, le profil profile.xml est appliqué.

    # svccfg apply profile.xml