salta alla navigazione

Monitorare il nostro hardware con Conky 13 gennaio 2007 - 13:47

Inviato da Antonio De Luci (imu) in : Guide, Linux, O.S. Revolution, Tips , trackback
Articolo scritto da viger

Image Hosted by ImageShack.us

Realizzato da: viger
v.1.0 – 20 Ottobre 2006 – Aggiornamento 7 settembre 2007

Ieri(20.10.2006) mi sono deciso a provare Zenwalk, una distribuzione slack-based, l’installazione è stata davvero veloce, ho anche colto l’occasione per provare il file system “xfs”. Finita l’installazione e la configurazione base, molto comoda e chiara (in inglese), ho compilato il kernel per ottimizzarlo e adattarlo alle esigenze mie e del PC(operazione non obbligatoria), dopo sono passato all’installazione dei nuovi driver “nvidia” in versione Beta.

Quindi, arrivato al momento della personalizzazione dell’ambiente di “lavoro”, ho iniziato con l’installazione di un monitor di sistema leggero e funzionale, cioè “Conky”

un fork del progetto Torsmo, che mi da informazioni sull’uso di spazio nelle partizioni, hard disk, processi, cpu ram e tanto altro.

Prima di iniziare leggete la liberatoria a fine guida, grazie.

1. Conky

Partiamo da Conky, per gli utenti di Zenwalk:

netpkg conky ('netpkg' si occuperà delle dipendenze)

Verrà scaricata la versione 1.4.2 (ad oggi la più recente). Per gli utenti slackware http://www.slacky.it o http://www.linuxpackages.net.

appena finito, scaricate un file di configurazione da:
http://conky.sourceforge.net/screenshots.html
(sono dei file di testo, che con un pò di pazienza potete personalizzare)
E copiatelo nella vostra home (/home/cicciotux/), e non sul desktop ;) .

Oppure una configurazione basica che sta fra le doc di conky, proprio nel vostro PC, pronta per essere utilizzata:

gunzip -c /usr/share/doc/conky-1.4.2/conkyrc.sample > ~/.conkyrc

Ripeto, questo file verrà copiato nella vostra home, il punto davanti al nome lo rende invisibile alla normale navigazione della direcory, infatti vengono comunemente chiamati «file nascosti», e come il 99% dei file di configurazione presenti su linux, è un semplice file di testo che può essere modificato con un qualsiasi editor, e vi ricordo di fare sempre il backup del file che andate a modificare.

Per lanciate conky da gnome o xfce usate la combinazione di tasti “Alt(+)F2″, scrivete conky nella finestra di dialogo e .
Se volete far partire conky ad ogni avvio di xfce andate in:
Desktop Menu > Settings > Autostarted Applications > “Aggiungi” .

Per chi vuole compilare Conky.
Da user:

./configure --prefix=/usr --enable-xft --enable-mpd --enable-seti--enable-double-buffer --enable-own-window --enable-proc-uptime && make

da root:

make install

oppure

checkinstallinstallpkg conky-1.4.2-1.tgz

Per gli utenti Debian:

#apt-get install conky

Dipendenze:
glibc-solibs
x11

2. lm_sensors

Per rendere completo conky ho scaricato lm_sensors, mi serve per il rilevamento delle temperature di cpu e scheda madre, e da informazioni anche sulle ventole, e hddtemp che serve per il rilevamento delle temperature sugli hard disk, ecco lo screenshot del mio conky. Per chi vuole, vanno bene anche i tgz per slack.
C’è da precisare che servono i “sources” del kernel, installati, per cui:

netpkg kernel-source

(per slackware leggete qui http://www.viger.altervista.org/guide/nvidia.html)

Per gli utenti Debian:

apt-get install linux-headers

Ci servono i sorci nel caso, quasi sicuro, dobbiamo andare a caricare dei moduli di supporto, per poter usare i sensori.

Scarichiamo lm_sensors:

wget http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-2.10.1.tar.gz

(Se si sta usando un kernel 2.4 va scaricata anche la patch per il supporto i2c da http://www.lm-sensors.org/wiki/Download – ripeto, solo per il kernel 2.4.XX)

Scompattiamo:

tar zxvf lm_sensors-2.10.1.tar.gz

Entriamo nella directory dove andremo a compilare i sorgente:

cd lm_sensors-2.10.1

da user dare il comando:

make user

Se la compilazione non restituisce errori, da root:

su - (date la password di root)make user_install

Urge fare una precisazione, visto che sono nati già dei malintesi dopo nemmeno 10 minuti che ho messo on-line la guida, nei comandi ‘make user’ e ‘make user_install’, il termine “user” non
sta richiedendo il vostro user che usate sul pc, ma dovete semplicemente digitare letteralmente *user* o *user_install*

Per gli utenti Debian:

#apt-get install lm-sensors

Dipendenze:
perl

Potete usare un precompilato per slackware oppure il mio precompilato per Zenwalk.

Adesso andiamo a configurare lm_sensors:

sensors-detect

diamo invio ogni volta che ci pone delle domande, quindi confermando la risposta di default, alla fine del suo lavoro ci dirà i moduli che devono essere caricarti, e se confermare la configurazione, quindi digitate ‘yes’.
Il programma ha restituito un output simile a questo:

To make the sensors modules behave correctly, add these lines to/etc/modules.conf:

#----cut here----
# I2C module options
alias char-major-89 i2c-dev

#----cut here----To load everything that is needed, add this to some /etc/rc* file:
#----cut here----
# I2C adapter drivers
modprobe i2c-isa
# I2C chip drivers
modprobe via686a
# sleep 2 # optional

/usr/local/bin/sensors -s # recommended

#----cut here----

Nel caso di Zenwalk aggiungiamo i moduli in /etc/rc.d/rc.modules a fine file:

modprobe i2c-isamodprobe via686a

(Adesso ad ogni avvio del pc verranno caricati automaticamente)

Torniano alla linea di comando, e da root digitiamo:

modprobe i2c-isa && modprobe via686a

Mentre in un sistema Debian dobbiamo caricare i moduli:

modprobe i2c-isamodprobe via686a

E aggiornare il file che si occupa dei i moduli al boot del sistema:

update-modules

dopo, da root:

sensors -s

Ok, da adesso digitando il comando ’sensors’ possiamo visualizzare i dati sullo stato del nostro hardware.

3. hddtemp

Passiamo ad occuparci di hddtemp, scaricatelo:

wget http://www.guzu.net/files/hddtemp-0.3-beta15.tar.bz2

Scompattiamo:

tar jxvf hddtemp-0.3-beta15.tar.bz2

entriamo nella dir e compiliamo (da user normale):

cd hddtemp-0.3-beta15./configure --prefix=/usr && make

Dipendenze:
glibc-solibs
perl

Installiamo, da root:

make install

Oppure, se vogliamo un pacchetto .tgz:

checkinstall (un comodo tool testuale per ottenere .tgz, .rpm e .deb)installpkg hddtemp-0.3-beta15-i386-1.tgz

Per gli utenti Debian:

#apt-get install hddtemp

Adesso, per poter verificare le temperature anche da utente, e non solo da root:

chmod u+s /usr/sbin/hddtempln -s /usr/sbin/hddtemp /usr/bin/

Per gli utenti debian il discorso è diverso, vi viene chiesto in fase di installazione del pacchetto hddtemp se volete suidare hddtemp, così da renderlo accessibile anche all’user, e se volete il demone attivo in background, rispondete affermativamente ad entrambe le domande.

A questo punto, solo per gli utenti di zenwalk e slack, dobbiamo anche scaricare il database dei drive supportati:

wget http://www.guzu.net/linux/hddtemp.db

e copiatelo, da root, con:

cp hddtemp.db /usr/share/misc/

hddtemp andrà a cercare il database in quella path di default, se dovete, o volete, mettere il file altrove, ad esempio in /etc, deve essere specificato durante la compilazione di hddtemp con:

./configure --with-db-path=/etc/hddtemp.db --prefix=/usr

Ed ora, finalmente, vediamo se funziona:

hddtemp -d /dev/hda

ottenendo qualcosa di simile:

viger[~]$ hddtemp /dev/hda/dev/hda: WDC WD800JB-00JJA0: 38°C

Se invece, volete installare hddtemp con un solo comando ed ottenere lo stesso risultato scaricate il mio precompilato per zenwalk da qui.

E date il comando(da root):

installpkg hddtemp-0.3-beta15-i486-1Z_viger.tgz

Ci tengo a precisare che i precompilati di hddtemp che trovate in rete, non “risolvono” il problema dei permessi per l’user, il mio si.

4. .conkyrc

Andiamo ad editare il file di configurazione(che abbiamo nella nostra home) di Conky per goderci tutto il lavoro fatto fino ad ora.

$VOSTRO_EDITOR_PREFERITO ~/.conkyrc

Le righe che dovete inserire nel file .conkrc:

$hr${color slate grey}TEMPERATURE(°C):

${color slate grey} CPU : ${color #ddaa00}${i2c 9191-0290 temp 2}
${color slate grey} MB  : ${color #ddaa00}${i2c 9191-0290 temp 1}
${color slate grey} Case: ${color #ddaa00}${i2c 9191-0290 temp 3}
${color slate grey} HD1 : ${color #ddaa00}${execi 30 hddtemp -n /dev/hda}
${color slate grey} HD2 : ${color #ddaa00}${execi 30 hddtemp -n /dev/hdb}
${color slate grey}VENTOLE(RPM):
${color slate grey} CPU: ${color #ddaa00}${i2c 9191-0290 fan 1}
${color slate grey} CSM: ${color #ddaa00}${i2c 9191-0290 fan 3} ${color }
$hr

(Quanto vi ho indicato l’ho preso dal mio .conkyrc, ovviamente non si adatta a tutti i PC ed i sistemi, dovete sperimentare e cercare la soluzione adatta a voi, per cui RTFM. Le righe per le temperature vanno inserite dopo “tag” TEXT)

Ecco il risultato finale, uno screenshot della mia debian, e una zoommata su conky in questa immagine.

-Viger

NOTE:

*06.12.2006
Nei giorni scorsi mi è stato chiesto aiuto per risolvere un problema di “sfarfallio” di conky durante i sui refresh, personalmente uso lo stesso xorg.conf da oltre un anno(quello che uso su zenwalk), e non ho capito subito l’ingrippo, ma installando conky su debian, dove non ho riutilizzato il vecchio backup, sono incappato nello stesso problema, mi è bastato lanciare conky da un terminale per verificare il nocciolo della questione, non riusciva a lavorare sul *double buffer*, semplicemente perché ho dimenticato di aggiungere i moduli, sul mio xorg.conf, che normalmente mi servono.

Nella sostanza basta modificare il nostro xorg.conf (che trovate in /etc/X11/), da root ovviamente.

Facciamo il backup del file che andiamo a “smanazzare”:

cp /etc/X11/xorg.conf /etc/X11/xorg.conf_OLD

Ed aprite il file con:

vim /etc/X11/xorg.conf

Potete usare qualsiasi editor di testi, forse il più semplice da usare è nano, io preferisco vim.
Ora, cercate la Section “Module”, e aggiungete la riga:

Load "dbe" # Abilitiamo il double buffer.

Dopo, da user(quindi non da root), andate a modificare, con il vostro editor preferito, il file “.conkyrc” che trovate nella vostra home, ed aggiungete:

# Abilita il double bufferdouble_buffer yes

*06.12.2006
La stessa persona mi ha fatto notare un problema con XFCE (ma capita con tutti i DE “evoluti”) che utilizza le icone sul desktop, nella pratica, conky, va a coprire le icone presenti sul desktop, questo accade perché “conky” viene configurato male, e qui la questione è più complicata (non basta solo caircare lo sfondo usando ‘Esetroot’, che ci permette di avere un conky anche senza sfondo e con la trasparenza), perché dobbiamo dargli dei parametri in più sulla superficie del desktop che *può* usare, chi programma in “html” lo capirà subito, per chi è a digiuno di programmazione diventa duretta, quindi vi mostro le righe che riguardano il mio “.conkyrc” che uso per i test:

# Per eliminare il problema delle "icone"minimum_size 80 15 # 80 indica la larghezza min. della colonna,
# e che normalmente contiene il testo
# 15 è la distanza dal magine (minimo)
# del desktop.
maximum_width 90 # 90 è la larghezza massima.
# Impostazioni BASE che VANNO aggiunte o modifite
# Alcune sono opzionali, insomma sperimentate
draw_borders no
own_window yes
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_page
own_window_type normal
draw_shades no
draw_outline no
# Fine imp. base

http://www.viger.altervista.org — vigtux@yahoo.it
############################################

Links:

conky.sourceforge.net

lm-sensors.org

guzu.net

linuxpackages.net

-Database per hddtemp:

hddtemp.db

#######################

Liberatoria

Il seguente documento è offerto in buona fede comprendendo solo programmi e procedure sicure. L’autore non accetta nessuna responsabilità per qualsiasi perdita o danno causato in qualunque modo, a qualsiasi persona o cosa, come conseguenza diretta o indiretta del seguire le istruzioni date.

Commenti»

nessun commento ancora - vuoi essere il primo?