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) |
1. Gestion des services (présentation)
2. Gestion des services (tâches)
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 (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
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'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é
Cette section contient des informations sur la gestion des services SMF.
La liste des tâches suivante décrit les procédures requises pour gérer les services 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 :
Service Management : l'utilisateur peut ajouter, supprimer ou modifier des services.
Service Operator : l'utilisateur peut demander des changements d'état de toute instance de service, tels que le redémarrage et l'actualisation.
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é.
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).
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é.
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
Vérifiez que le contenu du manifeste dans /tmp/ex_svc.xml correspond à vos besoins.
# cp /tmp/ex_svc.xml /lib/svc/manifest/site/ex_svc.xml
# 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
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.
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é.
Si ce service a des dépendants dont vous avez besoin, vous ne pouvez pas le désactiver.
# svcs -D FMRI
# svcadm disable FMRI
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.
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é.
# svcadm enable FMRI
# svcs -x FMRI
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
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.
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é.
# svcadm restart FMRI
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é.
# svcs -x FMRI
Consultez le fichier journal ou la page de manuel mentionnés pour déterminer la nature de l'erreur.
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
Répétez cette étape pour tous les processus qui sont affichés par la commande svcs.
# pkill -9 -c CTID
# svcadm clear FMRI
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.
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é.
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
# cp /tmp/rmtmpfiles.xml /etc/svc/profile/site/rmtmpfiles.xml
# 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
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.
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é.
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.
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' ...
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>
Chaque service doit être défini à l'aide de la syntaxe en trois lignes présentée ci-dessus.
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> ...
Reportez-vous à la section Procédure d'application d'un profil SMF pour consulter des instructions.
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é.
Dans cet exemple, le profil profile.xml est appliqué.
# svccfg apply profile.xml