SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
Logs en Linux
Sistemas Operativos II
UMG Jutiapa
Cómo ver los archivos de registro de
Linux en tiempo real
• Todas las distribuciones de Linux utilizan archivos
de registro para registrar los eventos del sistema,
incluyendo conectar dispositivos, sesiones nuevas
y otros mensajes.
• La mayoría de las distribuciones guardan estos
archivos en el directorio /var/log.
– Los comandos less y tail son útiles para leer estos
archivos en tiempo real.
– Algunos de los archivos están protegidos, hace falta
iniciar una sesión como usuario root o usar sudo para
leerlos.
El comando tail
• Use el comando tail -f para ver las últimas líneas de un
archivo y las actualizaciones del mismo. Por ejemplo, el
comando:
– tail -f /var/log/auth.log
Esto nos muestra eventos de autenticación como
sesiones nuevas y el uso de sudo en el sistema. Si un
usuario inicia una nueva sesión, verá la actualización del
archivo con la nueva información usando este comando.
Finalice el comando tail pulsando las teclas Ctrl y C
simultáneamente
El comando less
• El comando less +F es casi igual a usar tail -f, pero
proporciona acceso al archivo entero en vez de
las últimas líneas y también muestra cualquier
actualización en tiempo real.
• Por ejemplo, este comando:
– less +F /var/log/kern.log
– El kern.log muestra mensajes del kernel. Finalice el
comando pulsando las
teclas Ctrl y c simultáneamente, seguido por la tecla q.
Archivos de registro comunes
• Los archivos de registro varían por distribución. No obstante,
la mayoría de las distribuciones tienen al mínimo los
siguientes archivos:
– auth.log: Información sobre eventos de autenticación de
usuarios.
– boot.log: Muestra eventos y servicios empezados cuando
se inicia el sistema.
– crond.log: Tareas de cron
– daemon.log: Alertas de servicios como ntfs-3g o dhcpd.
– dmesg.log: Mensajes del kernel
– mysqld.log: Archivo de MySQL.
– syslog.log: Registro del sistema de registro.
ssh
• Antes de empezar a buscar logs es necesario
conectarse a un servidor, para hacerlo vía ssh
debemos ejecutar lo siguiente:
• 1 ssh user@host
• Permite conectarte a un host especificando un
usuario, una vez que lo ejecutes te pedirá un
password
• 1 ssh -i sshKey user@host
• Permite conectarte a un host utilizando una llave
ssh, este comando solo requiere el usuario pero
no es necesario escribir un password
scp
• Si quieres subir algún archivo o descargar algún
log, una forma simple de hacerlo es haciendo uso
del comando scp, veamos algunos ejemplos:
– 1 scp user@host:absolutePath destinationPath
• Descarga lo que se encuentra en el servidor a la
ruta local especificada
– 1 scp originPath user@host:destinationPath
• Sube al servidor lo que se tiene en el originPath al
destinationPath del servidor
wc
• No, no es lo que están pensando, imprime todas las líneas que tiene un archivo y
el número de bytes, veamos un ejemplo:
• 1 wc records.log
Journalctl
• La forma básica de acceder a los registros del sistema es:
• Que viene a equivaler al viejo “cat /var/log/messages” y nos permite acceder a
todos los logs sin filtrar (en cualquier momento podemos salir de esa pantalla
utilizando la tecla “q”)
• Como pasa con el resto de comandos podemos redirigir la salida hacia un
documento de texto
• journalctl > mensajes.log
• Si queremos seguir los mensajes en tiempo real añadimos el parámetro -f
• journalctl -f
Filtrar la salida de logs por boots
• Al ejecutar alguno de los comandos anteriores
nos podemos dar cuenta que tenemos una lista
inmensa de registros , así que vamos a filtrarlos
por los diferentes procesos de arranque, que
haya tenido nuestro ordenador.
• Para ver la lista de todos los boots:
• 1 journalctl --list-boots
Para ver los logs del boot actual:
• 1 journalctl -b
• Si necesitamos ver alguno de los anteriores tenemos dos opciones:
• Utilizamos simplemente una cuenta regresiva. Por ej para ver al
anterior:
• 1 journalctl -b -1
• y así sucesivamente:
• journalctl -b -2
• journalctl -b -3
• O elegimos usar la ID del boot, que nos aparecio al listar los
procesos de arranque con “journal –list-boots”. Sería algo así:
– journalctl _BOOT_ID=dfe74d5a9d384a88821ff8d24d64f81f
Ver los mensajes del kernel
• Le añadimos el parámetro -k:
• journalctl -k
• Como suele pasar en la línea de comandos
podemos combinar varios parámetros para
afinar la búsqueda.
• Aquí vemos los mensajes referidos al kernel
durante el boot actual:
• journalctl -k-b
Filtrar por número de entradas en el
registro de logs
• La opción predeterminada es ejecutar la cual
nos proporciona los últimos 10 mensajes
• journalctl –n
• Pero lo podemos cambiar, simplemente
poniendo un número:
• journalctl -n 50
Filtrar los logs por ejecutables o
programas
• En este caso también tenemos varias formas de hacerlo, bien
directamente con el ejecutable:
• journalctl _COMM=NetworkManager
• o especificando la ruta
• journalctl /usr/sbin/NetworkManager
• y como siempre tenemos la opción de filtrar con grep:
• journalctl | grep NetworkManager
Mostrar la salida por PID
• Filtramos mediante el número identificador
del proceso (algo que podemos consultar con
top o htop), en esta ocasión como ves en el
ejemplo 2527 corresponde a Firefox:
• journalctl _PID=2527
Especificar la salida por usuarios
• La id de los usuarios la podéis encontrar
ejecutando (obviamente sustituís la parte del
nombre del usuario)
• id nombre_del_usuario
• y después seleccionas la que corresponda
(1000, 1001, 1002…)
– Ejemplo
journalctl _UID=1001
Filtrar la salida por servicios de
systemd
• Podemos ver los servicios que dependen de systemd, ejecutando:
systemctl list-units -t service –all
• y si nos interesa uno en particular, estudiamos sus mensajes
añadiendo el parámetro -u y el nombre del servicio, como en este
ejemplo
journalctl -u dbus.service
Podemos hacer una búsqueda de varios servicios añadiendo el
caracter “+” (equivale a un “or”) y ejecutando:
journalctl _SYSTEMD_UNIT=apparmor.service + _SYSTEMD_UNIT=dbus.s
Filtrar por fechas
• Se utilizan los parámetros “–since” y “–until”, así
como expresiones tipo “yesterday” “ago” o “today”.
• El formato de tiempo es habitualmente YYYY-MM-DD
HH:MM:SS
– Algunos ejemplos:
• Ver los logs desde el día de ayer hasta hoy a las 02:00
horas.
– journalctl --since 'yesterday' --until '02:00'
• un intervalo de fechas específico:
– journalctl --since='2015-02-29 00:01' --until='2015-03-29 00:01'
Todos los logs especificando la fecha en el formato que os
comentaba anteriormente, y filtrando por el programa firefox
– journalctl _COMM=firefox --since='2015-02-29 00:01' --until='2015-
03-29 00:01‘
Lo mismo que el caso anterior pero en este caso filtrando por el
servicio de sshd.service
– journalctl -u sshd.service --since='2015-02-29 00:01' --until='2015-03-
29 00:01'
O simplemente ver lo que ha pasado en la última media hora:
– journalctl --since '30 min ago'
Filtrar por la prioridad del mensaje
• Los mensajes se clasifican en función de su prioridad en 7
niveles diferentes:
• Para filtrarlos utilizamos el parámetro -p seguido
del número correspondiente. En este ejemplo
vemos los críticos:
• journalctl -p 2
• “emerg” (0),
• ”alert” (1),
• “crit” (2),
• “err” (3),
• “warning” (4),
• “notice” (5),
• ”info” (6), y
• “debug” (7)
Mensajes de los discos duros
• Puede ser interesante para descubrir problemas
de funcionamiento en nuestras unidades de
discos duros.
– journalctl /dev/sda
• Ver el espacio que están ocupando los diferentes
logs Ejecutamos el comando:
– journalctl --disk-usage
• En el caso de que ese valor fuera excesivo lo
podemos limitar en el archivo
– /etc/systemd/journald.conf,
Herramientas de respaldo y
compresión de datos.
• Uno de los inconvenientes del Administrador
Sistemas, es el mantenimiento de presupuestos
para conseguir un gasto adecuado de equipos. El
respaldo de información puede llegar a
convertirse en una misión crítica. Pero el gasto en
material de almacenamiento (discos duros
internos y externos, cintas, discos ópticos,
etcétera) ha de controlarse, así que la
información ha de comprimirse suponiendo un
importante ahorro de dinero.
• 7zip: Esta alternativa en código abierto, contiene
complementos privativos como unRAR (licencia
aparte). Grandes empresas como IBM no dudan
en utilizarlo y en promocionar su uso tanto en
GNU/Linux como en Windows. La página web de
la organización está almacenada en el gigante
Digital Ocean en este enlace http://www.7-
zip.org/ de donde podrán descargar la versión
para Windows y en GNU Linux con solo ejecutar
«apt-get install p7zip-full» lo obtendremos
Programas de monitoreo locales
• .
Cada sistema operativo generalmente trae sus
propias utilerías desarrollado por ellos mismos
o comprados a otras empresas y
empaquetados juntos.
• Powershell: Su punto fuerte son los “cmdlets” que son
comandos especializados que implementan funciones
específicas y emula el uso de “tuberías” de comandos de
Unix. Fue desarrollado originalmente con Visual Studio.NET
para ambientes Windows, no obstante desde agosto de
2016 está disponible para Linux y puede ser instalado
como bien lo describen en este enlace. Aunque ahora tiene
licencia MIT los componentes individuales siguen siendo
privativos y van a medio camino hacia el software libre.
• GNU Linux: acá manda la consola, hoy vamos a ver una
muy rápida descripción de algunos de ellos. (Algunos
podrán necesitar ser instalados vía apt-get, dependiendo
de nuestra distribución):
• curl”: permite verificar rápidamente si un servicio
web está corriendo con las opciones “-I -s” con lo
cual recibe los encabezados indicando la buena
salud del proceso. No lo subestimemos, curl
combinado con PHP motoriza el 25% de las
páginas web a nivel mundialesto es así porque
soporta los siguientes protocolos HTTP, HTTPS,
FTP, FTPS, GOPHER, TFTP, SCP, SFTP, SMB, TELNET,
DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3, RTSP
y RTMP.
python”: un lenguaje de programación soportado en Windows y
Linux que nos ayudará a recolectar y analizar abundante
información con pocas líneas de código. En GNU Linux viene de
manera sólida y tan extraordinario es, que desinstalarlo pone en
aprietos a numerosas aplicaciones que dependen de él. Es otro
elemento que debemos tener en cuenta.
´´top”: cada 5 segundos nos muestra
los procesos que se están ejecutando
y que consumen los mayores
recursos.
“vmstat”: Actividad del sistema e
información del mismo y del
hardware también.
“w”: así de simple, una sola letra
acompañada del nombre del usuario
devuelve información sobre cuándo
se conectó, en qué terminal trabaja y
los procesos en ejecución.
“uptime”: tiempo encendido del equipo.
“ps -a”: lista todos los proceso en ejecución
junto con su identificador.
“free”: memoria libre , tanto física como de
intercambio.
“iostat”: carga promedio del CPU y la actividad
del disco.
“grep”: filtra por palabras claves, de un archivo o
por “tubería” recibida de otro comando, para
que extraigamos cifras muy específicas
Comando chkconfig
• Lo anterior puede resultar engorroso para más de alguno pero es la
única manera si no se tienen herramientas gráficas o de línea de
comandos para configurar los servicios mas agilmente, y
precisamente una de estas herramientas de línea de comandos
es chkconfig que permite configurar que servicios
arrancan/detienen en cada nivel de ejecucción.
Aclaración: chkconfig no inicia ni detiene servicios al momento
(excepto aquellos bajo xinetd), tan solo crea o elimina precisamente
los enlaces de los que se habló en el punto anterior de una manera
mas amigable. Si lo que se quiere es iniciar o detener el servicio en
tiempo real o manualmente hay que usar service o directamente el
script con su argumento conveniente tal como se explicó
anteriormente.
Veamos ejemplos que muestran como trabajar con chkconfig.
• Con la opción --list nos da una lista completa de
todos los servicios instalados y para cada nivel si
arrancará (on) al entrar a ese nivel o se detendrá (off)
o simplemente no se iniciara. Nótese que al final de
la lista vienen los servicios que dependen del
superservidor xinetd.
comandos imprescindibles para un
Sysadmin
• /PROC: Como podréis comprobar no es un comando, sí,
está en la lista de los 20 que he comentado pero veo muy
interesante comentar que aquí se encuentran archivos muy
interesantes para el sistema como 'meminfo' o 'cpuinfo' por
mencionar un par de ellos, que nos mostrarán información
muy relevante sobre los componentes de nuestro equipo.
Un simple 'cat' a estos archivos y podremos ver toda la
información que contienen sin salir del prompt de la
consola.
• /CACTI: Realizará gráficas de rendimiento en los diferentes
dispositivos que envíen información vía SNMP.
• GNOME SYSTEM MONITOR: Monitoriza el
rendimiento de nuestro sistema, y nos lo muestra
en una interfaz muy amigable.
• IOSTAT: Informa de los datos en entrada/salida de
nuestra CPU y discos.
• IPTRAF: Monitoriza todo el tráfico que entra y
sale de nuestro equipo (interfaces, puertos,
etc...). Es algo más que un comando, en realidad
se trata de una aplicación muy lograda.
• JFFNMS: Genera gráficas para monitorizar
equipos a gran escala.
• MPSTAT: Muy útil para procesadores Multi-Core, ya que
permite ver el rendimiento de cada núcleo del procesador
de forma independiente. 7
• NAGIOS: Sistema de monitorización muy versátil, puesto
que por la cantidad de comandos que acompañan a la
aplicación, y la infinidad de plugins existentes para la
misma, se puede llevar el seguimiento de grandes
cantidades de equipos, servidores y redes. Además
mediante un SMS gateway podremos configurar el sistema
para que nos alerte al móvil de cualquier incidencia.
• NETSTAT: Muestra las conexiones abiertas en nuestro
equipo.
• PMAP: Informa sobre el rendimiento de la
memoria del sistema, tanto en general como la
memoria que consume un proceso concreto.
• AR: Realiza reportes de la actividad del sistema.
• SS: Muestra diferentes estadísticas de los sockets
de nuestro equipo. Su función es similar a
Netstat.
• STRACE: Realiza debugs de servidores web,
Apache, Httpd, lighthttp, entre otros.
• TCPDUMP: Muestra todo el tráfico que circula
por un puerto concreto en tiempo real.
• UPTIME: Muestra información similar a la del comando
TOP, además de otros datos interesantes como el
tiempo que lleva encendido el equipo, la carga de
procesos, el número de usuarios, etc...
• VMSTAT: Informa del estado del equipo o sistema,
tanto el hardware como los procesos que se están
ejecutando, y todo en tiempo 'casi' real.
• W: Muestra qué usuarios están conectados al equipo y
además, podremos saber qué están haciendo en ese
momento.
Tarea
• Cree un archivo de texto y muestre las ultimas
actualizaciones que ha tenido (ese archivo)
• Muestre información sobre eventos de
autenticación de usuarios.
• Haga una búsqueda de varios registros
utilizando el comando similar al or

Más contenido relacionado

Similar a Logs en Linux.pdf (20)

Mis comandos favoritos en linux parte 3
Mis comandos favoritos en linux parte 3Mis comandos favoritos en linux parte 3
Mis comandos favoritos en linux parte 3
 
Descripcion Net-SNMP
Descripcion Net-SNMP Descripcion Net-SNMP
Descripcion Net-SNMP
 
Mis comandos favoritos en linux parte 3
Mis comandos favoritos en linux parte 3Mis comandos favoritos en linux parte 3
Mis comandos favoritos en linux parte 3
 
Presentación de logs
Presentación de logsPresentación de logs
Presentación de logs
 
Transcripcion (jackeline chillogalli
Transcripcion (jackeline chillogalliTranscripcion (jackeline chillogalli
Transcripcion (jackeline chillogalli
 
PROCESOS EN LINUX. ::: http://leymebamba.com
PROCESOS EN LINUX.   ::: http://leymebamba.comPROCESOS EN LINUX.   ::: http://leymebamba.com
PROCESOS EN LINUX. ::: http://leymebamba.com
 
Planificador
PlanificadorPlanificador
Planificador
 
Como instalar unix ...lili
Como instalar unix ...liliComo instalar unix ...lili
Como instalar unix ...lili
 
CMD en Windows
CMD en WindowsCMD en Windows
CMD en Windows
 
Transcripcion yamy
Transcripcion yamyTranscripcion yamy
Transcripcion yamy
 
Linux
LinuxLinux
Linux
 
Mary cervantes
Mary cervantesMary cervantes
Mary cervantes
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Ronald
RonaldRonald
Ronald
 
Comandos centos
Comandos centos Comandos centos
Comandos centos
 
Nicolle
NicolleNicolle
Nicolle
 
Jadira palta
Jadira paltaJadira palta
Jadira palta
 
Instalar unix Euller Yugsan 108 bb72
Instalar unix Euller Yugsan 108 bb72Instalar unix Euller Yugsan 108 bb72
Instalar unix Euller Yugsan 108 bb72
 
Sandra saldaña instalarunix
Sandra saldaña instalarunixSandra saldaña instalarunix
Sandra saldaña instalarunix
 
Instalar unixElvis Urquizo
Instalar unixElvis UrquizoInstalar unixElvis Urquizo
Instalar unixElvis Urquizo
 

Último

Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUMarcosAlvarezSalinas
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTGestorManpower
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 

Último (20)

Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SST
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 

Logs en Linux.pdf

  • 1. Logs en Linux Sistemas Operativos II UMG Jutiapa
  • 2. Cómo ver los archivos de registro de Linux en tiempo real • Todas las distribuciones de Linux utilizan archivos de registro para registrar los eventos del sistema, incluyendo conectar dispositivos, sesiones nuevas y otros mensajes. • La mayoría de las distribuciones guardan estos archivos en el directorio /var/log. – Los comandos less y tail son útiles para leer estos archivos en tiempo real. – Algunos de los archivos están protegidos, hace falta iniciar una sesión como usuario root o usar sudo para leerlos.
  • 3. El comando tail • Use el comando tail -f para ver las últimas líneas de un archivo y las actualizaciones del mismo. Por ejemplo, el comando: – tail -f /var/log/auth.log Esto nos muestra eventos de autenticación como sesiones nuevas y el uso de sudo en el sistema. Si un usuario inicia una nueva sesión, verá la actualización del archivo con la nueva información usando este comando. Finalice el comando tail pulsando las teclas Ctrl y C simultáneamente
  • 4. El comando less • El comando less +F es casi igual a usar tail -f, pero proporciona acceso al archivo entero en vez de las últimas líneas y también muestra cualquier actualización en tiempo real. • Por ejemplo, este comando: – less +F /var/log/kern.log – El kern.log muestra mensajes del kernel. Finalice el comando pulsando las teclas Ctrl y c simultáneamente, seguido por la tecla q.
  • 5. Archivos de registro comunes • Los archivos de registro varían por distribución. No obstante, la mayoría de las distribuciones tienen al mínimo los siguientes archivos: – auth.log: Información sobre eventos de autenticación de usuarios. – boot.log: Muestra eventos y servicios empezados cuando se inicia el sistema. – crond.log: Tareas de cron – daemon.log: Alertas de servicios como ntfs-3g o dhcpd. – dmesg.log: Mensajes del kernel – mysqld.log: Archivo de MySQL. – syslog.log: Registro del sistema de registro.
  • 6. ssh • Antes de empezar a buscar logs es necesario conectarse a un servidor, para hacerlo vía ssh debemos ejecutar lo siguiente: • 1 ssh user@host • Permite conectarte a un host especificando un usuario, una vez que lo ejecutes te pedirá un password • 1 ssh -i sshKey user@host • Permite conectarte a un host utilizando una llave ssh, este comando solo requiere el usuario pero no es necesario escribir un password
  • 7. scp • Si quieres subir algún archivo o descargar algún log, una forma simple de hacerlo es haciendo uso del comando scp, veamos algunos ejemplos: – 1 scp user@host:absolutePath destinationPath • Descarga lo que se encuentra en el servidor a la ruta local especificada – 1 scp originPath user@host:destinationPath • Sube al servidor lo que se tiene en el originPath al destinationPath del servidor
  • 8. wc • No, no es lo que están pensando, imprime todas las líneas que tiene un archivo y el número de bytes, veamos un ejemplo: • 1 wc records.log Journalctl • La forma básica de acceder a los registros del sistema es: • Que viene a equivaler al viejo “cat /var/log/messages” y nos permite acceder a todos los logs sin filtrar (en cualquier momento podemos salir de esa pantalla utilizando la tecla “q”) • Como pasa con el resto de comandos podemos redirigir la salida hacia un documento de texto • journalctl > mensajes.log • Si queremos seguir los mensajes en tiempo real añadimos el parámetro -f • journalctl -f
  • 9. Filtrar la salida de logs por boots • Al ejecutar alguno de los comandos anteriores nos podemos dar cuenta que tenemos una lista inmensa de registros , así que vamos a filtrarlos por los diferentes procesos de arranque, que haya tenido nuestro ordenador. • Para ver la lista de todos los boots: • 1 journalctl --list-boots
  • 10. Para ver los logs del boot actual: • 1 journalctl -b • Si necesitamos ver alguno de los anteriores tenemos dos opciones: • Utilizamos simplemente una cuenta regresiva. Por ej para ver al anterior: • 1 journalctl -b -1 • y así sucesivamente: • journalctl -b -2 • journalctl -b -3 • O elegimos usar la ID del boot, que nos aparecio al listar los procesos de arranque con “journal –list-boots”. Sería algo así: – journalctl _BOOT_ID=dfe74d5a9d384a88821ff8d24d64f81f
  • 11. Ver los mensajes del kernel • Le añadimos el parámetro -k: • journalctl -k • Como suele pasar en la línea de comandos podemos combinar varios parámetros para afinar la búsqueda. • Aquí vemos los mensajes referidos al kernel durante el boot actual: • journalctl -k-b
  • 12. Filtrar por número de entradas en el registro de logs • La opción predeterminada es ejecutar la cual nos proporciona los últimos 10 mensajes • journalctl –n • Pero lo podemos cambiar, simplemente poniendo un número: • journalctl -n 50
  • 13. Filtrar los logs por ejecutables o programas • En este caso también tenemos varias formas de hacerlo, bien directamente con el ejecutable: • journalctl _COMM=NetworkManager • o especificando la ruta • journalctl /usr/sbin/NetworkManager • y como siempre tenemos la opción de filtrar con grep: • journalctl | grep NetworkManager
  • 14. Mostrar la salida por PID • Filtramos mediante el número identificador del proceso (algo que podemos consultar con top o htop), en esta ocasión como ves en el ejemplo 2527 corresponde a Firefox: • journalctl _PID=2527
  • 15. Especificar la salida por usuarios • La id de los usuarios la podéis encontrar ejecutando (obviamente sustituís la parte del nombre del usuario) • id nombre_del_usuario • y después seleccionas la que corresponda (1000, 1001, 1002…) – Ejemplo journalctl _UID=1001
  • 16. Filtrar la salida por servicios de systemd • Podemos ver los servicios que dependen de systemd, ejecutando: systemctl list-units -t service –all • y si nos interesa uno en particular, estudiamos sus mensajes añadiendo el parámetro -u y el nombre del servicio, como en este ejemplo journalctl -u dbus.service Podemos hacer una búsqueda de varios servicios añadiendo el caracter “+” (equivale a un “or”) y ejecutando: journalctl _SYSTEMD_UNIT=apparmor.service + _SYSTEMD_UNIT=dbus.s
  • 17. Filtrar por fechas • Se utilizan los parámetros “–since” y “–until”, así como expresiones tipo “yesterday” “ago” o “today”. • El formato de tiempo es habitualmente YYYY-MM-DD HH:MM:SS – Algunos ejemplos: • Ver los logs desde el día de ayer hasta hoy a las 02:00 horas. – journalctl --since 'yesterday' --until '02:00'
  • 18. • un intervalo de fechas específico: – journalctl --since='2015-02-29 00:01' --until='2015-03-29 00:01' Todos los logs especificando la fecha en el formato que os comentaba anteriormente, y filtrando por el programa firefox – journalctl _COMM=firefox --since='2015-02-29 00:01' --until='2015- 03-29 00:01‘ Lo mismo que el caso anterior pero en este caso filtrando por el servicio de sshd.service – journalctl -u sshd.service --since='2015-02-29 00:01' --until='2015-03- 29 00:01' O simplemente ver lo que ha pasado en la última media hora: – journalctl --since '30 min ago'
  • 19. Filtrar por la prioridad del mensaje • Los mensajes se clasifican en función de su prioridad en 7 niveles diferentes: • Para filtrarlos utilizamos el parámetro -p seguido del número correspondiente. En este ejemplo vemos los críticos: • journalctl -p 2 • “emerg” (0), • ”alert” (1), • “crit” (2), • “err” (3), • “warning” (4), • “notice” (5), • ”info” (6), y • “debug” (7)
  • 20. Mensajes de los discos duros • Puede ser interesante para descubrir problemas de funcionamiento en nuestras unidades de discos duros. – journalctl /dev/sda • Ver el espacio que están ocupando los diferentes logs Ejecutamos el comando: – journalctl --disk-usage • En el caso de que ese valor fuera excesivo lo podemos limitar en el archivo – /etc/systemd/journald.conf,
  • 21. Herramientas de respaldo y compresión de datos. • Uno de los inconvenientes del Administrador Sistemas, es el mantenimiento de presupuestos para conseguir un gasto adecuado de equipos. El respaldo de información puede llegar a convertirse en una misión crítica. Pero el gasto en material de almacenamiento (discos duros internos y externos, cintas, discos ópticos, etcétera) ha de controlarse, así que la información ha de comprimirse suponiendo un importante ahorro de dinero.
  • 22. • 7zip: Esta alternativa en código abierto, contiene complementos privativos como unRAR (licencia aparte). Grandes empresas como IBM no dudan en utilizarlo y en promocionar su uso tanto en GNU/Linux como en Windows. La página web de la organización está almacenada en el gigante Digital Ocean en este enlace http://www.7- zip.org/ de donde podrán descargar la versión para Windows y en GNU Linux con solo ejecutar «apt-get install p7zip-full» lo obtendremos
  • 23. Programas de monitoreo locales • . Cada sistema operativo generalmente trae sus propias utilerías desarrollado por ellos mismos o comprados a otras empresas y empaquetados juntos.
  • 24. • Powershell: Su punto fuerte son los “cmdlets” que son comandos especializados que implementan funciones específicas y emula el uso de “tuberías” de comandos de Unix. Fue desarrollado originalmente con Visual Studio.NET para ambientes Windows, no obstante desde agosto de 2016 está disponible para Linux y puede ser instalado como bien lo describen en este enlace. Aunque ahora tiene licencia MIT los componentes individuales siguen siendo privativos y van a medio camino hacia el software libre. • GNU Linux: acá manda la consola, hoy vamos a ver una muy rápida descripción de algunos de ellos. (Algunos podrán necesitar ser instalados vía apt-get, dependiendo de nuestra distribución):
  • 25.
  • 26. • curl”: permite verificar rápidamente si un servicio web está corriendo con las opciones “-I -s” con lo cual recibe los encabezados indicando la buena salud del proceso. No lo subestimemos, curl combinado con PHP motoriza el 25% de las páginas web a nivel mundialesto es así porque soporta los siguientes protocolos HTTP, HTTPS, FTP, FTPS, GOPHER, TFTP, SCP, SFTP, SMB, TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3, RTSP y RTMP.
  • 27. python”: un lenguaje de programación soportado en Windows y Linux que nos ayudará a recolectar y analizar abundante información con pocas líneas de código. En GNU Linux viene de manera sólida y tan extraordinario es, que desinstalarlo pone en aprietos a numerosas aplicaciones que dependen de él. Es otro elemento que debemos tener en cuenta. ´´top”: cada 5 segundos nos muestra los procesos que se están ejecutando y que consumen los mayores recursos. “vmstat”: Actividad del sistema e información del mismo y del hardware también. “w”: así de simple, una sola letra acompañada del nombre del usuario devuelve información sobre cuándo se conectó, en qué terminal trabaja y los procesos en ejecución. “uptime”: tiempo encendido del equipo. “ps -a”: lista todos los proceso en ejecución junto con su identificador. “free”: memoria libre , tanto física como de intercambio. “iostat”: carga promedio del CPU y la actividad del disco. “grep”: filtra por palabras claves, de un archivo o por “tubería” recibida de otro comando, para que extraigamos cifras muy específicas
  • 28. Comando chkconfig • Lo anterior puede resultar engorroso para más de alguno pero es la única manera si no se tienen herramientas gráficas o de línea de comandos para configurar los servicios mas agilmente, y precisamente una de estas herramientas de línea de comandos es chkconfig que permite configurar que servicios arrancan/detienen en cada nivel de ejecucción. Aclaración: chkconfig no inicia ni detiene servicios al momento (excepto aquellos bajo xinetd), tan solo crea o elimina precisamente los enlaces de los que se habló en el punto anterior de una manera mas amigable. Si lo que se quiere es iniciar o detener el servicio en tiempo real o manualmente hay que usar service o directamente el script con su argumento conveniente tal como se explicó anteriormente. Veamos ejemplos que muestran como trabajar con chkconfig.
  • 29. • Con la opción --list nos da una lista completa de todos los servicios instalados y para cada nivel si arrancará (on) al entrar a ese nivel o se detendrá (off) o simplemente no se iniciara. Nótese que al final de la lista vienen los servicios que dependen del superservidor xinetd.
  • 30.
  • 31. comandos imprescindibles para un Sysadmin • /PROC: Como podréis comprobar no es un comando, sí, está en la lista de los 20 que he comentado pero veo muy interesante comentar que aquí se encuentran archivos muy interesantes para el sistema como 'meminfo' o 'cpuinfo' por mencionar un par de ellos, que nos mostrarán información muy relevante sobre los componentes de nuestro equipo. Un simple 'cat' a estos archivos y podremos ver toda la información que contienen sin salir del prompt de la consola. • /CACTI: Realizará gráficas de rendimiento en los diferentes dispositivos que envíen información vía SNMP.
  • 32. • GNOME SYSTEM MONITOR: Monitoriza el rendimiento de nuestro sistema, y nos lo muestra en una interfaz muy amigable. • IOSTAT: Informa de los datos en entrada/salida de nuestra CPU y discos. • IPTRAF: Monitoriza todo el tráfico que entra y sale de nuestro equipo (interfaces, puertos, etc...). Es algo más que un comando, en realidad se trata de una aplicación muy lograda. • JFFNMS: Genera gráficas para monitorizar equipos a gran escala.
  • 33. • MPSTAT: Muy útil para procesadores Multi-Core, ya que permite ver el rendimiento de cada núcleo del procesador de forma independiente. 7 • NAGIOS: Sistema de monitorización muy versátil, puesto que por la cantidad de comandos que acompañan a la aplicación, y la infinidad de plugins existentes para la misma, se puede llevar el seguimiento de grandes cantidades de equipos, servidores y redes. Además mediante un SMS gateway podremos configurar el sistema para que nos alerte al móvil de cualquier incidencia. • NETSTAT: Muestra las conexiones abiertas en nuestro equipo.
  • 34. • PMAP: Informa sobre el rendimiento de la memoria del sistema, tanto en general como la memoria que consume un proceso concreto. • AR: Realiza reportes de la actividad del sistema. • SS: Muestra diferentes estadísticas de los sockets de nuestro equipo. Su función es similar a Netstat. • STRACE: Realiza debugs de servidores web, Apache, Httpd, lighthttp, entre otros. • TCPDUMP: Muestra todo el tráfico que circula por un puerto concreto en tiempo real.
  • 35. • UPTIME: Muestra información similar a la del comando TOP, además de otros datos interesantes como el tiempo que lleva encendido el equipo, la carga de procesos, el número de usuarios, etc... • VMSTAT: Informa del estado del equipo o sistema, tanto el hardware como los procesos que se están ejecutando, y todo en tiempo 'casi' real. • W: Muestra qué usuarios están conectados al equipo y además, podremos saber qué están haciendo en ese momento.
  • 36. Tarea • Cree un archivo de texto y muestre las ultimas actualizaciones que ha tenido (ese archivo) • Muestre información sobre eventos de autenticación de usuarios. • Haga una búsqueda de varios registros utilizando el comando similar al or