JavaScript is required to for searching.
Omitir Vínculos de navegación
Salir de la Vista de impresión
Gestión de servicios y errores en Oracle Solaris 11.1     Oracle Solaris 11.1 Information Library (Español)
search filter icon
search icon

Información del documento

Prefacio

1.  Gestión de servicios (descripción general)

2.  Gestión de servicios (tareas)

Supervisión de servicios de la SMF

Supervisión de servicios (mapa de tareas)

Cómo enumerar el estado de un servicio

Cómo enumerar personalizaciones de un servicio

Cómo visualizar los servicios que dependen de una instancia de servicio

Cómo visualizar de qué servicios depende un servicio

Cómo configurar notificaciones de eventos de transición de la SMF

Gestión de servicios de la SMF

Gestión de servicios SMF (mapa de tareas)

Uso de perfiles de derechos de RBAC con la SMF

Cómo crear un servicio SMF

Cómo desactivar una instancia de servicio

Cómo activar una instancia de servicio

Cómo reiniciar un servicio

Cómo restaurar un servicio que está en estado de mantenimiento

Cómo crear un perfil de la SMF

Cómo crear manualmente un perfil de la SMF

Cómo aplicar un perfil de la SMF

Configuración de servicios de la SMF

Configuración de servicios SMF (mapa de tareas)

Cómo modificar una propiedad de servicio SMF

Cómo modificar varias propiedades para un servicio

Cómo modificar un servicio que está configurado por un archivo

Cómo cambiar una variable de entorno para un servicio

Cómo cambiar una propiedad para un servicio controlado por inetd

Cómo suprimir personalizaciones de un servicio

Cómo modificar un argumento de línea de comandos para un servicio controlado por inetd

Cómo convertir entradas inetd.conf

Uso de secuencias de comandos de control de ejecución

Uso de secuencias de comandos de control de ejecución (mapa de tareas)

Cómo utilizar una secuencia de comandos de control de ejecución para detener o iniciar un servicio heredado

Cómo agregar una secuencia de comandos de control de ejecución

Cómo desactivar una secuencia de comandos de control de ejecución

Cómo convertir un secuencia de comandos de control para un servicio SMF

Resolución de problemas de la utilidad de gestión de servicios

Resolución de problemas de la SMF (mapa de tareas)

Cómo depurar un servicio que no se inicia

Cómo reparar un repositorio dañado

Cómo iniciar sin tener que iniciar servicios

Cómo iniciar en modo detallado

Cómo forzar un indicador sulogin si el servicio system/filesystem/local:default falla durante el inicio

3.  Uso del gestor de fallos

Índice

Resolución de problemas de la utilidad de gestión de servicios

Los siguientes procedimientos muestran cómo solucionar problemas o reparar servicios SMF. Algunos de estos procedimientos también muestran cómo cambiar los parámetros de inicio para cambiar el modo en que se inicia un sistema.

Resolución de problemas de la SMF (mapa de tareas)

En el siguiente mapa de tareas, se incluyen varios procedimientos que se pueden utilizar para solucionar problemas del sistema. Cada fila incluye una tarea, una descripción del motivo por el que desea realizar la tarea y un enlace a la tarea.

Tarea
Descripción
Para obtener instrucciones
Depure un servicio que no se está ejecutando
Recopila información desde el servicio de la SMF acerca de por qué un servicio no se está ejecutando.
Repare un repositorio dañado
Pasos que se deben seguir para sustituir un repositorio de modo que el sistema se inicie por completo.
Inicie sin iniciar los servicios
Inicie un sistema sin servicios para depurar un sistema ejecutándose a fin de depurar un sistema que se bloquea durante el proceso de inicio.
Genere más mensajes de inicio
Pasos para crear más mensajes durante el proceso de inicio para ayudar con la depuración.
Detenga el proceso de inicio si no están disponibles los sistemas de archivos locales
Pasos para que el servicio de inicio de sesión se inicie a fin de poder investigar el problema, si los sistemas de archivos locales no están montados.

Cómo depurar un servicio que no se inicia

En este procedimiento, el servicio de impresión está desactivado.

  1. Conviértase en administrador o asuma un rol que incluya el perfil de derechos Service Management.

    Para obtener más información, consulte Cómo usar los derechos administrativos que tiene asignados de Administración de Oracle Solaris 11.1: servicios de seguridad.

  2. Solicite información sobre el servicio que no se está ejecutando debido a un error.
    # 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://support.oracle.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

    La opción -x proporciona información adicional sobre las instancias de servicio que se ven afectadas.

  3. Active el servicio.
    # svcadm enable application/print/server

Cómo reparar un repositorio dañado

Este procedimiento muestra cómo reemplazar un repositorio dañado con una copia predeterminada del repositorio. Cuando el daemon del repositorio, svc.configd, se inicia, realiza una comprobación de la integridad del repositorio de configuración. Este repositorio se almacena en /etc/svc/repository.db. El repositorio puede dañarse debido a una de las siguientes razones:

Si la comprobación de integridad falla, el daemon svc.configd escribe un mensaje en la consola, similar al siguiente:

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:

    /system/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://support.oracle.com/msg/SMF-8000-MY for more information.

El daemon svc.startd sale e inicia sulogin para permitirle realizar el mantenimiento.

  1. Introduzca la contraseña root en el indicador sulogin.

    El comando sulogin permite al usuario root introducir el modo de mantenimiento del sistema para reparar el sistema.

  2. Ejecute el siguiente comando:
    # /lib/svc/bin/restore_repository

    La ejecución de este comando lo guía por los pasos necesarios para restaurar una copia de seguridad que no está dañada. La SMF realiza automáticamente copias de seguridad del repositorio en momentos clave del sistema. Para obtener más información, consulte Copias de seguridad del repositorio de la SMF.

    Al iniciar, el comando /lib/svc/bin/restore_repository muestra un mensaje similar al siguiente:

    See http://support.oracle.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. 

    Después de que el sistema de archivos root (/) se monta con permisos de escritura, o si el sistema es una zona local, se le pide que seleccione la copia de seguridad del repositorio para restaurar:

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

    Las copias de seguridad se nombran según el tipo y la hora en que la copia de seguridad se ha realizado. Las copias de seguridad que empiezan con boot se completan antes de que se realiza el primer cambio en el repositorio después del inicio del sistema. Las copias de seguridad que empiezan con manifest_import se completan después de que svc:/system/manifest-import:default termina su proceso. La hora de la copia de seguridad se proporciona en formato YYYYMMDD_HHMMSS.

  3. Introduzca la respuesta adecuada.

    Normalmente, se selecciona la opción de copia de seguridad más reciente.

    Please enter either a specific backup repository from the above list to
    restore it, or one of the following choices:
    
            CHOICE            ACTION
            ----------------  ----------------------------------------------
            boot              restore the most recent post-boot backup
            manifest_import   restore the most recent manifest_import backup
            -seed-            restore the initial starting repository  (All
                                customizations will be lost, including those
                                made by the install/upgrade process.)
            -quit-            cancel script and quit
    
    Enter response [boot]:

    Si presiona Intro sin especificar una copia de seguridad para restaurar, se selecciona la respuesta predeterminada, encerrada entre []. Al seleccionar -quit-, se sale de la secuencia de comandos restore_repository y se regresa al indicador de shell.


    Nota - Al seleccionar -seed-, se restaura el repositorio seed. Este repositorio está diseñado para usarse durante la instalación inicial y las actualizaciones. El uso del repositorio seed para fines de recuperación debe ser un último recurso.


    Después de que la copia de seguridad para restaurar se ha seleccionado, se valida y se comprueba su integridad. Si hay problemas, el comando restore_repository imprime mensajes de error y le solicita otra selección. Una vez que se selecciona una copia de seguridad válida, se imprime la siguiente información y se le solicita confirmación final.

    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
    /system/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. Escriba yes para solucionar el fallo.

    El sistema se reinicia después de que el comando restore_repository ejecuta todas las acciones enumeradas.

Cómo iniciar sin tener que iniciar servicios

Si se producen problemas al iniciar servicios, a veces, un sistema se bloquea durante el inicio. Este procedimiento muestra cómo solucionar este problema.

  1. Inicie sin iniciar los servicios.

    Este comando indica al daemon svc.startd que desactive temporalmente todos los servicios e inicie sulogin en la consola.

    ok boot -m milestone=none
  2. Inicie sesión en el sistema como root.
  3. Active todos los servicios.
    # svcadm milestone all
  4. Determine dónde se bloqueó el proceso.

    Cuando el proceso de inicia se bloquea, determine qué servicios no se están ejecutando mediante la ejecución de svcs -a. Busque mensajes de error en los archivos de registro, en /var/svc/log.

  5. Después de solucionar los problemas, verifique que todos los servicios se hayan iniciado.
    1. Verifique que todos servicios necesarios estén en línea.
      # svcs -x
    2. Verifique que las dependencias de servicio console-login se hayan cumplido.

      Este comando verifica que el proceso login en la consola se ejecutará.

      # svcs -l system/console-login:default
  6. Continúe con el proceso de inicio normal.

Cómo iniciar en modo detallado

De manera predeterminada, el nivel de mensajes que se muestran durante el inicio se establece en el modo silencioso, que genera mensajes cuando hay un error al iniciar un sistema. Cuando se soluciona un problema que se produce al iniciar un sistema, es posible que quiera ver más mensajes. Este procedimiento muestra cómo iniciar el sistema de manera que se muestren todos los mensajes de error.

Ejemplo 2-22 Almacenaje de mensajes de inicio en un registro

Si le proporciona al comando boot la opción -m debug, hace que todos los mensajes de inicio de servicio y por servicio se registren en archivos de registro.

Cómo forzar un indicador sulogin si el servicio system/filesystem/local:default falla durante el inicio

Los sistemas de archivos locales que no son necesarios para iniciar el sistema son montados por el servicio svc:/system/filesystem/local:default. Cuando alguno de esos sistemas de archivos no puede ser montado, el servicio introduce un estado de mantenimiento. El inicio del sistema continúa, y cualquier servicio que no depende de filesystem/local se inicia. Los servicios que requieren que filesystem/local esté en línea antes de iniciarse mediante dependencias no se inician.

Para cambiar la configuración del sistema, de forma que un indicador sulogin aparezca inmediatamente después de que el servicio falla, en lugar de permitir que el inicio del sistema continúe, siga el procedimiento que se describe a continuación.

  1. Modifique el servicio 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. Actualice el servicio.
    # svcadm refresh console-login

Errores más frecuentes

Cuando se produce un fallo con el servicio system/filesystem/local:default, el comando svcs -vx se debe utilizar para identificar el fallo. Una vez que se ha reparado el fallo, el siguiente comando borra el estado de error y permite que el inicio del sistema continúe: svcadm clear filesystem/local.