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) |
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 desactivar una instancia de servicio
Cómo activar una instancia de 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
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 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
Las siguientes tareas muestran cómo configurar servicios SMF. En concreto, se muestra cómo modificar propiedades de servicio y otra información de configuración para un servicio o una instancia de servicio.
En el siguiente mapa de tareas, se describen los procedimientos que son necesarios para configurar servicios SMF.
|
Este procedimiento muestra cómo modificar la propiedad que identifica al usuario que puede iniciar un servicio.
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.
En primer lugar, indique el FMRI para identificar el servicio adecuado. A continuación, asigne el UID que iniciará el servicio.
# svccfg -s FMRI svc:/service: setprop start/user = astring: newlogin
# svcadm refresh FMRI
En este procedimiento, se muestra cómo modificar varias propiedades de servicio sin tener que escribir tanta información como con el subcomando setprop. En este ejemplo, se modifican varias propiedades del servicio DNS.
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.
El subcomando editprop recopila los grupos de propiedades y las propiedades de un servicio especificado en un archivo temporal, y el programa denominado por la variable de entorno VISUAL o EDITOR se invoca para editarlo. Consulte la página del comando man svccfg(1M) para obtener más información.
# 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"
No guarde el archivo en este punto.
Elimine la marca de la línea refrescar en la parte inferior del archivo a fin de aplicar estos cambios cuando guarde el archivo y salga del editor.
## Uncomment to apply these changes to all instances of this service. refresh
El procedimiento siguiente muestra cómo cambiar la configuración de un servicio que no es administrado por el servicio inetd.
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.
Muchos de los servicios tienen uno o más archivos de configuración que se usan para definir el inicio u otra información de configuración. Estos archivos pueden cambiarse mientras se está ejecutando el servicio. El contenido de los archivos sólo se comprueba cuando se inicia el servicio.
# svcadm restart FMRI
Ejemplo 2-15 Agregación de un nuevo servidor NTP
Para agregar un nuevo servidor NTP para que admita sus clientes NTP, agregue una nueva entrada para el servidor en el archivo /etc/inet/ntp.conf. A continuación, reinicie el servicio NTP. En este ejemplo, se muestra cómo puede ser el archivo ntp.conf, así como la forma de reiniciar el servicio.
# cat /etc/inet/ntp.conf . . server ntpserver1.example.com server ntpserver2.example.com # svcadm restart svc:/network/ntp:default
Este procedimiento muestra cómo modificar variables de entorno cron para ayudar con la depuración.
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.
# svcs system/cron STATE STIME FMRI online Dec_04 svc:/system/cron:default
En este ejemplo, se establecen las variables de entorno UMEM_DEBUG y LD_PRELOAD. Para obtener información acerca del subcomando setenv, consulte la página del comando man 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
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.
Este comando muestra todas las propiedades para el servicio identificado por el FMRI.
# inetadm -l FMRI
Cada propiedad para un servicio controlado por inetd se define mediante un nombre de propiedad y un valor asignado. Proporcionar el nombre de la propiedad sin un valor especificado restablece la propiedad al valor predeterminado. En la página del comando man asociada con el servicio, debe encontrar información específica sobre las propiedades de un servicio.
# inetadm -m FMRI property-name=value
Enumere las propiedades de nuevo para asegurarse de que los cambios apropiados se hayan producido.
# inetadm -l FMRI
Confirme al cambio de propiedad que el cambio tiene el efecto deseado.
Ejemplo 2-16 Cambio de propiedad tcp_trace por telnet
El siguiente ejemplo muestra cómo establecer la propiedad tcp_trace para telnet en true. Al comprobar la salida de syslog después de ejecutar un comando telnet, se muestra que el cambio ha surtido efecto.
# 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
Las personalizaciones se pueden eliminar de las propiedades, los grupos de propiedades y las instancias de servicio.
Este comando suprime todos los cambios en la capa admin para el servicio seleccionado.
% /usr/sbin/svccfg -s FMRI delcust
Ejemplo 2-17 Eliminación de las personalizaciones de una propiedad
En este ejemplo, se muestra el efecto de la supresión de las personalizaciones de un servicio. Primero, se aplica una personalización para establecer la propiedad clean_vartmp en el servicio rmtmpfiles para que /var/tmp se depure durante el proceso de inicio. Como usuario con privilegios, escriba los siguientes comandos:
# svccfg -s svc:/system/rmtmpfiles setprop options/clean_vartmp = true # svcadm refresh svc:/system/rmtmpfiles
Luego, compruebe que la propiedad se haya cambiado:
$ svcprop -p options/clean_vartmp svc:/system/rmtmpfiles true
Para observar la personalización, escriba los siguientes comandos:
$ 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
Para eliminar la personalización, escriba el siguiente comando como usuario con privilegios:
# svccfg -s svc:/system/rmtmpfiles delcust options/clean_vartmp Deleting customizations for property: options/clean_vartmp
A partir de ahora, cuando se ejecutan los comandos para observar la personalización, verá:
$ svccfg -s svc:/system/rmtmpfiles listcust $ svcprop -p options/clean_vartmp -l all svc:/system/rmtmpfiles options/clean_vartmp boolean manifest false
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.
Este comando muestra todas las propiedades para el servicio identificado por el FMRI. La agregación del comando grep restringe la salida a la propiedad exec para el servicio.
# inetadm -l FMRI|grep exec
La sintaxis del comando (command-syntax) establecida con la propiedad exec define la cadena de comandos que se ejecuta cuando se inicia el servicio.
# inetadm -m FMRI exec="command-syntax"
Enumere las propiedades de nuevo para asegurarse de que los cambios apropiados se hayan producido.
# inetadm -l FMRI
El siguiente procedimiento convierte entradas inetd.conf en manifiestos de servicio SMF. Este procedimiento se debe ejecutar cada vez que una aplicación de terceros que depende de inetd se agrega a un sistema. También se debe ejecutar si necesita realizar cambios de configuración a la entrada en /etc/inetd.conf.
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.
El comando inetconv convierte cada entrada del archivo seleccionado en manifiestos de servicio.
# inetconv -i filename
Ejemplo 2-18 Conversión de entradas /etc/inet/inetd.conf en manifiestos de servicio SMF
# inetconv -i /etc/inet/inetd.conf