Ricerca…


introduzione

Raccolta di comandi per recuperare informazioni relative al sistema.

Elenco dell'hardware

Ubuntu:

lshw è un piccolo strumento per estrarre informazioni dettagliate sulla configurazione hardware della macchina. Può segnalare la configurazione esatta della memoria, la versione del firmware, la configurazione della scheda madre, la versione e la velocità della CPU, la configurazione della cache, la velocità del bus, ecc.

$ sudo lshw | less (or more)
$ sudo lshw -html > myhardware.html
$ sudo lshw -xml > myhardware.xml

Per mostrare informazioni PCI

$ lspci -tv

Per vedere le informazioni USB

$ lsusb -tv

Per visualizzare le informazioni del BIOS

$ dmidecode -q | less

Per visualizzare informazioni specifiche sul disco (disk sda nell'esempio) è possibile utilizzare:

$ hdparm -i /dev/sda

Poche utilità / comandi aggiuntivi aiuteranno a raccogliere alcune informazioni aggiuntive:

$ 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

Trova informazioni sul modello / velocità della CPU

Ubuntu:

$ cat /proc/cpuinfo

Uscita di esempio:

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:

processore di conteggio (inclusi i core):

$ grep -c processor /proc/cpuinfo

Monitoraggio dei processi e raccolta di informazioni

Nel complesso si hanno due modi per monitorare i processi sull'host linux

Monitoraggio statico

Il comando più usato è il comando ps (cioè, lo stato del processo) viene utilizzato per fornire informazioni sui processi attualmente in esecuzione, inclusi i loro numeri di identificazione del processo (PID).

Ecco alcune opzioni utili per raccogliere informazioni specifiche.

Elenca i processi in una gerarchia

$ ps -e -o pid,args --forest

Elenca i processi ordinati in base all'utilizzo di% cpu

$ ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'

Elenca i processi ordinati per utilizzo di mem (KB).

$ ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS

Elenca tutti i thread per un particolare processo (processo "firefox-bin" nell'esempio)

$ ps -C firefox-bin -L -o pid,tid,pcpu,state

Dopo aver trovato un processo specifico è possibile raccogliere le informazioni ad esso relative utilizzando lsof per elencare i percorsi che l'id di processo è aperto

$ lsof -p $$ 

O in base al percorso scopri i processi elenco che hanno percorso specificato aperto

$ lsof ~

Monitoraggio interattivo

Lo strumento più comunemente conosciuto per il monitoraggio dinamico è:

$ top

Questo comando, per lo più predefinito, ha enormi quantità di opzioni per filtrare e rappresentare le informazioni in tempo reale (rispetto al comando ps .

Ancora ci sono più opzioni avanzate che possono essere considerate e installate come top sostituzioni

$ htop -d 5

o

$ atop 

Che ha la possibilità di registrare tutte le attività in un file di registro (di default in cima registrerà tutte le attività ogni 600 secondi). A questa lista ci sono alcuni comandi specializzati come iotop o iftop

$ sudo iotop

Statistiche su CPU, memoria, rete e disco (operazioni I / O)

Per ottenere statistiche generali sui componenti principali dei comandi della famiglia di stat di Linux sono estremamente utili

processore

Per ottenere statistiche relative ai processori è possibile utilizzare il comando mpstat ma con alcune opzioni fornirà una migliore visibilità:

$ mpstat 2 10

Memoria

Tutti sappiamo che il comando è free di mostrare la quantità di RAM (rimanente) ma di vedere tutte le statistiche incluse le operazioni di I / O:

$ vmstat 2 10

Disco

Per ottenere informazioni generali sulle operazioni del tuo disco in tempo reale, puoi utilizzare iostat .

$ iostat -kx 2

Rete

Per essere in grado di vedere cosa sta succedendo con i tuoi servizi di rete puoi usare netstat

$ netstat -ntlp # open TCP sockets 
$ netstat -nulp # open UDP sockets 
$ netstat -nxlp # open Unix sockets 

Ma puoi trovare un monitoraggio utile per vedere il traffico di rete in tempo reale:

$ sudo iftop

Opzionale

Per generare statistiche in tempo reale relative alle operazioni di I / O su tutti i componenti, è possibile utilizzare dstat . Questo strumento è un sostituto versatile per vmstat , iostat e ifstat

Usando strumenti come lscpu e lshw

Usando strumenti come lscpu come lscpu è un modo semplice per ottenere informazioni sulla 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 lo strumento 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


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow