GNU/Linux
Systeeminformatie verkrijgen
Zoeken…
Invoering
Verzameling van opdrachten om systeemgerelateerde informatie op te halen.
Lijst hardware
Ubuntu:
lshw is een kleine tool om gedetailleerde informatie over de hardwareconfiguratie van de machine te extraheren. Het kan exacte geheugenconfiguratie, firmwareversie, moederbordconfiguratie, CPU-versie en snelheid, cacheconfiguratie, bussnelheid, etc. melden.
$ sudo lshw | less (or more)
$ sudo lshw -html > myhardware.html
$ sudo lshw -xml > myhardware.xml
Om PCI-info te tonen
$ lspci -tv
USB-info bekijken
$ lsusb -tv
BIOS-informatie weergeven
$ dmidecode -q | less
Om specifieke informatie over de schijf te zien (bijvoorbeeld schijf-sda), kunt u het volgende gebruiken:
$ hdparm -i /dev/sda
Enkele extra hulpprogramma's / opdrachten helpen bij het verzamelen van extra informatie:
$ 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
Vind CPU-model / snelheidsinformatie
Ubuntu:
$ cat /proc/cpuinfo
Monster uitgang:
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:
tel processor (inclusief cores):
$ grep -c processor /proc/cpuinfo
Procesbewaking en informatievergaring
Over het algemeen heb je twee manieren om processen bij Linux-host te bewaken
Statische monitoring
De meest gebruikte opdracht is de opdracht ps
(dat wil zeggen processtatus) om informatie te verstrekken over de processen die momenteel worden uitgevoerd, inclusief hun procesidentificatienummers (PID's).
Hier enkele handige opties om specifieke informatie te verzamelen.
Lijst processen in een hiërarchie
$ ps -e -o pid,args --forest
Lijst processen gesorteerd op% cpu gebruik
$ ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'
Lijst processen gesorteerd op mem (KB) gebruik.
$ ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
Lijst alle threads voor een bepaald proces (voorbeeld "firefox-bin" -proces)
$ ps -C firefox-bin -L -o pid,tid,pcpu,state
Na het vinden van een specifiek proces kunt u informatie verzamelen die lsof
gerelateerd met behulp van lsof
om de paden weer te geven die proces-ID heeft geopend
$ lsof -p $$
Of ontdek op basis van pad lijstprocessen waarvoor het opgegeven pad open is
$ lsof ~
Interactieve monitoring
Meest bekende tool voor dynamische monitoring is:
$ top
Dat meestal standaard commando dat enorme hoeveelheid opties heeft om informatie in realtime te filteren en te representeren (in vergelijking met ps
commando.
Toch zijn er meer geavanceerde opties die kunnen worden beschouwd en geïnstalleerd als top
vervanging
$ htop -d 5
of
$ atop
Die de mogelijkheid heeft om alle activiteiten in het logbestand te loggen (standaard atop registreert alle activiteit om de 600 seconden) Aan deze lijst zijn er enkele gespecialiseerde commando's als iotop
of iftop
$ sudo iotop
Statistieken over CPU, geheugen, netwerk en schijf (I / O-bewerkingen)
Voor het verkrijgen van algemene statistieken over de belangrijkste componenten van de Linux-familie van stat
opdrachten zijn uiterst nuttig
CPU
Om aan processors gerelateerde statistieken te krijgen, kunt u de opdracht mpstat
gebruiken, maar met sommige opties biedt dit een betere zichtbaarheid:
$ mpstat 2 10
Geheugen
We weten allemaal opdracht free
te hoeveelheid (resterende) RAM tonen, maar om alle statistische gegevens, I / O-bewerkingen te zien:
$ vmstat 2 10
Schijf
Om algemene informatie over uw schijfbewerkingen in realtime te krijgen, kunt u iostat
gebruiken.
$ iostat -kx 2
Netwerk
Om te kunnen zien wat er met uw netwerkdiensten gebeurt, kunt u netstat
$ netstat -ntlp # open TCP sockets
$ netstat -nulp # open UDP sockets
$ netstat -nxlp # open Unix sockets
Maar u kunt nuttige monitoring vinden om netwerkverkeer in realtime te zien:
$ sudo iftop
Optioneel
Om statistieken in realtime te genereren met betrekking tot I / O-bewerkingen voor alle componenten, kunt u dstat
. Dat instrument dat is een veelzijdige vervanger voor vmstat
, iostat
en ifstat
Gebruik van tools zoals lscpu en lshw
Door tools zoals lscpu te gebruiken als lscpu is een gemakkelijke manier om CPU-informatie te verkrijgen.
$ 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
Met behulp van tool 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