 
 
 
 
 
 
 
  
 Siguiente: El sistema de parcheado
 Subir: AIX
 Anterior: El fichero /etc/security/group
     Índice General 
Al igual que sucede en cualquier sistema Unix, en AIX la información y los 
errores generados por eventos en el sistema son gestionados por el demonio syslogd, que en función de su configuración (en el 
archivo /etc/syslogd.conf) envía sus
registros a consola, a un fichero, a un programa, a otro sistema...tal y
como se explica en el capítulo dedicado a la auditoría de sistemas 
Unix. No obstante, además de syslogd, AIX proporciona otro mecanismo 
para la gestión de errores y mensajes del hardware, del sistema 
operativo y de las aplicaciones, ofreciendo una información muy valiosa para
determinar cualquier tipo de problemas en el entorno ([Skl01]); mientras
que por defecto syslogd no realiza ningún tipo de registro en AIX, 
este sistema no necesita ningún tipo de configuración adicional para 
comenzar a realiza su trabajo. Además, viene `de serie', ya que este 
mecanismo adicional forma parte de los paquetes bos.rte y bos.sysmgt.serv_aid, instalados por defecto con el operativo:
bruja:/etc# lslpp -l bos.rte bos.sysmgt.serv_aid
  Fileset                    Level  State      Description         
  --------------------------------------------------------------------------
Path: /usr/lib/objrepos
  bos.rte                 4.3.3.10  COMMITTED  Base Operating System Runtime
  bos.sysmgt.serv_aid     4.3.3.50  COMMITTED  Software Error Logging and
                                               Dump Service Aids
Path: /etc/objrepos
  bos.rte                  4.3.3.0  COMMITTED  Base Operating System Runtime
  bos.sysmgt.serv_aid     4.3.3.50  COMMITTED  Software Error Logging and
                                               Dump Service Aids
bruja:/etc#
Al arrancar una máquina AIX desde /etc/inittab se invoca a /sbin/rc.boot, shellscript donde se inicializa el demonio errdemon, 
encargado de monitorizar contínuamente el archivo /dev/error 
y crear los registros de error en el fichero correspondiente; a diferencia de
syslogd, errdemon no escribe una entrada cada vez que se registra
un evento, sino que lo hace mediante buffers tal y como se le indica en 
su base de datos de notificación de errores, /etc/objrepos/errnotify.
Además, el registro de errores por defecto se mantiene en /var/adm/ras/errlog, mientras que el último log generado se guarda en 
memoria NVRAM de forma que en el arranque del sistema se añade al registro
cuando se inicializa el demonio.
Los registros guardados por errdemon están en modo binario (a
diferencia de los logs habituales en Unix) por defecto, como hemos
comentado, dentro del fichero 
/var/adm/ras/errlog; de esta forma, para visualizarlos
necesitaremos ciertas herramientas que vienen con el sistema; podemos utilizar 
desde línea de comandos la orden errpt o bien - como siempre en AIX 
- invocarla desde SMIT. En cualquier caso, mediante esta herramienta
se genera en tiempo real un informe de errores:
bruja:/# errpt |head -2   
IDENTIFIER TIMESTAMP  T C RESOURCE_NAME  DESCRIPTION
AA8AB241   0506081102 T O OPERATOR       OPERATOR NOTIFICATION
bruja:/#
Como podemos ver, cada línea mostrada por esta orden es uno de los 
registros procesados; la primera columna es un identificador de error único y
la segunda indica la hora en que se generó el mismo en formato mmddhhmmyy (mes, día, hora, minuto y año). La tercera describe el tipo
de error registrado: una `T' indica que es temporal, una `P' que es permanente y
una `U' que es desconocido. La cuarta columna define la clase del error (`S'
para errores software, `H' para hardware y `O' para entradas 
generadas mediante errlogger, como veremos después). Finalmente, la 
quinta columna indica el recurso afectado, y la última una descripción del
error. Si pensamos que el formato es algo complicado de interpretar a simple
vista (quizás tengamos razón), podemos utilizar la opción `-a' de
la orden, que muestra los registros con un mayor nivel de detalle, hasta el
punto de indicar las posibles causas del problema y su solución (aunque 
realmente esta información no es tan útil como pueda parecer en principio):
bruja:/# errpt -a|head -36
-------------------------------------------------------------------------
LABEL:          SRC
IDENTIFIER:     E18E984F
Date/Time:       Mon May  6 07:02:05 
Sequence Number: 30479
Machine Id:      000000375C00
Node Id:         bruja
Class:           S
Type:            PERM
Resource Name:   SRC
Description
SOFTWARE PROGRAM ERROR
Probable Causes
APPLICATION PROGRAM
Failure Causes
SOFTWARE PROGRAM
        Recommended Actions
        PERFORM PROBLEM RECOVERY PROCEDURES
Detail Data
SYMPTOM CODE
           0
SOFTWARE ERROR CODE
       -9017
ERROR CODE
           9
DETECTING MODULE
'srchevn.c'@line:'288'
FAILING MODULE
qdaemon
-------------------------------------------------------------------------
bruja:/#
El archivo errlog es un registro circular, es decir, almacena tantas
entradas como se define al arrancar el demonio errdemon. Al llegar una
nueva entrada, se almacena primero en un buffer intermedio para minimizar
la probabilidad de pérdida del registro, y a continuación se pasa al 
fichero errlog; en este punto, si se va a sobrepasar el tamaño máximo 
del archivo, se elimina la primera entrada registrada. Podemos consultar los
parámetros de configuración actuales mediante errdemon, y quizás 
nos interese también modificar alguno de ellos en el arranque del sistema; 
por ejemplo, [Bha01] recomienda incrementar el tamaño por defecto de 
los buffers y del archivo de log para obtener un mejor registro de 
auditoría:
bruja:/# /usr/lib/errdemon -l
Error Log Attributes
---------------------------------------------
Log File                /var/adm/ras/errlog
Log Size                1048576 bytes
Memory Buffer Size      8192 bytes
bruja:/# /usr/lib/errdemon -s4194304 -B32768
The error log memory buffer size you supplied will be rounded up
to a multiple of 4096 bytes.
bruja:/# /usr/lib/errdemon -l
Error Log Attributes
---------------------------------------------
Log File                /var/adm/ras/errlog
Log Size                4194304 bytes
Memory Buffer Size      32768 bytes
bruja:/#
Otra herramienta interesante para trabajar con el sistema de registro de AIX
es errlogger; la funcionalidad de la misma es similar a la de la orden
logger en otros Unices: añadir entradas al fichero de log desde
línea de comandos, por ejemplo a la hora de registrar eventos desde un
shellscript:
bruja:/# errlogger Mensaje de prueba
bruja:/# errpt |head -2   
IDENTIFIER TIMESTAMP  T C RESOURCE_NAME  DESCRIPTION
AA8AB241   0506081102 T O OPERATOR       OPERATOR NOTIFICATION
bruja:/# errpt -a |head -25
-------------------------------------------------------------------------
LABEL:          OPMSG
IDENTIFIER:     AA8AB241
Date/Time:       Mon May  6 08:11:54 
Sequence Number: 30480
Machine Id:      000000375C00
Node Id:         bruja
Class:           O
Type:            TEMP
Resource Name:   OPERATOR
Description
OPERATOR NOTIFICATION
User Causes
ERRLOGGER COMMAND
        Recommended Actions
        REVIEW DETAILED DATA
Detail Data
MESSAGE FROM ERRLOGGER COMMAND
Mensaje de prueba
-------------------------------------------------------------------------
bruja:/#
AIX ofrece más herramientas para realizar diferente tareas sobre su sistema 
nativo de log: eliminar entradas (errclear), instalar nuevas 
entradas en el archivo de configuración (errinstall), detener el 
demonio errdemon (errstop); para obtener información adicional
podemos consultar el capítulo 10 de [IBM97a]. El sistema de log en AIX es una de las características más potentes que 
el operativo nos ofrece, proporcionando un nivel de detalle y granularidad en
la clasificación de eventos muy superior al de syslogd; no obstante, la
cantidad de información registrada, y el hecho de que no existan herramientas
`de serie' (realmente sí que las hay, en muchos casos simples scripts desarrolladas por terceros) que informen de algún modo especial ante
errores graves, hacen que no se consulte mucho el log y se pierdan 
entradas que son importantes, no sólo en lo referente a la seguridad del
sistema sino también en lo que concierne a su estabilidad.
 
 
 
 
 
 
 
  
 Siguiente: El sistema de parcheado
 Subir: AIX
 Anterior: El fichero /etc/security/group
     Índice General 
2003-08-08