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
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
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é
Les tâches suivantes indiquent comment configurer des services SMF. En particulier, elles indiquent la procédure de modification des propriétés de service et d'autres informations de configuration pour un service ou une instance de service.
La liste des tâches suivante décrit les procédures requises pour configurer les services SMF.
|
Cette procédure indique comment modifier la propriété qui identifie l'utilisateur habilité à démarrer un 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é.
Tout d'abord, indiquez le FMRI pour identifier le service approprié. Ensuite, affectez l'UID qui va démarrer le service.
# svccfg -s FMRI svc:/service: setprop start/user = astring: newlogin
# svcadm refresh FMRI
Cette procédure montre comment modifier plusieurs propriétés de service sans avoir à saisir toutes les informations requises pour la sous-commande setprop. Dans cet exemple, plusieurs propriétés de service DNS sont modifiées.
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é.
La sous-commande editprop recueille le groupe de propriétés et les propriétés du service spécifié dans un fichier temporaire, et le programme nommé par la variable d'environnement VISUAL ou EDITOR est appelé à des fins de modification. Pour plus d'informations, reportez-vous à la page de manuel svccfg(1M).
# svccfg -s network/dns/client editprop ## ## The value used to construct the "nameserver" directive in resolv.conf(4). ## setprop config/nameserver = net_address: (192.168.1.10 192.168.1.11) ## ## The value used to construct the "search" directive in resolv.conf(4). ## # setprop config/search = astring: "example.com sales.example.com"
N'enregistrez pas le fichier à ce stade.
Annulez la mise en commentaire de la ligne d'actualisation au bas du fichier afin d'appliquer ces modifications lorsque vous enregistrez le fichier et quittez l'éditeur.
## Uncomment to apply these changes to all instances of this service. refresh
La procédure suivante montre comment modifier la configuration d'un service qui n'est pas géré par le service inetd.
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é.
De nombreux services disposent d'un ou plusieurs fichiers de configuration qui sont utilisés pour définir le démarrage ou d'autres informations de configuration. Ces fichiers peuvent être modifiés pendant que le service est en cours d'exécution. Le contenu de ces fichiers n'est vérifié que lorsque le service est démarré.
# svcadm restart FMRI
Exemple 2-15 Ajout d'un nouveau serveur NTP
Pour ajouter un nouveau serveur NTP pour prendre en charge vos clients NTP, ajoutez une nouvelle entrée pour le serveur au fichier /etc/inet/ntp.conf. Ensuite, redémarrez le service NTP. Cet exemple montre le contenu possible d'un fichier ntp.conf et indique comment redémarrer le service.
# cat /etc/inet/ntp.conf . . server ntpserver1.example.com server ntpserver2.example.com # svcadm restart svc:/network/ntp:default
Cette procédure montre comment modifier des variables d'environnement cron afin d'obtenir de l'aide pour le débogage.
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 system/cron STATE STIME FMRI online Dec_04 svc:/system/cron:default
Dans cet exemple, les variables d'environnement UMEM_DEBUG et LD_PRELOAD sont définies. Pour plus d'informations sur la sous-commande setenv, reportez-vous à la page de manuel svccfg(1M).
# svccfg -s system/cron:default setenv UMEM_DEBUG default # svccfg -s system/cron:default setenv LD_PRELOAD libumem.so
# svcadm refresh system/cron # svcadm restart system/cron
# pargs -e `pgrep -f /usr/sbin/cron` 100657: /usr/sbin/cron envp[0]: LOGNAME=root envp[1]: LD_PRELOAD=libumem.so envp[2]: PATH=/usr/sbin:/usr/bin envp[3]: SMF_FMRI=svc:/system/cron:default envp[4]: SMF_METHOD=/lib/svc/method/svc-cron envp[5]: SMF_RESTARTER=svc:/system/svc/restarter:default envp[6]: TZ=GB envp[7]: UMEM_DEBUG=default
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 affiche toutes les propriétés pour le service identifié par le FMRI.
# inetadm -l FMRI
Chaque propriété pour un service contrôlé inetd est défini par un nom de propriété et une valeur assignée. L'indication d'un nom de propriété sans valeur spécifiée réinitialise la propriété à la valeur par défaut. Des informations spécifiques sur les propriétés d'un service sont disponibles dans la page de manuel associée au service.
# inetadm -m FMRI property-name=value
Dressez de nouveau la liste des propriétés pour vous assurer que les modifications ont eu lieu.
# inetadm -l FMRI
Vérifiez que le changement de propriété entraîne le changement souhaité.
Exemple 2-16 Modification de la propriété tcp_trace pour telnet
L'exemple suivant illustre comment définir la propriété tcp_trace pour telnet sur true. La vérification de la sortie syslog après l'exécution d'une commande telnet montre que la modification a pris effet.
# inetadm -l svc:/network/telnet:default SCOPE NAME=VALUE name="telnet" . . default inherit_env=TRUE default tcp_trace=FALSE default tcp_wrappers=FALSE # inetadm -m svc:/network/telnet:default tcp_trace=TRUE # inetadm -l svc:/network/telnet:default SCOPE NAME=VALUE name="telnet" . . default inherit_env=TRUE tcp_trace=TRUE default tcp_wrappers=FALSE # telnet localhost Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. login: root Password: . . . Last login: Mon Jun 21 05:55:45 on console Sun Microsystems Inc. SunOS 5.10 s10_57 May 2004 # ^D Connection to localhost closed by foreign host. # tail -1 /var/adm/messages Jun 21 06:04:57 yellow-19 inetd[100308]: [ID 317013 daemon.notice] telnet[100625] from 127.0.0.1 32802
Les personnalisations peuvent être supprimées des propriétés, des groupes de propriétés et des instances de services.
Cette commande supprime toutes les modifications apportées à la couche admin pour le service sélectionné.
% /usr/sbin/svccfg -s FMRI delcust
Exemple 2-17 Suppression des personnalisations d'une propriété
Cet exemple illustre l'effet de la suppression des personnalisations d'un service. Nous appliquons tout d'abord une personnalisation à la propriété clean_vartmp dans le service rmtmpfiles de sorte que /var/tmp est nettoyé au cours du processus d'initialisation. En tant qu'utilisateur doté de privilèges, tapez les commandes suivantes :
# svccfg -s svc:/system/rmtmpfiles setprop options/clean_vartmp = true # svcadm refresh svc:/system/rmtmpfiles
Vérifiez ensuite que la propriété a bien été modifiée :
$ svcprop -p options/clean_vartmp svc:/system/rmtmpfiles true
Pour observer la personnalisation, tapez les commandes suivantes :
$ svccfg -s svc:/system/rmtmpfiles listcust options/clean_vartmp boolean admin true $ svcprop -p options/clean_vartmp -l all svc:/system/rmtmpfiles options/clean_vartmp boolean manifest false options/clean_vartmp boolean admin true
Pour supprimer la personnalisation, tapez la commande suivante en tant qu'utilisateur doté de privilèges :
# svccfg -s svc:/system/rmtmpfiles delcust options/clean_vartmp Deleting customizations for property: options/clean_vartmp
Lorsque vous exécutez les commandes pour observer la personnalisation, voici ce qui s'affiche :
$ svccfg -s svc:/system/rmtmpfiles listcust $ svcprop -p options/clean_vartmp -l all svc:/system/rmtmpfiles options/clean_vartmp boolean manifest false
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 affiche toutes les propriétés pour le service identifié par le FMRI. L'ajout de la commande grep limite la sortie à la propriété exec pour le service.
# inetadm -l FMRI|grep exec
L'ensemble command-syntax avec la propriété exec définit la chaîne de commande qui s'exécute lorsque le service est démarré.
# inetadm -m FMRI exec="command-syntax"
Dressez de nouveau la liste des propriétés pour vous assurer que les modifications ont eu lieu.
# inetadm -l FMRI
La procédure suivante convertit des entrées inetd.conf en fichiers manifestes de service SMF. Cette procédure doit être exécutée chaque fois qu'une application tierce qui dépend de inetd est ajoutée à un système. Exécutez également cette procédure, si vous devez modifier la configuration de l'entrée dans /etc/inetd.conf.
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é.
La commande inetconv convertit chaque entrée dans le fichier sélectionné en fichiers manifestes de service.
# inetconv -i filename
Exemple 2-18 Conversion d'entrées /etc/inet/inetd.conf en fichiers manifestes de service SMF
# inetconv -i /etc/inet/inetd.conf