Es realmente un trabajo muy duro para todo administrador Linux supervisar y depurar los problemas
de rendimiento del sistema todos los días. Después de ser un
administrador de Linux en
la industria de TI, me enteré de que lo difícil es vigilar y mantener los sistemas en funcionamiento. Por esta razón, he compilado la lista de las
15 herramientas utilizadas para el monitoreo del sistema desde la línea de comandos que pueden ser útiles para cualquier
administrador de sistemas Linux / Unix. Estos comandos están disponibles en todas las versiones de
Linux
y puede ser útil para controlar y encontrar las causas reales de los
problemas de rendimiento. Esta lista de comandos que se muestran aquí
para que pueda escoger la que sea más adecuada para su escenario de
supervisión.
El Comando
Top Linux es un programa para la
supervisión del rendimiento que utilizan con mucha frecuencia la mayoría
de los administradores de sistemas para comprobar el rendimiento de
Linux y está disponible en muchos sistemas
Linux / Unix.
El comando top se utiliza para mostrar todo el funcionamiento y los
procesos en tiempo realmente activos en una lista que actualiza
regularmente. Se mostrará
el uso de CPU, uso de memoria, la memoria de intercambio, Cache
, Tamaño de búfer, PID de proceso, usuario, Comandos y mucho más. También muestra la carga de
memoria y
de la CPU
de un proceso en ejecución. El comando top es mucho útil para el
administrador de sistema para supervisar y tomar acción correcta cuando
se requiera. Vamos a ver la parte superior de comandos en acción.
# top
top - 13:17:44 up 3:35, 3 users, load average: 0.30, 0.61, 0.71
Tasks: 195 total, 1 running, 194 sleeping, 0 stopped, 0 zombie
Cpu(s): 8.6%us, 1.5%sy, 0.0%ni, 89.4%id, 0.0%wa, 0.3%hi, 0.2%si, 0.0%st
Mem: 3950228k total, 3669632k used, 280596k free, 260276k buffers
Swap: 5128188k total, 0k used, 5128188k free, 1039232k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6832 javier 20 0 2594m 1.2g 44m S 11.0 31.9 4:09.29 firefox
6929 javier 20 0 746m 204m 23m S 5.6 5.3 0:26.26 plugin-containe
7023 javier 20 0 547m 27m 20m S 2.3 0.7 0:02.30 konsole
2840 root 20 0 141m 30m 15m S 0.7 0.8 6:42.59 X
684 root 20 0 7408 316 212 S 0.3 0.0 0:00.48 gpm
1250 mysql 20 0 539m 46m 3496 S 0.3 1.2 0:14.68 mysqld
4759 javier 20 0 2890m 32m 19m S 0.3 0.8 1:54.24 kwin
1 root 20 0 50164 4804 2056 S 0.0 0.1 0:01.24 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.31 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/u:0H
8 root RT 0 0 0 0 S 0.0 0.0 0:00.20 migration/0
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
10 root 20 0 0 0 0 S 0.0 0.0 0:03.62 rcu_sched
11 root RT 0 0 0 0 S 0.0 0.0 0:00.03 watchdog/0
12 root RT 0 0 0 0 S 0.0 0.0 0:00.04 watchdog/1
13 root 20 0 0 0 0 S 0.0 0.0 0:00.32 ksoftirqd/1
14 root RT 0 0 0 0 S 0.0 0.0 0:00.11 migration/1
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H
17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 cpuset
18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper
2. Vmstat - estadísticas de la memoria virtual
Comando
vmstat de Linux se utiliza para mostrar las estadísticas de la
memoria virtual, hilos kernerl, discos, procesos de sistema, bloques de E / S, interrupciones, actividad de la CPU
y mucho más. Al comando vmstat predeterminada no está disponible en los
sistemas Linux es necesario instalar un paquete llamado
sysstat que incluye un programa vmstat. El uso común del formato del comando es.
# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 1386204 104712 1248944 0 0 428 103 1437 2656 39 7 47 7 0
[javier@localhost ~]$
3. Lsof - Lista de archivos abiertos
Comando
lsof se utiliza en muchos
Linux / Unix
como sistema que se utiliza para motar todos los archivos abiertos y
los procesos que los utilizan. Los archivos abiertos incluidos son
archivos de disco, de la red, tuberías, dispositivos y
procesos.
Una de las principales razones para el uso de este comando es que
cuando un disco no se puede desmontar y muestra el error de que hay
archivos que lo están utilizando o están. Con este comando puede
identificar fácilmente qué archivos están en uso. El formato más común
para este comando.
# lsof
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sd_espeak 2413 2416 javier mem REG 8,5 47664 177402 /usr/lib64/librt-2.15.so
sd_espeak 2413 2416 javier mem REG 8,5 29648 177622 /usr/lib64/libdotconf.so.0.0.1
sd_espeak 2413 2416 javier mem REG 8,5 89656 177406 /usr/lib64/libgcc_s-4.7.2-20120921.so.1
sd_espeak 2413 2416 javier mem REG 8,5 109632 177410 /usr/lib64/libresolv-2.15.so
sd_espeak 2413 2416 javier mem REG 8,5 123992 177432 /usr/lib64/libxcb.so.1.1.0
sd_espeak 2413 2416 javier mem REG 8,5 16832 177431 /usr/lib64/libXau.so.6.0.0
sd_espeak 2413 2416 javier mem REG 8,5 1288248 177433 /usr/lib64/libX11.so.6.3.0
sd_espeak 2413 2416 javier mem REG 8,5 977936 177407 /usr/lib64/libstdc++.so.6.0.17
sd_espeak 2413 2416 javier mem REG 8,5 76208 177434 /usr/lib64/libXext.so.6.4.0
sd_espeak 2413 2416 javier mem REG 8,5 38640 177688 /usr/lib64/libao.so.4.0.0
4. Tcpdump - Packet Analyzer
Tcpdump es el
analizador de paquetes de la línea de comandos más utilizado o programa de
succionador de paquetes que se utiliza tanto para la captura o el filtro de paquetes
TCP/IP
que recibieron o han sido transferidos en una interfaz específica a
través de una red. También proporciona una opción para guardar los
paquetes capturados en un archivo para su posterior análisis. tcpdump
esta casi siempre disponible en las principales distribuciones de Linux.
# tcpdump -i eth0
22:19:22.443542 IP 208.92.53.111.http >
localhost.localdomain.33461: Flags [P.], seq 4213809828:4213810056, ack
3942125296, win 1716, options [nop,nop,TS val 1933996291 ecr 1717147],
length 228
22:19:22.443634 IP localhost.localdomain.33461 >
208.92.53.111.http: Flags [.], ack 4294965856, win 1395, options
[nop,nop,TS val 1717306 ecr 1933996173,nop,nop,sack 1 {0:228}], length 0
22:19:22.443669
IP 208.92.53.111.http > localhost.localdomain.33461: Flags [.], seq
4294965856:0, ack 1, win 1716, options [nop,nop,TS val 1933996291 ecr
1717147], length 1440
22:19:22.443702 IP localhost.localdomain.33461
> 208.92.53.111.http: Flags [.], ack 228, win 1395, options
[nop,nop,TS val 1717306 ecr 1933996291], length 0
5. Netstat - Estadísticas de la red
Netstat es una herramienta de línea de comandos para controlar los paquetes
de red, estadísticas
entrantes y
salientes,
así como estadísticas de la interfaz. Es una herramienta muy útil para
todos los administradores de sistema para monitorear el desempeño de la
red y solucionar problemas relacionados con la red.
# netstat -a | more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:https *:* LISTEN
tcp 0 0 *:db-lsp *:* LISTEN
tcp 0 0 localhost:atmtcp *:* LISTEN
tcp 0 0 *:40643 *:* LISTEN
tcp 0 0 *:24837 *:* LISTEN
tcp 0 0 *:mysql *:* LISTEN
tcp 0 0 *:rfb *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:http *:* LISTEN
tcp 0 0 localhost.locald:domain *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 *:59897 *:* LISTEN
tcp 0 0 localhost:smtp *:* LISTEN
tcp 0 0 localhost.localdo:60709 108.160.163.40:http ESTABLISHED
tcp 0 0 localhost.localdo:58334 db3msgr5010618.gat:msnp ESTABLISHED
tcp 0 0 localhost.localdo:49572 wb-in-f125.:xmpp-client ESTABLISHED
tcp 0 0 localhost.localdo:39190 mad01s08-in-f21.1:https ESTABLISHED
tcp 0 0 localhost.localdo:57934 195.57.81.34:http ESTABLISHED
tcp 0 0 localhost.localdo:34153 ec2-23-21-236-70.c:http ESTABLISHED
tcp 0 0 localhost.localdo:34152 ec2-23-21-236-70.c:http ESTABLISHED
tcp 0 0 localhost.localdo:34154 ec2-23-21-236-70.c:http TIME_WAIT
tcp 0 0 localhost.localdo:55572 s3-1.amazonaws.co:https ESTABLISHED
6. Htop - Seguimiento de procesos Linux
Htop es una herramienta mucho más avanzada, interactiva y en tiempo real Linux para el seguimiento de procesos. Es similar al
comando top de Linux pero tiene algunas características avanzadas como
interfaz fácil de usar para la gestión de procesos, teclas de acceso directo, vista vertical y horizontal de los procesos y mucho más. Htop es una herramienta de terceros y no se incluye en los sistemas Linux, debe instalarlo utilizando
YUM (o APT-GET) o el que sea su herramienta de gestión de paquetes. Para obtener más información sobre la instalación, lea nuestro artículo siguiente.
# htop
7. Iotop - Monitor Linux disco I / O
Iotop es también muy similar a
al comando top y al
programa htop, pero tiene la función de contabilidad para monitorear y visualizar en tiempo real
las E/S del disco y
procesos. Esta herramienta es muy útil para encontrar el proceso exacto y disco utilizado alta lectura / escritura de los procesos.
# iotop
9 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_bh]
10 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_sched]
11 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/0]
12 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/1]
13 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/1]
14 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/1]
16 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/1:0H]
17 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [cpuset]
18 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [khelper]
8. Iostat - Estadísticas Entrada / Salida
Iostat es una herramienta sencilla que recoger y
mostrar las estadísticas de entrada y salida de un dispositivo de
almacenamient del sistema y. Esta herramienta se utiliza a menudo para
rastrear problemas de rendimiento de los dispositivos de almacenamiento,
incluyendo
dispositivos, discos locales, discos remotos como
NFS.
# iostat
# iostat
Linux 2.6.18-238.9.1.el5 (tecmint.com) 09/13/2012
avg-cpu: %user %nice %system %iowait %steal %idle
2.60 3.65 1.04 4.29 0.00 88.42
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
cciss/c0d0 17.79 545.80 256.52 855159769 401914750
cciss/c0d0p1 0.00 0.00 0.00 5459 3518
cciss/c0d0p2 16.45 533.97 245.18 836631746 384153384
cciss/c0d0p3 0.63 5.58 3.97 8737650 6215544
cciss/c0d0p4 0.00 0.00 0.00 8 0
cciss/c0d0p5 0.63 3.79 5.03 5936778 7882528
cciss/c0d0p6 0.08 2.46 2.34 3847771 3659776
9. IPTraf - Monitoreo en tiempo real LAN IP
IPTraf es una utilidad de monitorización de código abierto basada en consola y en tiempo real de la red para
Linux. (IP LAN)
- Recoge una gran variedad de información como monitor de tráfico IP
que pasa a través de la red, incluida la información de flags TCP,
detalles ICMP, TCP / averías tráfico UDP, paquete de conexión TCP y
cuenta Byne. También recoge información de estadísticas de la interfaz
general y detaled de TCP, UDP,,,, errores de suma de comprobación IP no
IP ICMP IP, interfaz actividad, etc
10. Psacct or Acct - Monitor de actividad del usuario
La herramientas psacct o acct son muy útiles para el seguimiento de
cada actividad de los usuarios en el sistema. Ambos demonios se ejecutan
en segundo plano y mantienen una estrecha vigilancia sobre la actividad
global de cada usuario en el sistema y también qué recursos están
siendo consumidos por ellos.
Estas herramientas son muy útiles para los administradores de
sistemas para el seguimiento de cada actividad de los usuarios, que les
gusta o que están haciendo, qué comandos ejecutan, la cantidad de
recursos utilizados por ellos, el tiempo que están activos en el
sistema, etc
11. Monit - Proceso de Linux y Seguimiento de Servicios
Monit es una utilidad para la supervisión de
procesos basado en web que monitoriza automáticamente los procesos,
programas, archivos, directorios, permisos, sumas de control y sistemas
de archivos.
Efectuará un seguimiento de los servicios como Apache, MySQL,
correo, FTP, ProFTP, Nginx, SSH, etc. El estado del sistema se puede
verse desde la línea de comandos o usar la propia interfaz web.
12. NetHogs - Monitor por proceso Ancho de banda de red
NetHogs es un pequeño programa agradable (similar al
comando top
Linux) que mantiene una ficha en cada actividad de red de proceso en el
sistema. También mantiene una pista de ancho de banda de tráfico de red
en tiempo real que utiliza cada programa o aplicación.
13. iftop - Control de ancho de banda de red
iftop es otra utilidad basada en terminal para el
control que muestra una lista actualizada con frecuencia de utilización
del ancho de banda de red (hosts de origen y de destino) que pasa a
través de la interfaz de red en el sistema. iftop se considera a la red,
lo que
'top' hace uso de la CPU. iftop es una herramienta
'top' para monitorear una interfaz seleccionada y muestra un uso de ancho de banda actual entre dos hosts.
14. Monitorix - Sistema y Red de Monitoreo
Monitorix es una ligera utilidad gratuita que está
diseñado para ejecutar y supervisar los recursos del sistema y de la red
con el mayor número posible de servidores
Linux / Unix. Se ha incorporado un servidor web
HTTP que recoge regularmente información del sistema y de la red y los muestra en los gráficos. Efectuará un seguimiento de
la
carga promedio del sistema y su uso, la asignación de memoria, la salud
del disco, los servicios del sistema, puertos de red, estadísticas de
correo (Sendmail, Postfix, Dovecot, etc),
las estadísticas de MySQL
y muchos más. Es diseñado para controlar el rendimiento general del
sistema y ayuda en la detección de fallas, cuellos de botella,
actividades anormales, etc
15. Arpwatch - Ethernet Activity Monitor
Arpwatch es un programa que está diseñado para control de resolución de direcciones
(MAC y cambios en la dirección
IP) del tráfico de red
Ethernet en una red Linux. Está continuamente vigilando el tráfico Ethernet y registra los cambios en las direcciones
IPs y direcciones
MACs, los
cambios de pares junto con las marcas de tiempo en una red. También
tiene una función para enviar un e-mail avisando al administrador,
cuando una pareja es agregada o cambia. Es muy útil en la detección de
suplantación
ARP en una red.
Un agradecimiento a http://www.linux-party.com de done obtuve esta relacion de comandos, voy a aumentar algunos adicionales luego.
saludos
Miguel