JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Administration d'Oracle Solaris : Administration de base     Oracle Solaris 10 1/13 Information Library (Français)
search filter icon
search icon

Informations document

A propos de ce manuel

1.  Outils de gestion d'Oracle Solaris (présentation)

2.  Utilisation de Solaris Management Console (tâches)

3.  Utilisation d'Oracle Java Web Console (tâches)

4.  Gestion des comptes utilisateur et des groupes (présentation)

5.  Gestion des comptes utilisateur et des groupes (tâches)

6.  Gestion de la prise en charge client-serveur (présentation)

7.  Gestion des clients sans disque (tâches)

8.  Présentation de l'arrêt et de l'initialisation d'un système

9.  Arrêt et initialisation d'un système (présentation)

10.  Arrêt d'un système (tâches)

11.  Modification du comportement d'initialisation d'Oracle Solaris (tâches)

12.  Initialisation d'un système Oracle Solaris (tâches)

13.  Gestion des archives d'initialisation d'Oracle Solaris (tâches)

14.  Dépannage de l'initialisation d'un système Oracle Solaris (tâches)

15.  x86 : Initialisation avec le GRUB (référence)

16.  x86 : Initialisation d'un système qui ne met pas en oeuvre GRUB (tâches)

17.  Utilisation d'Oracle Configuration Manager

18.  Gestion des services (présentation)

19.  Gestion des services (tâches)

Gestion des services (liste des tâches)

Surveillance des services SMF

Affichage du statut d'un service

Affichage des services dépendants d'une instance de service

Affichage des services dont dépend un service

Gestion des services SMF (liste des tâches)

Gestion des services SMF

Utilisation des profils de droits RBAC avec SMF

Désactivation d'une instance de service

Activation d'une instance de service

Redémarrage d'un service

Restauration d'un service en état de maintenance

Rétablissement d'un autre instantané SMF

Création d'un profil SMF

Application d'un profil SMF

Modification des services offerts au réseau avec générique*.xml

Configuration des services SMF

Modification d'un service

Modification d'une variable d'environnement pour un service

Modification d'une propriété pour un service contrôlé inetd

Modification d'un argument de ligne de commande pour un service contrôlé inetd

Conversion d'entrées inetd.conf

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

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

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

Ajout d'un script de contrôle d'exécution

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

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

Débogage d'un service qui ne démarre pas

Réparation d'un référentiel endommagé

Initialisation sans démarrer de services

Forçage d'une invite sulogin en cas d'échec du service system/filesystem/local:default lors de l'initialisation

20.  Gestion des logiciels (présentation)

21.  Gestion des logiciels à l'aide des d'outils d'administration système d'Oracle Solaris (tâches)

22.  Gestion des logiciels à l'aide des commandes de package Oracle Solaris (tâches)

23.  Gestion des patchs

A.  Services SMF

Index

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

Débogage d'un service qui ne démarre pas

Dans cette procédure, le service d'impression est désactivé.

  1. Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du manuel System Administration Guide: Security Services.

  2. Demande d'informations concernant le service bloqué.
    # svcs -xv
    svc:/application/print/server:default (LP Print Service)
     State: disabled since Wed 13 Oct 2004 02:20:37 PM PDT
    Reason: Disabled by an administrator.
       See: http://sun.com/msg/SMF-8000-05
       See: man -M /usr/share/man -s 1M lpsched
    Impact: 2 services are not running:
            svc:/application/print/rfc1179:default
            svc:/application/print/ipp-listener:default

    L'option -x fournit des informations supplémentaires sur les instances de service affectées.

  3. Activez le service.
    # svcadm enable application/print/server

Réparation d'un référentiel endommagé

Cette procédure montre comment remplacer un référentiel endommagé par une copie par défaut du référentiel. Lorsque le démon de référentiel, svc.configd, est démarré, il procède à une vérification de l'intégrité du référentiel de configuration. Ce référentiel est stocké dans /etc/svc/repository.db. Le référentiel peut être endommagé pour l'une des raisons suivantes :

En cas d'échec de la vérification d'intégrité, le démon svc.configd écrit un message à la console similaire à l'exemple suivant :

svc.configd: smf(5) database integrity check of:

    /etc/svc/repository.db

  failed.  The database might be damaged or a media error might have
  prevented it from being verified.  Additional information useful to
  your service provider is in:

    /etc/svc/volatile/db_errors

  The system will not be able to boot until you have restored a working
  database.  svc.startd(1M) will provide a sulogin(1M) prompt for recovery
  purposes.  The command:

    /lib/svc/bin/restore_repository

  can be run to restore a backup version of your repository. See
  http://sun.com/msg/SMF-8000-MY for more information.

Le démon svc.startd s'arrête, puis démarre sulogin pour vous permettre de réaliser des opérations de maintenance.

  1. Entrez le mot de passe root à l'invite sulogin. sulogin permet à l'utilisateur root d'entrer en mode de maintenance pour réparer le système.
  2. Exécutez la commande ci-dessous :
    # /lib/svc/bin/restore_repository

    L'exécution de cette commande vous guide à travers les étapes nécessaires pour restaurer une sauvegarde non endommagée. SMF effectue automatiquement les sauvegardes du référentiel à des moments clés du système. Pour plus d'informations, reportez-vous à la section Sauvegardes du référentiel SMF.

    Lorsqu'elle est démarrée, la commande /lib/svc/bin/restore_repository affiche un message similaire au suivant :

    Repository Restore utility
    See http://sun.com/msg/SMF-8000-MY for more information on the use of
    this script to restore backup copies of the smf(5) repository.
    
    If there are any problems which need human intervention, this script
    will give instructions and then exit back to your shell.
    
    Note that upon full completion of this script, the system will be
    rebooted using reboot(1M), which will interrupt any active services.

    Si le système en cours de récupération n'est pas une zone locale, le script explique comment remonter les systèmes de fichiers / et /usr avec des autorisations en lecture et en écriture pour récupérer les bases de données. Le script se termine après l'impression de ces instructions. Suivez les instructions, en accordant une attention particulière à toutes les erreurs susceptibles de se produire.

    Une fois le système de fichiers root ( /) monté avec des autorisations d'écriture, ou si le système est une zone locale, vous êtes invité à sélectionner la sauvegarde de référentiel à restaurer :

    The following backups of /etc/svc/repository.db exists, from
    oldest to newest:
    
    ... list of backups ...

    Le nom attribué à une sauvegarde dépend du type et de l'heure de son exécution. Les sauvegardes commençant par boot sont effectuées avant que la première modification ne soit apportée au référentiel après l'initialisation du système. Les sauvegardes commençant par manifest_import sont effectuées après que svc:/system/manifest-import:default termine son processus. L'heure de la sauvegarde est indiquée au format YYYYMMDD_HHMMSS.

  3. Entrez la réponse appropriée.

    En règle générale, la sauvegarde la plus récente est sélectionnée.

    Please enter one of:
            1) boot, for the most recent post-boot backup
            2) manifest_import, for the most recent manifest_import backup.
            3) a specific backup repository from the above list
            4) -seed-, the initial starting repository. (All customizations
               will be lost.)
            5) -quit-, to cancel.
    
    Enter response [boot]:

    Si vous appuyez sur la touche Entrée sans spécifier de sauvegarde à restaurer, la réponse par défaut, entourée de [], est sélectionnée. Sélectionnez -quit- pour quitter le script restore_repository et revenir à l'invite du shell.


    Remarque - Sélectionnez -seed- pour restaurer le référentiel seed. Ce référentiel est conçu pour être utilisé lors de l'installation initiale et des mises à niveau. L'utilisation du référentiel seed à des fins de récupération doit être un dernier recours.


    Une fois que la sauvegarde à restaurer a été sélectionnée, elle est validée et son intégrité est vérifiée. En cas de problèmes, la commande restore_repository imprime des messages d'erreur et vous invite à effectuer une autre sélection. Lorsqu'une sauvegarde valide est sélectionnée, les informations suivantes sont imprimées et vous êtes invité à confirmer l'opération.

    After confirmation, the following steps will be taken:
    
    svc.startd(1M) and svc.configd(1M) will be quiesced, if running.
    /etc/svc/repository.db
        -- renamed --> /etc/svc/repository.db_old_YYYYMMDD_HHMMSS
    /etc/svc/volatile/db_errors
        -- copied --> /etc/svc/repository.db_old_YYYYMMDD_HHMMSS_errors
    repository_to_restore
        -- copied --> /etc/svc/repository.db
    and the system will be rebooted with reboot(1M).
    
    Proceed [yes/no]?
  4. Entrez yes pour résoudre la panne.

    Le système se réinitialise après que la commande restore_repository a exécuté toutes les actions de la liste.

Initialisation sans démarrer de services

Si des problèmes de démarrage de services se produisent, il arrive parfois qu'un système se bloque lors de l'initialisation. Cette procédure montre comment résoudre ce problème.

  1. Initialisez le système sans démarrer de services.

    Cette commande indique au démon svc.startd de désactiver temporairement tous les services et démarrer sulogin sur la console.

    ok boot -m milestone=none
  2. Connectez-vous au système en tant qu'utilisateur root.
  3. Activez tous les services.
    # svcadm milestone all
  4. Déterminez l'endroit où le processus d'initialisation est bloqué.

    Lorsque le processus d'initialisation se bloque, déterminez les services qui ne sont pas en cours d'exécution en exécutant svcs -a. Recherchez des messages d'erreur dans les fichiers journaux dans /var/svc/log.

  5. Après avoir corrigé les problèmes, vérifiez que tous les services ont démarré.
    1. Vérifiez que tous les services requis sont en ligne.
      # svcs -x
    2. Vérifiez que les dépendances de service console-login sont satisfaites.

      Cette commande vérifie que le processus login sur la console va s'exécuter.

      # svcs -l system/console-login:default
  6. Poursuivez le processus d'initialisation normal.

Forçage d'une invite sulogin en cas d'échec du service system/filesystem/local:default lors de l'initialisation

Les systèmes de fichiers locaux qui ne sont pas requis pour initialiser le SE Solaris sont montés par le service svc:/system/filesystem/local:default. Lorsque l'un de ces systèmes de fichiers ne peut pas être monté, le service passe en état de maintenance. Le démarrage du système se poursuit, et les services qui ne dépendent pas de filesystem/local sont démarrés. Les services qui nécessitent filesystem/local pour être en ligne avant de démarrer dans des dépendances ne sont pas démarrés.

Pour modifier la configuration du système de sorte qu'une invite sulogin s'affiche immédiatement après l'échec du service au lieu de permettre la poursuite du démarrage du système, suivez la procédure ci-dessous.

  1. Modifiez le service system/console-login.
    # svccfg -s svc:/system/console-login
    svc:/system/console-login> addpg site,filesystem-local dependency
    svc:/system/console-login> setprop site,filesystem-local/entities = fmri: svc:/system/filesystem/local
    
    svc:/system/console-login> setprop site,filesystem-local/grouping = astring: require_all
    
    svc:/system/console-login> setprop site,filesystem-local/restart_on = astring: none
    
    svc:/system/console-login> setprop site,filesystem-local/type = astring: service
    
    svc:/system/console-login> end
  2. Actualisez le service.
    # svcadm refresh console-login

Exemple 19-18 Forcer une invite sulogin à l'aide de JumpStart d'Oracle Solaris

Enregistrez les commandes suivantes dans un script et enregistrez-le sous /etc/rcS.d/S01site-customfs .

#!/bin/sh
#
# This script adds a dependency from console-login -> filesystem/local
# This forces the system to stop the boot process and drop to an sulogin prompt
# if any file system in filesystem/local fails to mount.

PATH=/usr/sbin:/usr/bin
export PATH

    svccfg -s svc:/system/console-login << EOF
addpg site,filesystem-local dependency
setprop site,filesystem-local/entities = fmri: svc:/system/filesystem/local
setprop site,filesystem-local/grouping = astring: require_all
setprop site,filesystem-local/restart_on = astring: none
setprop site,filesystem-local/type = astring: service
EOF

svcadm refresh svc:/system/console-login

[ -f /etc/rcS.d/S01site-customfs ] &&
    rm -f /etc/rcS.d/S01site-customfs

Erreurs fréquentes

En cas d'échec avec le service system/filesystem/local:default, la commande svcs -vx doit être utilisée pour identifier l'échec. Une fois l'échec corrigé, la commande suivante efface l'état d'erreur et autorise la poursuite de l'initialisation du système  : svcadm clear filesystem/local.