Syslog es el estándar general para registrar mensajes del sistema y del programa en el entorno Linux. Este servicio constituye el demonio de registro del sistema, donde cualquier programa puede realizar su registro (depuración, seguridad, funcionamiento normal) a través además de los mensajes del kernel de Linux.
En principio, los registros manejados por syslog están disponibles en el directorio /var/log/ en el sistema Linux:
# ls /var/log boot.log cloud-init-output.log firewalld maillog rhsm tallylog anaconda btmp cron gdm maillog-20151219 samba tuned audit btmp-20151219 cron-20151219 grubby messages secure wpa_supplicant.log auth.log choose_repo.log dmesg grubby_prune_debug messages-20151219 secure-20151219 wtmp yum.log chrony dmesg.old lastlog pm-powersave.log spooler xrdp.log
donde algunos de los registros se descargan en un subdirectorio como cups, samba, httpd. Entre los registros en /var/log, /var/log/messages es el más común ya que los registros del sistema kernel/core se mantienen allí. Los módulos del kernel generalmente también se vuelcan allí. Por lo tanto, para el diagnóstico/supervisión de problemas, /var/log/messages es el archivo de registro principal que se debe examinar.
Los registros se rotan cada semana (cambiando el nombre del registro existente a nombre de archivo.orden numérico):
# ls -l /var/log/messages* -rw------- 1 root root 1973 Jun 10 15:07 /var/log/messages -rw------- 1 root root 10866 Jun 6 04:02 /var/log/messages.1 -rw------- 1 root root 19931 May 30 04:02 /var/log/messages.2 -rw------- 1 root root 238772 May 23 04:02 /var/log/messages.3 -rw------- 1 root root 171450 May 14 18:29 /var/log/messages.4
el archivo de registro rotado semanalmente se elimina después de 4 semanas (los registros totales abarcan un tiempo de 5 semanas). Este mecanismo de rotación lo proporcionan crond y logrotate.
También hay rsyslogd proporcionado por el paquete rsyslog, que es una versión más confiable y extendida de syslogd. Para obtener más información, instale el paquete rsyslog y consulte la página del manual de rsyslogd.
Control de servicios
Para iniciar el servicio syslog, use cualquiera de los siguientes comandos:
# service syslog start # /etc/init.d/syslog start
Para detener el servicio syslog, use cualquiera de los siguientes comandos:
# service syslog stop # /etc/init.d/syslog stop
Para ver el nivel de ejecución y la disponibilidad del servicio, ejecute:
# chkconfig --list syslog syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Si el servicio está deshabilitado, puede habilitarlo:
# chkconfig --list syslog syslog 0:off 1:off 2:off 3:off 4:off 5:off 6:off # chkconfig syslog on # chkconfig --list syslog syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Configuración
El archivo de configuración para el servicio syslogd es /etc/sysconfig/syslog . El archivo predeterminado es el siguiente:
# Options to syslogd # -m 0 disables 'MARK' messages. # -r enables logging from remote machines # -x disables DNS lookups on messages recieved with -r # See syslogd(8) for more details SYSLOGD_OPTIONS="-m 0" # Options to klogd # -2 prints all kernel oops messages twice; once for klogd to decode, and # once for processing with 'ksymoops' # -x disables all klogd processing of oops messages entirely # See klogd(8) for more details KLOGD_OPTIONS="-x" # SYSLOG_UMASK=077 # set this to a umask value to use for all log files as in umask(1). # By default, all permissions are removed for "group" and "other".
Allí verá dos grupos diferentes de opciones para:
klogd – Kernel Log Daemon :este es el demonio que captura los mensajes del kernel de Linux y los registra en archivos.
syslogd:demonio de registro del sistema :Intercepción y registro de otros mensajes.
El archivo de configuración predeterminado enumera algunas opciones que podemos describir con más detalle:
opciones de syslogd:
- intervalo de -m :Ponga una línea con "MARK" cada minutos de intervalo. "-m 0" deshabilita "MARK" por completo
- -r :se usa para permitir que la instalación reciba mensajes de la red mediante un socket de dominio de Internet con el servicio syslog.
- -x :cuando los registros llegan desde la red (a través de la opción -r), las direcciones de origen se proporcionarán en los registros creados. Las direcciones deben buscarse en DNS. Si se producen registros remotos con demasiada frecuencia (y generalmente ese es el caso cuando hay un problema en el sitio remoto), no es preferible dedicar tiempo a las búsquedas de DNS. Esta opción se puede usar para deshabilitar las búsquedas de DNS.
- -S :registro detallado
- -d :modo de depuración para syslogd
opciones de klogd:
- -2 :imprima las líneas una vez con texto sin procesar y una vez más con direcciones convertidas en símbolos. Esto sería necesario para que ksymoops procese los datos originales.
- -x :No haga la traducción EIP (para OOPS) para no leer el archivo System.map (velocidad de volcado aumentada)
- -d :modo de depuración para klogd
- -cn :nivel de registro predeterminado de los mensajes de la consola
máscara :SYSLOG_UMASK controla los privilegios/permisos de acceso predeterminados para los archivos de registro generados.