GNU/Linux
Obtención de información del sistema
Buscar..
Introducción
Colección de comandos para obtener información relacionada con el sistema.
Lista de Hardware
Ubuntu:
lshw es una pequeña herramienta para extraer información detallada sobre la configuración del hardware de la máquina. Puede informar la configuración exacta de la memoria, la versión del firmware, la configuración de la placa base, la versión y velocidad de la CPU, la configuración de la memoria caché, la velocidad del bus, etc.
$ sudo lshw | less (or more)
$ sudo lshw -html > myhardware.html
$ sudo lshw -xml > myhardware.xml
Para mostrar información de PCI
$ lspci -tv
Para ver la información del USB
$ lsusb -tv
Para mostrar información de BIOS
$ dmidecode -q | less
Para ver información específica sobre el disco (disco sda en el ejemplo) puede usar:
$ hdparm -i /dev/sda
Pocas utilidades / comandos adicionales ayudarán a reunir información adicional:
$ smartctl -A /dev/sda | grep Power_On_Hours # How long has this disk (system) been powered on in total
$ hdparm -tT /dev/sda # Do a read speed test on disk sda
$ badblocks -s /dev/sda # Test for unreadable blocks on disk sda
Encuentra el modelo de CPU / información de velocidad
Ubuntu:
$ cat /proc/cpuinfo
Salida de muestra:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 1596.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm tpr_shadow vnmi flexpriority
bogomips : 4800.18
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
....
..
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 1596.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 4
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm tpr_shadow vnmi flexpriority
bogomips : 4800.30
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
procesador de conteo (incluyendo núcleos):
$ grep -c processor /proc/cpuinfo
Seguimiento de procesos y recopilación de información.
En general, tiene dos formas de monitorear los procesos en Linux host
Monitoreo estático
El comando más utilizado es el comando ps
(es decir, el estado del proceso) que se utiliza para proporcionar información sobre los procesos actualmente en ejecución, incluidos sus números de identificación de procesos (PID).
Aquí algunas opciones útiles para recopilar información específica.
Enumerar procesos en una jerarquía.
$ ps -e -o pid,args --forest
Listar procesos ordenados por% de uso de la CPU
$ ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'
Lista de procesos ordenados por uso de mem (KB).
$ ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
Listar todos los hilos para un proceso en particular (proceso "firefox-bin" en el ejemplo)
$ ps -C firefox-bin -L -o pid,tid,pcpu,state
Después de encontrar un proceso específico, puede recopilar información relacionada con él utilizando lsof
para enumerar las rutas que el ID de proceso tiene abiertas
$ lsof -p $$
O en función de la ruta, descubra los procesos de la lista que tienen una ruta especificada abierta
$ lsof ~
Monitoreo interactivo
La herramienta más conocida para el monitoreo dinámico es:
$ top
Ese comando en su mayoría predeterminado tiene opciones de gran cantidad para filtrar y representar información en tiempo real (en comparación con el comando ps
.
Todavía hay más opciones avanzadas que se pueden considerar e instalar como reemplazo top
$ htop -d 5
o
$ atop
Que tiene la capacidad de registrar todas las actividades en el archivo de registro (por defecto atop registrará toda la actividad cada 600 segundos). A esta lista hay pocos comandos especializados como iotop
o iftop
$ sudo iotop
Estadísticas sobre CPU, memoria, red y disco (operaciones de E / S)
Obtener estadísticas generales sobre los componentes principales de la familia de comandos de stat
de Linux es extremadamente útil
UPC
Para obtener estadísticas relacionadas con los procesadores, puede usar el comando mpstat
pero con algunas opciones proporcionará una mejor visibilidad:
$ mpstat 2 10
Memoria
Todos sabemos que el comando es free
para mostrar la cantidad de RAM (restante) pero para ver todas las estadísticas, incluidas las operaciones de E / S:
$ vmstat 2 10
Disco
Para obtener información general sobre las operaciones de su disco en tiempo real, puede utilizar iostat
.
$ iostat -kx 2
Red
Para poder ver lo que está sucediendo con sus servicios de red, puede utilizar netstat
$ netstat -ntlp # open TCP sockets
$ netstat -nulp # open UDP sockets
$ netstat -nxlp # open Unix sockets
Pero puede encontrar un monitoreo útil para ver el tráfico de la red en tiempo real:
$ sudo iftop
Opcional
Para generar estadísticas en tiempo real relacionadas con las operaciones de E / S en todos los componentes, puede usar dstat
. Esa herramienta que es un reemplazo versátil para vmstat
, iostat
y ifstat
Usando herramientas como lscpu y lshw
Al usar herramientas como lscpu como lscpu es una forma fácil de obtener información de la CPU.
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 23
Stepping: 10
CPU MHz: 1998.000
BogoMIPS: 5303.14
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 2048K
NUMA node0 CPU(s): 0-3
Usando la herramienta lshw
$ lshw | grep cpu
df1-ws-5084
description: Computer
width: 64 bits
capabilities: vsyscall32
*-core
description: Motherboard
physical id: 0
*-memory
description: System memory
physical id: 0
size: 5881MiB
*-cpu
product: Intel(R) Pentium(R) CPU G3220 @ 3.00GHz
vendor: Intel Corp.
physical id: 1
bus info: cpu@0
size: 3GHz
capacity: 3GHz
width: 64 bits