logger: Con esta utilidad podremos crear entradas de registros en syslog. Por defecto serán registradas en /var/log/messages.
logger [opciones] mensaje
Opciones:
- Usar UDP en lugar de TCP (por defecto): -d, –udp
- Agregar el PID en cada línea: -i, –id
- Usar un archivo de registro específico. No puede ser usada desde la línea de comandos: -f, –file <archivo>
- Escribir en el registro de un sistema remoto a través de UDP: -n, –server <servidor>
- Usar un puerto UDP específico, 514 por defecto: -p, –port <puerto>
- Enviar los registros con una prioridad por defecto. Puede especificarse como un selector (recurso.prioridad): -p, –priority <selector>
- Enviar el mensaje a la salida de error estándar además de al log del sistema: -s, –stderr
- Filtrar el mensaje por un determinado socket: -u, –socket <socket>
syslog: Podemos arrancar el servicio syslog con diferentes opciones, aunque el mejor método es especificar todas las opciones en su archivo de configuración y arrancarlo a partir de este, el cual es leído por defecto (/etc/syslog.conf). Aún así destacamos las opciones:
- Arrancar con otro archivo de configuración diferente: -f archivo
- Enviar los mensajes recibidos a un host remoto: -h <host>
- Especificar que el nombre del host remoto va en formato simple y no con fqdn. Podemos separar varios hosts con ‘:‘ : -l <host>
- Configurar un host para que permita recibir mensajes desde la red: -r
- Especificar un intervalo de tiempo entre dos líneas marcadas (por defecto 20 minutos): –m <intervalo>
syslog-ng: Permite reenviar eventos (mensajes) al log del sistema a partir de determinadas fuentes. Es una mejora del tradicional syslog.
syslog-ng [opciones]
Opciones:
- Usar un determinado fichero de configuración: -f, –cfgfile <archivo>
- Iniciar syslog-ng en modo de depuración: -d, –debug
- Habilitar los registros para archivos de volcados (core files): –enable-core
- Inicializar en foreground y no como demonio: -F, –foreground
- Cambiar los autoría del archivo de registro a un determinado usuario o grupo. Deben de tener permisos de escritura en /var/log: -u, –user <usuario> y -g, –group <grupo>
- Enviar los mensajes de errores a la salida de error estándar (stderr): -e, –stderr
- Establecer un archivo syslog-ng.persistent donde se almacenarán las opciones y datos persistentes: -R, –persist-file <archivo>
- Ignorar las opciones y datos del archivo persistente: –ignore-persistent
- Especificar el fichero pid, por defecto (/var/run/syslog-ng.pid): -p, –pidfile <archivo>
rsyslogd: Podemos iniciar el demonio rsyslogd con una serie de opciones adicionales. El archivo de configuración de rsyslogd es /etcrsyslog.conf
rsyslogd [opciones]
Algunas opciones:
- Escuchar solo desde IPv4 (por defecto escucha desde IPv6 también): -4
- Escuchar solo desde IPv6: -6
- Ejecutar en modo debug (opción avanzada para desarrolladores): -d
- Especificar un fichero de configuración alternativo: -f <archivo>
- Cuando existen varias instancias de rsyslog en una misma máquina, podemos seleccionar archivos de pid diferentes: -i <pid file>
- Especificar un nombre de host sin su fqdn: -l <host1:host2:…:hostN>
journalct: Es la herramienta que nos permite consultar los registros de eventos de los sistemas con systemd.
- Mostrar los mensajes del arranque actual:
journalctl -b
journalctl -b 0
- Mostrar los mensajes del arranque anterior o incluso del anterior al anterior (y sucesivos):
journalctl -b -1
journalctl -b -2 ...
- Mostrar los mensajes de error de un arranque anterior:
journalctl -b -p err
- Mostrar los mensajes de un binario concreto:
journalctl /usr/bin/<binario>
- Mostrar los mensajes de un proceso concreto:
journalctl _PID=<proceso>
- Mostrar todos los mensajes para un servicio concreto:
journalctl _SYSTEMD_UNIT=httpd.service
- Mostrar todos los mensajes de unidades que contengan un patrón específico:
journalctl -u <patrón>
- Ver el búfer circular del kernel:
journalctl _TRANSPORT=kernel
- Usar operadores AND (espacio) y OR (+) para filtrar mensajes:
journalctl _SYSTEMD_UNIT=httpd.service + -u http _PID=3412
- Mostrar registros para un dispositivo específico:
journalctl /dev/sdb
- Podremos especificar un intervalo de tiempo con los parámetros -since y -until. El intervalo puede ser especificado de manera explicita para días como ‘yesterday‘, ‘today‘ o ‘tomorrow‘, o indicando la fecha mediante el formato “YYYY-MM-DD hh:mm:ss“
logrotate: Rotar, comprimir y enviar logs por emails
logrotate [opciones] archivo_de_configuración
Opciones:
- Pasar a modo debug: -d
- Forzar la rotación de archivos: -f, –force
- Enviar un archivo de log por correo: -m, –mail <comando> donde comando acepta el asunto del correo y el destinatario. Por defecto el comando utilizado es /usr/bin/mail -s
dmesg: Imprimir o controlar el búfer circular del kernel
dmesg [opciones]
Opciones:
- Limpiar el búfer: -C, –clear
- Leer el búfer y luego eliminarlo: -c, –read-clear
- Eliminar la impresión de mensajes por consola: -D, –console-off
- Habilitar los mensajes por consola: -E, –console-on
- Listar los mensajes para determinados recurso (facility): -f, –facility <recursos>
- Imprimir los mensajes del kernel: -k, –kernel
- Restringir la salida de los mensajes a una determinada prioridad: -l, –level prioridad1,prioridad2,…,prioridadN
- No imprimir los timestamp en los mensajes: -t, –notime
- Imprimir el timestamp con unidades legibles por humanos: -T, –ctime
- Usar un tamaño para desplegar el búfer. SI el tamaño es mayor al del bufer todo el contenido será imprimido: -s, –buffer-size <tamaño>
who: Muestra que usuarios están logueados en el sistema, así como información sobre la consola o entorno, fecha y hora de entrada, PID, id y display. En realidad lo que hace es desplegar el contenido del archivo de formato binario utmp.
who [opciones]
Opciones:
- Ver el último inicio del sistema: -b
- Mostrar la IP en vez del nombre: –ips
- Mostrar el runlevel actual: -r
- Mostrar los usuarios conectados: -u
- Mostrar todo: -a, –all
Mostrar el histórico de logueos en el sistema guardados en el archivo wtmp:
$ sudo who /var/log/wtmp
Nota: Mejor que utilizar who para desplegar el contenido del archivo wtmp será usar el comando last destinado a esta tarea.
w: Parecido a who pero además muestra que está haciendo cada usuario.
last: Despliega directamente el contenido del archivo /var/log/wtmp. Además muestra mas información sobre los logueos de los usuarios como nombre, terminal, display, fecha de inicio e incluso las fechas de los reinicios del sistema.
lastb: Igual que last pero muestra los logueos fallidos en el sistema.
lastlog: Despliega el contenido del archivo /var/log/lastlog. Este archivo contiene el nombre del login, el puerto y la fecha de ultimo inicio de todos los usuarios. Podemos filtrar la salida con sus opciones.
lastlog [opciones]
Opciones:
- Imprimir los registros anteriores a un determinado número de días: -b, –before <días>
- Imprimir los registros desde un determinado día ha la fecha actual: -t, –time <días>
- Imprime los registros para un determinado usuario: -u, –user <login>