System Monitor
Sistemi di monitoraggio | ||
---|---|---|
| ||
Panoramica esaustiva degli strumenti che Debian mette a disposizione per il monitoraggio delle risorse.
| ||
Link agli articoli: |
Introduzione
In questo articolo vorrei parlarvi dei fantastici strumenti che la nostra potentissima Debian ci mette a disposizione. Ne elencherò una parte, perché i tools sono tantissimi, e si possono usare per scopi diversi.
Possiamo utilizzarli per analizzare il nostro PC che sia esso un laptop, un desktop o un server, per cercare di scoprire nel caso la nostra macchina sia lenta dove intervenire, o solamente per cercare di ottimizzarla.
Altri tools vanno poi ad integrare in interfacce grafiche (GUI) con le quali possiamo abbellire in nostro desktop environment (DE), e da dove possiamo gestire i dati da visualizzare.
Per semplicità dividerò in due parti questi strumenti:
- senza interfaccia grafica (comando da shell)
- con interfaccia grafica (gestione da GUI)
System monitor da shell senza GUI
fdisk
- Descrizione
fdisk è un manipolatore della tavola delle partizioni per linux
Uno strumento molto più potente dell'uso qui descritto, dovrebbe essere già presente sulla vostra distro, per maggiori informazioni usare il comando man fdisk.
Dato che in molte operazioni da eseguire con altri comandi, occorrerà conoscere la locazione del disco, fdisk è lo strumento che preferisco per ottenere questi dati.
- Utilizzo
L' esempio sotto riportato vi mostra l'output molto semplice e intuitivo.
# fdisk -l Disk /dev/sda: 80.0 GB, 80026361856 bytes 255 heads, 63 sectors/track, 9729 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0xc76fc76f Device Boot Start End Blocks Id System /dev/sda1 * 1 5139 41278986 7 HPFS/NTFS /dev/sda2 5140 9696 36604102+ f W95 Ext'd (LBA) /dev/sda3 9697 9729 265072+ 83 Linux /dev/sda5 5140 9696 36604071 7 HPFS/NTFS Disk /dev/hdb: 122.9 GB, 122942324736 bytes 255 heads, 63 sectors/track, 14946 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x98917e7c Device Boot Start End Blocks Id System /dev/hdb1 2 14946 120045712+ f W95 Ext'd (LBA) /dev/hdb5 2 14946 120045681 7 HPFS/NTFS Disk /dev/sdb: 81.9 GB, 81964302336 bytes 255 heads, 63 sectors/track, 9964 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x0006b329 Device Boot Start End Blocks Id System /dev/sdb1 * 1 2432 19535008+ 83 Linux /dev/sdb2 2433 6079 29294527+ 83 Linux /dev/sdb3 6080 6322 1951897+ 82 Linux swap / Solaris /dev/sdb4 6323 9964 29254365 f W95 Ext'd (LBA) /dev/sdb5 6323 9964 29254333+ 7 HPFS/NTFS
hddtemp
Suggerimento L' argomento trattato ha una guida mantenuta aggiornata Hddtemp |
- Descrizione
Il programma hddtemp monitora e crea rapporti sulla temperatura dei seguenti hard disk PATA, SATA o SCASI con la lettura delle informazioni da Self-Monitoring Analysis and Reporting Technology (SMART) sulle unità che supportano questa caratteristica.
- Installazione
apt-get install hddtemp
- Utilizzo
Per maggiori informazioni man hddtemp hddtemp -h , sotto un'esempio di utilizzo.
# hddtemp /dev/sda /dev/sda: ST380023AS: 30°C
blkid
- Descrizione
Il programma blkid è l'interfaccia della linea di comando che lavora con libuuid. Si può determinare il tipo di contenuto (ad esempio un file di swap), un blocco del dispositivo e anche gli attributi (tokens, NAME = coppie di valori), dà il contenuto dei metadati (ad esempio campi LABEL or UUID).
blkid ha due forme principali di funzionamento: o la ricerca di un dispositivo con un nome specifico = valore di coppia, o la visualizzazione NAME = coppie di valori per uno o più dispositivi.
- Utilizzo
Per maggiori info usare man blkid o blkid -h qui sotto un'esempio:
# blkid /dev/hda5: UUID="A8C0FBA6C0FB78C0" LABEL="share" TYPE="ntfs" /dev/sda1: UUID="A2E8ED0AE8ECDE13" LABEL="xp" TYPE="ntfs" /dev/sda3: LABEL="GEEXBOX" UUID="4ab40d92-840b-4c9b-a716-a95c19be9340" SEC_TYPE="ext2" TYPE="ext3" /dev/sda5: UUID="445BC3BCA2495BE4" LABEL="ARKIVIO" TYPE="ntfs" /dev/hdb5: UUID="2E5039955039652D" LABEL="barabba" TYPE="ntfs" /dev/sdb1: UUID="1a3f829c-d617-4c26-93cc-78d3fea89638" TYPE="ext3" /dev/sdb2: UUID="593d925b-0328-45e4-9ad2-632fb4d143ad" TYPE="ext3" /dev/sdb3: TYPE="swap" /dev/sdb5: UUID="4E2CB2232CB205CD" LABEL="data" TYPE="ntfs" /dev/hdd1: UUID="1303A5E059ECDB51" LABEL="backup" TYPE="ntfs"
lm-sensors
- Descrizione
Lm-sensors è un pacchetto di monitoraggio della salute hardware per Linux. Esso consente di accedere alle informazioni da parte della temperatura, tensione e sensori di velocità della ventola. Funziona con la maggior parte dei sistemi più recenti. Questo pacchetto contiene i programmi per aiutarvi a creare e leggere i dati da lm-sensors.
- Installazione
#apt-get install lm-sensors
- Utilizzo
per poter riuscire a individuare i sensori del nostro chipset occorre prima eseguire
sensors-detect
Ci verranno poste una serie di domande alle quali dovremmo rispondere yes, così che alla fine ci verrà chiesto di poter inserire i dati all'interno del file /etc/modules, fatto questo al prossimo riavvio, lm-sensors sarà in grado di leggere i vari output dei nostri sensori.
Questo è quello che è stato inserito per la mia ASUS A7N8X-E Deluxe
# Generated by sensors-detect on Tue Sep 16 01:14:58 2008 # I2C adapter drivers i2c-nforce2 # Chip drivers asb100
Ricordiamoci che lm-sensors è alla base di molti altri porgrammi, che si affidano a lui per restituirvi dati come la temperatura, il numero di giri delle ventole e altro ancora, pur sempre che venga riconosciuto.
Per maggiori informazioni consultate man sensors e sensors -h, sotto trovate un'esempio di esecuzione del comando:
$ sensors asb100-i2c-1-2d Adapter: SMBus nForce2 adapter at 5500 VCore 1: +1.70 V (min = +1.31 V, max = +1.97 V) +3.3V: +3.34 V (min = +2.96 V, max = +3.63 V) +5V: +4.89 V (min = +4.49 V, max = +5.51 V) +12V: +11.92 V (min = +9.55 V, max = +14.41 V) -12V (reserved): -12.45 V (min = -0.00 V, max = -0.00 V) -5V (reserved): -5.22 V (min = -0.00 V, max = -0.00 V) CPU Fan: 5232 RPM (min = 168750 RPM, div = 2) Chassis Fan: 0 RPM (min = -1 RPM, div = 2) Power Fan: 0 RPM (min = -1 RPM, div = 2) M/B Temp: +51.0°C (high = +80.0°C, hyst = +75.0°C) CPU Temp (Intel): +24.0°C (high = +80.0°C, hyst = +75.0°C) Power Temp: +127.0°C (high = +80.0°C, hyst = +64.0°C) CPU Temp (AMD): +25.0°C (high = +80.0°C, hyst = +75.0°C) cpu0_vid: +1.650 V
smartmontools
- Descrizione
Il pacchetto smartmontools contiene due programmi di utilità (smartctl e smartd) per controllare e monitorare i sistemi di storage utilizzando la Self-Monitoring, Analysis and Reporting Technology System (SMART) costruito nei più moderni ATA e SCSI hard disk. Esso è ricavato dal pacchetto SmartSuite, e include il supporto per dischi ATA/ATAPI-5. Dovrebbe funzionare su qualsiasi sistema Linux moderno. Questa tecnologia è in grado di darvi molte informazioni sullo stato di salute dei vostri hard disk, occorre un pò di pazienza nell'analisi degli output.
- Utilizzo
Per maggiori informazioni consultate smartctl -h come root. Per un output più dettagliato usate il comando
smartctl -a /dev/xxx
altrimenti il formato ridotto come da esempio sottostante:
# smartctl -i /dev/hdd smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF INFORMATION SECTION === Model Family: Maxtor DiamondMax 10 family (ATA/133 and SATA/150) Device Model: Maxtor 6L200P0 Serial Number: L42P9KZG Firmware Version: BAJ41G20 User Capacity: 203,928,109,056 bytes Device is: In smartctl database [for details use: -P show] ATA Version is: 7 ATA Standard is: ATA/ATAPI-7 T13 1532D revision 0 Local Time is: Sat Apr 18 01:28:44 2009 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled
hdparm
- Descrizione
Ottiene e setta i parametri del disco rigido per Linux. L 'uso primario è per consentire l'irq-unmasking e l'IDE multiplemode. C'è da dire che questo strumento non è ancora pienamente compatibile con i dischi SATA.
- Utilizzo
-t misura invece la velocità di trasferimento dati memorizzati in sequenza -T misurare la velocità del sistema usando i dati in cache -d 1 abilita DMA / 0 disabilita DMA -m abilita il Multi sector count, questa opzione permette il traferimento di più settori per volta (16/32) -c abilita il I/O support ( 0-16 bit / 1-32 bit / 3-32 bit con sync ) -u abilita Unmask IRQ ( 1 abilita ) -W abilitare la Write cache in scrittura (1 abilita)
Per maggiori info sui comandi consiglio la lettura di man hdparm
Si consiglia di fare un test come da esempio, un valore da 40 a 60 MB/sec dovrebbe essere nella media:
# hdparm -t /dev/sda /dev/hdd: Timing buffered disk reads: 184 MB in 3.02 seconds = 60.88 MB/sec
Dopo aver eseguito il test si possono cominciare a fare le modifiche necessarie e alla fine si ripete un'altra volta la prova per vedere se ci sono dei miglioramenti.
Per ottenere dei risultati affidabili, conviene eseguire questi test in una condizione di riposo del PC ovvero senza applicazioni funzionanti, altrimenti, possibili valori bassi potrebbero essere causati da HD che lavorano per fare altro.
Se i test dopo i cambiamenti hanno avuto successo, ricordatevi di salvarli nel file di configurazione, altrimenti verranno persi a ogni riavvio.
Il file di configurazione è /etc/hdparm.conf e io consiglio di inserire i vostri valori nella parte finale come da esempio
command_line { hdparm -q -m16 -q -W0 -q -d1 /dev/hda }
in questo modo avrete ad ogni riavvio i parametri da voi scelti
powertop
- Descrizione
PowerTOP è uno strumento che serve a scoprire che cosa sta usando risorse su un portatile.
PowerTOP Linux è uno strumento che trova il/i componente software/s che rendono il vostro computer portatile più esoso di risorse rispetto a quanto necessario mentre è inattivo. Dal kernel Linux versione 2.6.21, il kernel non ha più un timer tick fisso 1000Hz. Questo (in teoria) dovrebbe dare un enorme risparmio in quanto la potenza della CPU rimane in modalità a bassa potenza per periodi più lunghi di tempo durante il regime minimo.
Tuttavia ... ci sono molte cose che possono rovinare la festa, sia all'interno del kernel e in userspace. PowerTOP combina diverse fonti di informazioni da parte del kernel in uno schermo in modo conveniente che si può ben vedere cosa il sistema sta facendo, e quali componenti sono il problema più grande.
- Installazione
apt-get install powertop
- Utilizzo
Eseguire il comando powertop per maggiori info consultate il sito :Link PowerTop
latencytop
- Descrizione
L'audio che salta, server lenti, ognuno conosce i sintomi della latenza. Ma per sapere cosa c'è di nuovo nel sistema, ciò che sta causando la latenza, come risolvere il problema ... questa è una domanda difficile, senza buone risposte adesso.
LatencyTOP è un tool Linux per gli sviluppatori di software (sia del kernel e userspace), volto a individuare in quale parte del sistema e che tipo di operazione / azione provoca la latenza in modo che il codice può essere modificato per evitare la peggior latenza.
Ci sono molti tipi e cause di latenza. LatencyTOP si concentra sul tipo di latenza che provoca salti audio, scatti nel vostro DE o sovraccarichi del server.
LatencyTOP si concentra sui casi in cui l 'applicazioni desidera eseguire ed esegue codice utile, ma ci sono alcune risorse che attualmente non disponibili (e quindi il kernel blocchi il processo). Ciò avviene sia a livello di sistema e su un livello per ogni processo, in modo da poter vedere cosa succede al sistema, e quale processo soffre e / o causa ritardi.
- Installazione
apt-get install latencytop
- Utilizzo
eseguire il comando come root
# latencytop
In base ai dati forniti si potrà poi procedere nel tuning della nostra macchina seguendo le indicazioni.
- Note
Latencytop necessita che il kernel sia compilato con la seguente opzione
CONFIG_LATENCYTOP=y
# latencytop Error writing to /proc/sys/kernel/latencytop: No such file or directory Error writing to /proc/sys/kernel/latencytop: No such file or directory are you root? Please enable the CONFIG_LATENCYTOP configuration in your kernel. Exiting...
Per maggiori informazione consultare man latencytop.
bootchart
- Descrizione
bootchart è usato per processare il file di log creato da bootchartd (/var/log/bootchart.tgz di default).
bootchart costruisce l'albero dei processi e renderizza le perfonrmance come grafico in diversi formati.
Il grafico può essere poi analizzato per esaminare le dipendenze dei processi e in generale l'utilizzo delle risorse.
- Installazione
apt-get install bootchart
- Utilizzo
Occorre per prima cosa aggiungere questo comando /init=/sbin/bootchartd nel vostro file /boot/grub/menu.lst come da esempio
title Debian GNU/Linux, kernel 2.6.26-2-686 root (hd1,0) kernel /boot/vmlinuz-2.6.26-2-686 root=/dev/sdb1 ro init=/sbin/bootchartd initrd /boot/initrd.img-2.6.26-2-686
Attenzione perchè ad ogni aggiornamento di grub o del kernel l'opzione aggiunta verrà eliminata, perciò dovrete reinserirla se volete dei log aggiornati.
Ora occorre riavviare il sistema per poter creare il file di log necessario.
Al riavvio da shell spostiamoci dove vogliamo creare l'immagine, esempio:
cd /home/barabba/
e eseguiamo il comando
bootchart -f png
avremo se tutto va bene
Parsing /var/log/bootchart.tgz Wrote image: ./bootchart.png
possiamo ora andare nella cartella e con il nostro visualizzatore di immagini preferito visualizzare il nostro boot
Per maggiori informazioni
bootchart -h usage: bootchart [OPTION]... [FILE]... -f,--format image format (png | eps | svg; default: svg) -h,--help print this message -n,--no-prune do not prune the process tree -o,--output-dir output directory where images are stored (default: .) -v,--version print version and exit
riconoscimento HW
lshw
- Installazione
apt-get install lshw
- Descrizione
Un piccolo strumento per fornire informazioni dettagliate sulla configurazione hardware della macchina. Si possono creare report sulla configurazione di memoria, la versione del firmware, mainboard, la versione della CPU e la velocità, la cache di configurazione, la velocità di bus, ecc. sulla DMI-capable sistemi x86, su alcune macchine PowerPC e AMD64. Le informazioni possono avere un output in formato testo, HTML o XML.
Per i parametri usare lshw -h , oppure consultate man lshw
- Utilizzo
Eseguire da Shell come root il comando lshw, otterrete a monitor un listato del vostro hardware del quale ne posto una piccola parte
# lshw barabba description: Desktop Computer product: A7N8X-E vendor: ASUSTeK Computer INC. version: REV 2.xx serial: xxxxxxxxxxx width: 32 bits capabilities: smbios-2.2 dmi-2.2 smp configuration: boot=normal chassis=desktop *-core description: Motherboard product: A7N8X-E vendor: ASUSTeK Computer INC. physical id: 0 version: REV 2.xx serial: xxxxxxxxxxx slot: Serial Port 1 *-firmware description: BIOS vendor: Phoenix Technologies, LTD physical id: 0 version: ASUS A7N8X-E Deluxe ACPI BIOS Rev 1013 (11/12/2004) size: 64KiB capacity: 448KiB capabilities: pci pnp apm upgrade shadowing cdboot bootselect socketedrom edd int13floppy360 int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer int10video acpi usb agp ls120boot zipboot *-cpu description: CPU product: AMD Athlon(tm) XP 3000+ vendor: Advanced Micro Devices [AMD] physical id: 4 bus info: cpu@0 version: 6.10.0 slot: Socket A size: 2166MHz capacity: 3GHz width: 32 bits clock: 166MHz capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow up
lsusb
- Descrizione
lsusb è un programma di utilità per la visualizzazione di informazioni sui bus USB nel sistema e le periferiche ad esse connessi.
- Utilizzo
barabba:/etc# lsusb Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 003: ID 046d:092f Logitech, Inc. QuickCam Express Plus Bus 002 Device 002: ID 046d:c00e Logitech, Inc. M-BJ58/M-BJ69 Optical Wheel Mouse Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 004: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
pciutils
- Descrizione
I PCI Utilities sono una collezione di programmi per il controllo e la manipolazione di configurazione di periferiche PCI, tutti sulla base di una common portable library libpci che offre l'accesso allo spazio di configurazione PCI su una varietà di sistemi operativi.
I servizi di pubblica utilità comprendono: (vedi le pagine di manuale per maggiori dettagli)
- lspci
visualizza informazioni dettagliate su tutti i bus PCI e dispositivi del sistema
- setpci
permette la lettura e la scrittura di configurazione della periferica PCI registri. Ad esempio, è possibile regolare la latenza timer con esso.
- Installazione
apt-get install pciutils
- Utilizzo
Eseguito da root questo è il mio output
barabba:/etc# lspci 00:00.0 Host bridge: nVidia Corporation nForce2 IGP2 (rev c1) 00:00.1 RAM memory: nVidia Corporation nForce2 Memory Controller 1 (rev c1) 00:00.2 RAM memory: nVidia Corporation nForce2 Memory Controller 4 (rev c1) 00:00.3 RAM memory: nVidia Corporation nForce2 Memory Controller 3 (rev c1) 00:00.4 RAM memory: nVidia Corporation nForce2 Memory Controller 2 (rev c1) 00:00.5 RAM memory: nVidia Corporation nForce2 Memory Controller 5 (rev c1) 00:01.0 ISA bridge: nVidia Corporation nForce2 ISA Bridge (rev a4) 00:01.1 SMBus: nVidia Corporation nForce2 SMBus (MCP) (rev a2) 00:02.0 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4) 00:02.1 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4) 00:02.2 USB Controller: nVidia Corporation nForce2 USB Controller (rev a4) 00:04.0 Ethernet controller: nVidia Corporation nForce2 Ethernet Controller (rev a1) 00:08.0 PCI bridge: nVidia Corporation nForce2 External PCI Bridge (rev a3) 00:09.0 IDE interface: nVidia Corporation nForce2 IDE (rev a2) 00:0d.0 FireWire (IEEE 1394): nVidia Corporation nForce2 FireWire (IEEE 1394) Controller (rev a3) 00:1e.0 PCI bridge: nVidia Corporation nForce2 AGP (rev c1) 01:04.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 13) 01:08.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 08) 01:08.1 Input device controller: Creative Labs SB Live! Game Port (rev 08) 01:0b.0 RAID bus controller: Silicon Image, Inc. SiI 3112 [SATALink/SATARaid] Serial ATA Controller (rev 02) 03:00.0 VGA compatible controller: nVidia Corporation G73 [GeForce 7600 GS] (rev a2)
Processi attivi
Visualizzare i processi attivi da terminale
top
- Descrizione
top fa parte dei Linux Command Library e offre la possibilità di vedere in tempo reale le attività dei processi. Visualizza una lista dei tasks con maggior uso della CPU del sistema, ed è in grado di fornire un'interfaccia interattiva per manipolare i processi. E' possibile ordinare i compiti da parte della CPU, la memoria e l'uso di runtime.
Per maggiori informazioni sulle funzioni del comando
man top
- Utilizzo
Dal vostro terminale preferito digitate
$top top - 00:16:41 up 2:52, 1 user, load average: 0.30, 0.30, 0.28 Tasks: 111 total, 2 running, 109 sleeping, 0 stopped, 0 zombie Cpu(s): 16.4%us, 5.6%sy, 0.0%ni, 76.7%id, 0.3%wa, 1.0%hi, 0.0%si, 0.0%st Mem: 2076452k total, 1768308k used, 308144k free, 52692k buffers Swap: 1951888k total, 0k used, 1951888k free, 1131424k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3054 root 20 0 123m 61m 9540 S 7.6 3.0 6:33.32 Xorg 3712 ettore 20 0 317m 114m 33m S 7.6 5.7 17:01.97 firefox-bin 3241 ettore 20 0 30596 11m 8808 S 2.6 0.6 0:04.50 kwin 3485 ettore 20 0 173m 59m 30m S 2.6 2.9 3:38.31 amarokapp 5025 ettore 20 0 104m 34m 18m S 1.6 1.7 3:00.43 amule 3245 ettore 20 0 37100 17m 13m S 1.3 0.9 0:08.64 kicker 14524 ettore 20 0 184m 170m 13m S 1.3 8.4 0:09.14 kpackage 3652 ettore 20 0 32864 15m 11m R 0.7 0.8 0:04.18 konsole 25364 ettore 20 0 49944 28m 19m S 0.7 1.4 0:03.60 konqueror 4819 ettore 20 0 56576 22m 12m S 0.3 1.1 0:34.10 mobloquer 1 root 20 0 2128 720 632 S 0.0 0.0 0:01.48 init 2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 15 -5 0 0 0 S 0.0 0.0 0:00.68 ksoftirqd/0 5 root RT -5 0 0 0 S 0.0 0.0 0:00.02 watchdog/0 6 root 15 -5 0 0 0 S 0.0 0.0 0:00.54 events/0 7 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khelper 39 root 15 -5 0 0 0 S 0.0 0.0 0:00.18 kblockd/0 41 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpid 42 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 148 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kseriod 185 root 20 0 0 0 0 S 0.0 0.0 0:00.16 pdflush 186 root 20 0 0 0 0 S 0.0 0.0 0:00.32 pdflush 187 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kswapd0 188 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 aio/0 667 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd 668 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khubd 701 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ata/0 702 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ata_aux 705 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khpsbpkt 824 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 knodemgrd_0 825 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0 826 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_1 1066 root 15 -5 0 0 0 S 0.0 0.0 0:00.82 kjournald 1160 root 16 -4 3236 1812 496 S 0.0 0.1 0:00.38 udevd 1793 root 15 -5 0 0 0 S 0.0 0.0 0:00.02 kgameportd 2182 root 15 -5 0 0 0 S 0.0 0.0 0:01.14 kjournald
System monitor con GUI
diversi programmi utili
conky
- Sito ufficiale
- Descrizione
Conky è un monitor di sistema per X basato sul codice torsmo. Fin dalla sua concezione originaria, Conky ha cambiato un po' dal suo predecessore. Conky può visualizzare praticamente qualsiasi cosa, sia di root sul vostro desktop o nella propria finestra. Conky ha molti oggetti built-in, così come la capacità di eseguire i programmi e gli script, quindi visualizzare l'output di stdout.
- Installazione
apt-get install conky
- Utilizzo
Il file di configurazione di conky va creato, per maggiori informazioni consultate il sito ufficiale, oppure trovate degli esempi da poter scaricare qui
Il file .conkyrc va inserito all'interno della nostra cartella utente nella home
$touch /home/barabba/.conkyrc
questo è il mio
e questo è il mio file di configurazione, gentilmente passatomi da oTTony che poi ho modificato nei punti di mount e qualche altro piccolo dettaglio:
# set to yes if you want Conky to be forked in the background
background yes
cpu_avg_samples 1
net_avg_samples 1
out_to_console no
# X font when Xft is disabled, you can pick one with program xfontsel
#font 7x12
#font 6x10
font 7x13
#font 8x13
#font 7x12
#font *mintsmild.se*
#font -*-*-*-*-*-*-34-*-*-*-*-*-*-*
#font -artwiz-snap-normal-r-normal-*-*-100-*-*-p-*-iso8859-1
# Use Xft?
use_xft yes
# Xft font when Xft is enabled
xftfont monospace-8
own_window_transparent no
own_window_colour hotpink
# Text alpha when using Xft
xftalpha 0.8
on_bottom yes
# mail spool
mail_spool $MAIL
# Update interval in seconds
update_interval 5
# Create own window instead of using desktop (required in nautilus)
own_window no
# Use double buffering (reduces flicker, may not work for everyone)
double_buffer no
# Minimum size of text area
minimum_size 5 5
#maximum_width 150
- Draw shades?
draw_shades no
# Draw outlines?
draw_outline no
# Draw borders around text
draw_borders yes
# Stippled borders?
stippled_borders 0
# border margins
border_margin 1
# border width
border_width 2
# Default colors and also border colors
default_color 3bb5f4
default_shade_color 3bb5f4
default_outline_color 3bb5f4
# Text alignment, other possible values are commented
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right
# Gap between borders of screen and text
gap_x 5
Corsivo
gap_y 260
# Add spaces to keep things from moving about? This only affects certain objects.
use_spacer yes
# Subtract file system buffers from used memory?
no_buffers yes
# set to yes if you want all text to be in uppercase
uppercase no
### stuff after 'TEXT' will be formatted on screen####
TEXT
${color white}[${color #3bb5f4}Marco${color white}][${color red}$nodename${color white}] -
${color yellow}$sysname $kernel ${color #CCCCCC}on ${color #3bb5f4}$machine
${color #3bb5f4}Uptime: ${color yellow}$uptime
${color white}${time %b/%a/%d} ${color white}${time %k:%M:%S}
${color #3bb5f4}${hr 2}
${color #3bb5f4}-Monitors-
${color #3bb5f4}Carico Cpu: ${color red}${cpu}${color white}% ${color #3bb5f4}Frequenza CPU${color green} ${freq 1} ${color white}MegaHz
${color #3bb5f4}${cpugraph 25 ff0000 ff00ff}
${color #3bb5f4}Ram : ${color red}$mem${color white}/${color yellow}$memmax ${color white}- ${color red}$memperc ${color white}%
${color #3bb5f4}Swap: ${color red}$swap${color white}/${color yellow}$swapmax ${color white}- ${color red}$swapperc ${color white}%
${color #3bb5f4}Processi: ${color #CCCCCC}$processes ${color #3bb5f4}Attivi: ${color #CCCCCC}$running_processes
${color #3bb5f4}${hr 2}
${color #3bb5f4}Net:${color yellow}eth0-
${color #3bb5f4}DOWN: ${color blue}${downspeed eth0} ${color white}k/s ${color #3bb5f4}UP: ${color red}${upspeed eth0} ${color white} k/s
${color #3bb5f4}${downspeedgraph eth0 25,100 ff0000 0000ff 128} ${color #3bb5f4}${upspeedgraph eth0 25,100 0000ff ff0000 128}
${color #3bb5f4}TOTAL: ${color yellow}${totaldown eth0} ${color #3bb5f4}TOTAL: ${color yellow}${totalup eth0}
${color #3bb5f4}${hr 2}
${color #3bb5f4}Spazio-${color red}Occupato${color #3bb5f4}-${color white}Totale${color #3bb5f4}-${color green}Libero-
${color #3bb5f4}root : ${color red}${fs_used /}${color #3bb5f4}/${color white}${fs_size /} ${color #3bb5f4}(${color green}${fs_free /} ${fs_free_perc /}% ${color yellow} free${color #3bb5f4})
${color #3bb5f4}${fs_bar /}
${color #3bb5f4}Home : ${color red}${fs_used /home/server}/${color #3bb5f4}/${color white}${fs_size /home/server} ${color #3bb5f4}(${color green}${fs_free /home/server} ${fs_free_perc /home/server}% ${color yellow} free${color #3bb5f4})
${color #3bb5f4}${fs_bar /home/server}
${color #3bb5f4}Magazzino: ${color red}${fs_used /mnt/magazzino}${color #3bb5f4}/${color white}${fs_size /mnt/magazzino} ${color #3bb5f4}(${color green}${fs_free /mnt/magazzino} ${fs_free_perc /mnt/magazzino}% ${color yellow} free${color #3bb5f4})
${color #3bb5f4}${fs_bar /mnt/magazzino}
${color #3bb5f4}Remove : ${color red}${fs_used /mnt/remove}${color #3bb5f4}/${color white}${fs_size /mnt/remove} ${color #3bb5f4}(${color green}${fs_free /mnt/remove} ${fs_free_perc /mnt/remove}% ${color yellow} free${color #3bb5f4})
${color #3bb5f4}${fs_bar /mnt/remove}
${color #3bb5f4}Back : ${color red}${fs_used /mnt/back}${color #3bb5f4}/${color white}${fs_size /mnt/back} ${color #3bb5f4}(${color green}${fs_free /mnt/back} ${fs_free_perc /mnt/back}% ${color yellow} free${color #3bb5f4})
${color #3bb5f4}${fs_bar /mnt/back}
${color yellow}Unread Mail${color red} ${imap_unseen 192.168.0.25 username@mydomain.it password [-i 3] [-p 143]}
superkaramba
- Descrizione
SuperKaramba è, in termini semplici, uno strumento che ti permette di creare facilmente eye-candy interattivi sul tuo desktop KDE. Attualmente, solo linux è ufficialmente supportato.
SuperKaramba è uno strumento basato su karamba che permette a chiunque di creare e gestire facilmente piccoli widget interattivi su un desktop KDE. I widget sono definiti in un semplice file di testo che può essere aumentato con codice Python per renderli interattivi. Qui sono solo alcuni esempi di ciò che si può fare:
- Mostra le informazioni di sistema come CPU, la riproduzione di MP3, ecc
- Crea barre degli strumenti personalizzate che lavorano in ogni modo immaginabile.
- Creazione di piccoli giochi virtuali o animali che vivono sul tuo desktop.
- Mostra le informazioni da Internet, come il meteo e headlines.
Questo pacchetto è parte di KDE, come una componente del modulo KDE utilità.
Come consigliato nel sito ufficiale, per poter scaricare nuovi temi dovete andare a cercarli su kde-look.org , qui potrete trovare di tutto, dalle GUI per visualizzare le risorse a dock-bar.
- Installare Superkaramba
apt-get install superkaramba
- Utilizzo
Eseguire il comando
superkaramba
da terminale, oppure usando la combinazione di fasti alt+F2 o dal menu di KDE Accessori>Desktop>Superkarmba
Vi troverete l'interfaccia che vi permette di optare tra 2 soluzioni
- Scarica novità - per scaricare un tema a scelta dal browser interno
- Apri tema locale - per eseguire un tema già presente sulla vostra macchina
Io ho optato per la seconda scelta perché mi è venuto più comodo per gestire le modifiche al tema.
Una volta scaricato il tema da kde-look.org, scompattate il file in una cartella e grazie alla seconda opzione apritelo.
Se volete modificarlo, aprite con un editor di testo i file .theme, in questo caso io uso l'editor interno di MC.
Fate attenzione perché alcuni temi piuttosto complessi e/o con diverse funzioni, avranno più file .theme richiamati da un file principale .
Come esempio vi lascio Superkaramba sul mio notebook, come vedete ho un widget per il segnale della rete wi-fi e una GUI per vedere un pò tutto del sistema, dalle temperature all'uso della CPU, dal traffico di rete alla capacità degli HD, qui potete sbizzarrirvi come volete.
Da notare che sul notebook con i driver ATI funziona senza problemi occupando pochissime risorse, mentre su un' altro PC con driver NVidia ho notato alcuni rallentamenti nella ripresa da risparmio energetico.
gkrellm
- Descrizione
GKrellM (GNU Krell Monitors) è un programma di system monitors basato sul toolkit GTK+. Può essere usato per monitorare lo stato della CPU, della memoria, l'hard disk, le interfacce di rete, lo stato di caselle di posta elettronica locali e remote, e moltre altre cose. Sono disponibili plugin per molte funzioni, ad esempio per controllare l'XMMS media player o un client SETI@home. GKrellM è molto diffuso fra utenti Linux e sistemi operativi unix-like in generale.
- Installazione
apt-get install gkrellm
Lista plugins da repository
gkrellm-alltraxclock - analog clock plugin for GKrellM gkrellm-bfm - system load plugin for gkrellm with a duck gkrellm-hdplop - A hard drive activity monitor GKrellM plugin gkrellm-i8k - Dell Inspiron and Latitude module for GKrellM2 (i8krellm) gkrellm-ibam - Advanced battery monitor for laptops - gkrellm plugin gkrellm-leds - Keyboard LED monitor for GKrellM gkrellm-mailwatch - GKrellM plugin to watch mailboxes in multiple panels gkrellm-mldonkey - mldonkey plugin for gkrellm2 gkrellm-radio - FM radio tuner for GKrellM gkrellm-reminder - useful reminder plugin for gkrellm gkrellm-snmp - snmp plug-in for GKrellM gkrellm-thinkbat - ThinkPad laptops battery status indicator for GKrellM gkrellm-volume - A mixer plugin for GKrellM gkrellm-x86info - gkrellm plugin displaying the current processor speed gkrellm-xkb - Keyboard layout indicator plugin for GKrellM gkrellmd - GNU Krell Monitors Server gkrellmitime - Internet time plugin for gkrellm gkrellmoon - Gkrellm Moon Clock Plugin gkrellmss - Plugin for GKrellM that has a VU meter and a chart gkrellmwho2 - who plugin for gkrellm2 gkrellmwireless - 802.11 wireless link monitor plugin for GKrellM
lista dei plugin dal sito ufficiale
Per la visualizzazione dei sensori necessita del pacchetto lm-sensors
- Utilizzo
Eseguire gkrellm dal menu del vostro DE oppure crtl+F2 e scrivere gkrellm
Esempio :
ksensors
- Descrizione
Questa è un'interfaccia per KDE a lm-sensors per controllare la scheda madre. Permette di accedere ad informazioni come la temperatura e la velocità delle ventole.
Sono richiesti i moduli lm-sensors nel kernel per usare questo pacchetto.
- installazione
apt-get install lm-sensors ksensors
- Utilizzo
Questo da buon utente KDE che sono io è il mio strumento preferito, come potete notare lo tengo sempre nella tray-bar, lì è possibile selezionare quanti e quali sensori mettere in evidenza. A me interessa sapere solo la temperatura del processore dato che controllo la velocità della ventola manualmente con un regolatore sul case.
Nell'esempio sotto potete vedere anche la finestra di configurazione che si ottiene clickando con il pulsante destro sull'icona nella tray-bar.
- Esempio
gnome applet
- Descrizione
Fanno parte del DE Gnome
- Utilizzo
Basta aggiungere alla nostra barra superiore il monitor di sistema e da li poi abilitare ciò che ci interessa
riconoscimento hardware
lshw-gtk
- Descrizione
lshw-gtk è la GUI di lshw
- Installazione
apt-get install lshw-gtk
- Utilizzo
Eseguire come root il comando lshw-gtk
hardinfo
- Descrizione
Hardinfo mostra informazioni sul sistema, è una piccola applicazione che mostra informazioni sull'hardware e sul sistema operativo. Attualmente riconosce dispositivi PCI, ISA PnP, USB, IDE, SCSI, seriali e su porta parallela.
- Installazione
apt-get install hardinfo
- Utilizzo
Eseguite il comando e vi si aprirà l'interfaccia del programma, molto semplice e intuitiva, da qui potrete ricavare molte informazioni utili senza dover smanettare con la console per caricare tutti i comandi, offre anche dei benchmark e un report.
Processi attivi
KSysGuard
- Descrizione
Specifico per KDE, lo potete trovare nel Kmenù in >sistema>ksysguard o molto più semplicemente, premere ctrl+esc , comodissimo per terminare applicazioni bloccate.
htop
- Descrizione
htop è un visualizzatore interattivo di processi per Linux. Si tratta di una applicazione in modalità testo (console o per terminali X) e richiede ncurses. Testato con Linux 2.4 e 2.6. Htop e possibile lanciarlo anche fuori da shell con alt+F2 , per terminare F10.
Dalla versione 0.81 e possibile inserire anche lo stato di carica della batteria , in uno dei 2 task sulla parte superiore. Usare F2 per il setup e la configurazione .
Questa utility dà un listato dei processi attivi con i relativi valori di
PID
user
risorse memoria e virtuale
risorse CPU
- Installazione
apt-get install htop
Note & Considerazioni
Gli strumenti che offre Gnu/Linux per controllare la vostra macchina sotto il profilo Hardware e Software, come potete vedere sono tantissimi.
Dovete considerare che questa piccola carrellata ne rappresenta una parte, ho voluto solo elencare alcuni dei tools tra quelli che conosco e tra quelli che sono riuscito a raccogliere spulciando nel forum.
Cercate di usarli anche per individuare problemi, o per cercare di migliorare le prestazioni della vostra macchina.
Per terminare volevo lasciare un comando derivato da uno strano pacchetto segnalato da Borlongioffei
vrms
- Descrizione
Richard M. Stallman virtuale
Il programma vrms analizza i pacchetti attualmente installati su un sistema Debian GNU/Linux e riporta tutti i pacchetti delle sezioni non-free e contrib che sono installati.
In alcuni casi, le opinioni di Richard M. Stallman e del progetto Debian si sono allontanate le une delle altre dopo che questo programma è stato scritto. In questi casi, il programma segue le Debian Free Software Guidelines.
Notare che vrms non è limitato ai soli sistemi Debian (questo vuol dire che funziona anche sulle distribuzioni che derivano da Debian come Ubuntu); non è nemmeno limitato ai sistemi basati su Linux.
Le versioni future di vrms includeranno un'opzione per visualizzare anche del testo dagli articoli pubblici di RMS e altri, che spiegano perché l'uso di ciascuno dei pacchetti non-free installati può causare controversie morali per qualche membro della comunità del Software Libero. Questa funzionalità non è ancora inclusa.
- Installazione
apt-get install vrms
- Utilizzo
Basta eseguire dalla Shell come utente il comando vrms. Per maggiori informazioni vrms -h. Esempio:
$ vrms Non-free packages installed on barabba googleearth Google Earth, a 3D map/planet viewer lha lzh archiver Reason: No modifications allowed, non-network distributions problematic opera The Opera Web Browser p7zip-rar non-free rar module for p7zip rar Archiver for .rar files sun-j2re1.6 Java(TM) JRE, Standard Edition, Sun Microsystems(TM) unrar Unarchiver for .rar files (non-free version) Reason: Modifications problematic
Contrib packages installed on barabba googleearth-package utility to automatically build a Debian package of Goo java-package utility for building Java(TM) 2 related Debian package msttcorefonts transitional dummy package ttf-mscorefonts-installer Installer for Microsoft TrueType core fonts 7 non-free packages, 0.3% of 2152 installed packages. 4 contrib packages, 0.2% of 2152 installed packages.
Lo so di non essere del tutto free, ho fatto il possibile, ma ora controllate anche voi quanto siete free.
LinuxLogo
- Descrizione
Come strumento fornisce alcuni dati come kernel , processore , memoria e bogomips.
Per chi non sapesse cosa sono i bogomips , riporto il testo di wikipedia che mi pare più chiaro di una mia spiegazione :
BogoMips (dai termini bogus dal significato di fasullo, inutile, e MIPS, million instructions per second) è un indice informale delle prestazioni di una CPU, ideato da Linus Torvalds e calcolato dal Kernel Linux durante la fase di boot,con lo scopo di calibrare i loop di temporizzazione interni (busy-loop). Per il calcolo, viene eseguito un ciclo di istruzioni predefinito misurando il tempo impiegato per eseguirlo. Spesso è goliardicamente definita come «milioni di volte per secondo in cui un processore può non fare assolutamente nulla». Torvalds ha coniato quest'accezione ironica per sottolineare l'inutilità, come indice assoluto di riferimento, del calcolo dei MIPS per i differenti sistemi. Il valore calcolato per il proprio sistema viene mostrato a video durante le prime fasi di avvio del kernel. Il valore viene memorizzato nel file cpuinfo, parte dello pseudo-filesystem procfs e può essere richiamato aprendo in lettura il file, situato in /proc.
- Installazione
apt-get install linuxlogo
- Utilizzo
Come utente eseguire il comando
$linux_logo
l'output sarà simile a questo sotto riportato , per maggiorni info linux_logo -h