|
Dimensione: 19927
Commento: aggiunto metodo controllo ventole
|
Dimensione: 19926
Commento:
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 5: | Linea 5: |
| = Installazione del programma = | = Installazione del programma = |
IndiceBRTableOfContents |
[http://www.lm-sensors.org/ Lm-sensors] è un'utility che ci permette di conoscere i voltaggi e le temperature dei componenti interni del nostro pc, oltre alla velocità ed alla regolazione della velocità delle ventole. Queste informazioni, oltre che utili per conoscere lo stato di salute del nostro sistema, sono fondamentali quando si fa uso di overclocking (potendo monitorare le temperature) e quando si vuole ottenere un pc silenzioso e ben areato (grazie al controllo dell ventole)
Installazione del programma
L'installazione di lm-sensors è molto semplice e non richiede alcun prerequisito se non quello di abilitare i repository universe e multiverse, che daremo per scontato. Dunque per procedere all'installazione dell'engine, ci basterà aprire un terminale e digitare
sudo apt-get install lm-sensors
Creazione delle devices e rilevazione dei sensorsi
I sensori vengono rilevati a partire da devices che saranno create fisicamente (quando mancanti) nella nostra cartella /dev.
Creazione delle devices
Per avere tutti i devices necessari alla ricerca dei sensori dobbiamo creare un file con uno script apposito. Pertanto da terminale digitiamo
gedit creadev.sh
E successivamente incolliamoci questo contenuto
# Here you can set several defaults. # The number of devices to create (max: 256) NUMBER=32 # The owner and group of the devices OUSER=root OGROUP=root # The mode of the devices MODE=600 # This script doesn't need to be run if devfs is used if [ -r /proc/mounts ] ; then if grep -q "/dev devfs" /proc/mounts ; then echo "You do not need to run this script as your system uses devfs." exit; fi fi i=0; while [ $i -lt $NUMBER ] ; do echo /dev/i2c-$i mknod -m $MODE /dev/i2c-$i c 89 $i || exit chown "$OUSER:$OGROUP" /dev/i2c-$i || exit i=$[$i + 1] done #end of file
Quindi chiudiamo e salviamo il file. Rendiamolo eseguibile
chmod 755 creadev.sh
ed eseguiamolo
sudo ./creadev.sh
NB : se lo script dovesse restituirvi errore, in quanto le devices sono già presenti non preoccupatevi e continuate con la guida!
Trovare i sensori
Lo script di detect dei sensori compreso nel pacchetto sia di Dapper, che di Edgy, che di Feisty (per ora) è obsoleto, e conviene quindi utilizzare lo script più nuovo fornito dal sito ufficiale di lm-sensors. Tuttavia per completezza di informazioni ritengo doveroso citare entrambi i metodi, anche perchè non sempre più nuovo significa migliore
Metodo 1 - Script del pacchetto di ubuntu
Decidendo di affidarci allo script compreso nel pacchetto ci siamo semplificati la vita, allo stesso tempo potremmo avere problemi con devices nuove. Ad ogni modo ci basta aprire un terminale e digitare
sudo sensors-detect
A questo punto lo script stesso ci guiderà nella ricerca dei moduli da caricare per leggere i nostri sensori. Se non avete molta affinità con l'inglese rispondete Yes a tutte le domande. Alla domanda riferita alla scelta ISA/SMBUS, rispondete ISA. Se successivamente vi accorgerete che questa scelta poteva essere errata (ad esempio se i sensori non rilevano nulla o pochi componenti) tornate a questo passo e ripetete il procedimento cambiando solo questa scelta). Terminato lo script, vi restituirà un output simile a questo
To make the sensors modules behave correctly, add these lines to /etc/modules: #----cut here---- # I2C adapter drivers i2c-viapro i2c-isa # I2C chip drivers eeprom it87 #----cut here----
che ci servirà per i due passaggi successivi. Prima di tutto caricate questi moduli manualmente, per scoprire se vi sono conflitti (ovvero se il comando che daremo darà esito negativo. Da terminale digitiamo quindi
sudo modprobe modulo
dove, al posto di modulo, apporremmo uno dopo l'altro i nomi che ci sono stati restituiti. Nel nostro esempio avremo
sudo modprobe i2c-viapro sudo modprobe i2c-isa sudo modprobe eeprom sudo modprobe it87
Se per nessuno di questi comandi il terminale ci restituisce output, i moduli sono stati accettati e caricati. Proseguiamo dunque nell'impostare questi moduli per il caricamento automatico. Apriamo il file di testo di configurazione
sudo gedit /etc/modules
ed inseriamoci tutti i moduli che prima abbiamo caricato manualmente. Salviamo e chiudiamo il file. La guida prosegue al paragrafo [#avviare avviare i sensori]
Metodo 2 - script dal sito ufficiale
Mediante questo script riusciremo a 'vedere' anche i sensori più nuovi supportati da lm-sensors. Ricordiamoci che questo non significa poter anche vedere i valori di questi sensori, poichè avremo anche bisogno di un kernel molto recente. Ad esempio per le nuove schede madri Asus con chipset nforce 560 e supporto per dual core, c'è bisogno del modulo k8temp, che è presente solo dal kernel 2.6.18 .
Lo script è disponibile sul sito ufficiale. Scarichiamolo direttamente da [http://www.lm-sensors.org/browser/lm-sensors/trunk/prog/detect/sensors-detect?format=txt qui] facendo click con il tasto destro, poi 'salva con nome' ed infine salvandolo nella nostra home (è preferibile rispetto al desktop giusto per un fatto di ordine) con il nome 'ricerca_sensori'. A questo punto ci basta renderlo eseguibile
chmod 755 ricerca_sensorihttp://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_control_fan_speed_.28lm-sensors.29
e lanciarlo
sudo ./ricerca_sensori
Seguite anche in questo caso ciò che vi viene richiesto e se non conoscete l'inglese rispondete Yes a tutte le domande. Alla domanda riferita alla scelta ISA/SMBUS, rispondete ISA. Se successivamente vi accorgerete che questa scelta poteva essere errata (ad esempio se i sensori non rilevano nulla o pochi componenti) tornate a questo passo e ripetete il procedimento cambiando solo questa scelta). Terminato lo script, vi chiederà di poter modificare automaticamente i vostri file per modificare il vostro file di configurazione. Rispondete di si e andiamo avanti. Supponendo di aver ricevuto sempre il medesimo output
#----cut here---- # I2C adapter drivers i2c-viapro i2c-isa # I2C chip drivers eeprom it87 #----cut here----
Come per l'altro script date il comando
sudo modprobe modulo
dove al posto di modulo sostituite i moduli che vi restituisce. Ad esempio
sudo modprobe i2c-viapro sudo modprobe i2c-isa sudo modprobe eeprom sudo modprobe it87
Se per nessuno di questi comandi il terminale ci restituisce output, i moduli sono stati accettati e caricati. Proseguiamo dunque nell'impostare questi moduli per il caricamento automatico. Apriamo il file di testo di configurazione
sudo gedit /etc/modules
ed inseriamoci tutti i moduli che prima abbiamo caricato manualmente. Salviamo e chiudiamo il file.
Avviare e leggere i Sensori
Il procedimento da ora in poi sarà indifferente dal metodo che abbiamo seguito precedentemente.
Per avere un'idea di cosa abbiamo impostato diamo i seguenti comandi per aggiornare i moduli appena caricati
sudo depmod -a sudo update-modules
Ora vediamo se tutto funziona digitando
sensors
Dovremmo ottenere qualcosa tipo
k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp:
+23°C
Core1 Temp:
+19°C
it8716-isa-0290
Adapter: ISA adapter
VCore: +1.18 V (min = +0.00 V, max = +4.08 V)
VDDR: +3.25 V (min = +0.00 V, max = +4.08 V)
+3.3V: +0.00 V (min = +0.00 V, max = +4.08 V) ALARM
+5V: +4.81 V (min = +0.00 V, max = +6.85 V)
+12V: +11.58 V (min = +0.00 V, max = +16.32 V)
in5: +0.00 V (min = +0.00 V, max = +4.08 V) ALARM
in6: +0.00 V (min = +0.00 V, max = +4.08 V) ALARM
5VSB: +4.84 V (min = +0.00 V, max = +6.85 V)
VBat: +2.94 V
fan1: 0 RPM (min = 0 RPM)
fan2: 0 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
temp1: +30°C (low = -1°C, high = +127°C) sensor = diode
temp2: +30°C (low = -1°C, high = +127°C) sensor = thermistor
temp3: -7°C (low = -1°C, high = +127°C) sensor = thermistor
vid: +1.300 VSe non ottenete risposta od ottenete errori fate riferimento al capitolo [#errori errori] di questa pagina.
Applicazioni Grafiche
Ovviamente un output come quello ricevuto precedentemente non è comodo per quanto completo, poiché sarebbe molto più utile avere sempre sotto controllo mediante utility grafica i nostri valori. Ebbene ci sono varie utility che permettono di fare ciò. Farò riferimento solo a quelle presenti nei repository di ubuntu
Sensors-applet
Personalmente è la scelta su cui ricado quasi sempre poichè permette ai sensori di rimanere sempre visibili sul pannello di gnome, permettendo il controllo anche mentre si eseguono altre operazioni. Per installare usiamo apt
sudo apt-get install sensors-applet
http://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_control_fan_speed_.28lm-sensors.29Mentre per avviarla clicchiamo con il tasto destro su uno dei pannelli, selezioniamo 'aggiungi al pannello' scendiamo sino alla sezione 'sistema e hardware' e selezioniamo la voce 'Hardware sensors monitor'.
Cliccando poi con il destro sulle icone appena apparse e selezionando proprietà possiamo impostare sia impostazioni generali di visualizzazione (nella prima scheda) sia quali sensori visualizzare (nella seconda) escludendo ovviamente i sensori che non ci restituiscono output ed inserendo quelli per noi maggiormente interessanti
Ksensors
E' l'equivalente di sensors-applet per il cugino KDE. Per installarlo usiamo sempre apt
sudo apt-get install ksensors
Mentre per avviarlo troveremo la sua voce nel menu KDE.
Xsensors
E' il riscontro grafico diretto dell'output da terminale ed ha la comodità di essere un'applet a se, che dunque non dipende dal desktop enviroment che utilizziamo. E' anche molto leggero ed adatto a mio avviso a sistemi basati su Blackbox, e17 ecc.
Potete installarlo sempre da apt
sudo apt-get install xsensors
e lanciarlo dal vostro menu oppure dal terminale digitando
xsensors
Altre applet
Nei repository vi sono altre due applet entrambe installabili con apt o synaptic e ben integrate con il loro Desktop enviroment di riferimento. Sono wmsensors e xfce4-sensors-plugin
Controllare le Ventole
Questa parte di guida è stata tradotta da [http://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_control_fan_speed_.28lm-sensors.29 ubuntuguide]
Per controllare se le vostre ventole e la vostra scheda madre supportano il controllo, aprite un terminale e digitate
pwmconfig
Controllerà le vostre ventole e vi chiedere di osservare se si fermano o meno. Nel caso in cui si fermassero, ovvero nel caso in cui abbiate il controllo delle ventole, potete creare un semplice script da lanciare all'avvio per un'ottimizzazione delle stesse Create un file fancontrol nella cartella /etc/init.d/
sudo gedit /etc/init.d/fancontrolhttp://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_control_fan_speed_.28lm-sensors.29
e incollateci il seguente testo
#
# Fancontrol start script.
#
set -e
# Defaults
DAEMON=/usr/sbin/fancontrol
PIDFILE=/var/run/fancontrol-pid
PATH=/sbin:/bin:/usr/sbin:/usr/bin
test -f $DAEMON || exit 0
. /lib/lsb/init-functions
case "$1" in
start)
log_begin_msg "Starting fancontrol daemon..."
start-stop-daemon --start -o -q -m -b -p $PIDFILE -x $DAEMON
log_end_msg $?
;;
stop)
log_begin_msg "Stopping fancontrol daemon..."
start-stop-daemon --stop -o -q -p $PIDFILE
log_end_msg $?
;;
force-reload|restart)
sh $0 stop
sh $0 start
;;
*)
log_success_msg "Usage: /etc/init.d/fancontrol {start|stop|restart|force-reload}"
log_success_msg " start - starts system-wide fancontrol service"
log_success_msg " stop - stops system-wide fancontrol service"
log_success_msg " restart, force-reload - starts a new system-wide fancontrol service"
exit 1
;;
esac
exit 0Rendetelo eseguibile
sudo chmod +x /etc/init.d/fancontrol
Provatelo
/etc/init.d/fancontrol start
e
/etc/init.d/fancontrol stop
E se l'output è favorevole caricatelo all'avvio per farlo partire assieme al pc, aprendo il file /etc/rc.local
sudo gedit /etc/rc.local
e inserendo prima della scritta exit 0 il controllo
/etc/init.d/fancontrol start
Errori e problematiche Comuni
Nel caso in cui non riceviate output oppure sensors-detect sia molto lento (anche ore) e alla fine non rilevi le vostre devices, vi consiglio di guardare [http://www.lm-sensors.org/wiki/Devices qui] per cercare il vostro hw, il vostro chipset e i vostri drivers, così da controllare la compatibilità degli script con i vostri componenti. Inoltre fate attenzione alle versioni dei kernel e , se necessario, compilatevi il più nuovo disponibile in modo da avere tutti i moduli necessari
Versione precedente della guida
attachment:Icone/Piccole/warning.png Questa pagina è l'aggiornamento di una scritta per una versione precedente di Ubuntu.
## by Fabio Marzocca modificato da Aldo Maggi
'''ATTENZIONE''': ''Non installare lm-sensors su un IBM-Thinkpad o qualunque notebook IBM. Il probing potrebbe danneggiare il computer.'', questo avvertimento è tuttora valido (controllato sul sito www.lm-sensors.org)
* Installare lm-sensors usando Synaptic oppure da terminale digitare: '''sudo apt-get install lm-sensors'''
* Lanciare: '''sudo /usr/sbin/sensors-detect''' (è buona norma leggersi, o almeno dare un'occhiata, a '''man sensors-detect''')
il programma effettuerà un controllo di tutti i possibili strumenti di cui la scheda madre è dotata per rilevare temperature,
velocità dei fan e voltaggi.
Rispondere sempre "Yes" alle domande relative a tali controlli a meno, ovviamente, che non appaiano errori che indichino che
il proseguire sia potenzialmente pericoloso per la scheda madre, solo alla domanda: "ISA/SMBus?" rispondere ISA.
Una volta terminato apparirà una schermata in cui saranno indicati i moduli del kernel che dovranno essere caricati per far
funzionare il rilevamento dei dati che ci interessano, si potrà fare copia incolla della lista dei moduli nel file '''/etc/modules'''
(con '''sudo gedit /etc/modules''' , ovviamente non è obbligatorio utilizzare gedit, può essere utilizzato il programma di editing
preferito) oppure accettare l'opzione che viene proposta di effettuare in modo automatico questa operazione.
* Far ripartire il computer bloccandolo immediatamente (in genere con il tasto Canc) in modo da accedere alla schermata del Bios,
cercare nelle diverse pagine e trovare dove appaiano le Temperature, le velocità dei Fan e i voltaggi e trascriverli su di un
foglio di carta, quindi chiudere la schermata del Bios senza salvare.
A questo punto far ripartire normalmente il computer, non appena la sequenza di boot sarà terminata aprite un terminale e
digitate: '''sensors'''
Se tutto è andato bene nella precedente configurazione mediante sensors-detect, apparirà una lista contenente Voltaggi, Velocità
dei fan e Temperature. Confrontare i dati con quanto trascritto dalle pagine del Bios (che sicuramente ha ragione!), se
ci fossero delle differenze (sempre possibili in quanto pur in presenza dello stesso chip e dello stesso bus i fabbricanti delle
schede madri non seguono uno standard e quindi lm-sensors nel ricavare i dati può essere indotto in errore) va modificato il
file '''/etc/sensors.conf''' (ovviamente con '''sudo''' e con il vostro editor preferito) apportando le correzioni necessarie per ottenere
i dati corretti (il file è molto ben commentato e comunque c'è sempre '''man sensors.conf''').
Qui di seguito c'è la procedura indicata precedentemente e tuttora valida qualora, per qualche strano motivo a me ignoto, sia stato
disattivato o disinstallato udev (se non si sa di che programma si tratti si può stare tranquilli che udev c'è e sta facendo il
suo lavoro):
* Installare lm-sensors usando Synaptic oppure da terminale digitare: {{{sudo apt-get install lm-sensors- Copiare il seguente script e salvarlo nella home con il nome mkdev.sh:
- #!/bin/bash
# Here you can set several defaults.
# The number of devices to create (max: 256)
NUMBER=32
# The owner and group of the devices
OUSER=root
OGROUP=root
# The mode of the devices
MODE=600
# This script doesn't need to be run if devfs is used
if [ -r /proc/mounts ] ; then
- if grep -q "/dev devfs" /proc/mounts ; then
- echo "You do not need to run this script as your system uses devfs." exit;
fi
i=0;
while [ $i -lt $NUMBER ] ; do
- echo /dev/i2c-$i
mknod -m $MODE /dev/i2c-$i c 89 $i || exit
chown "$OUSER:$OGROUP" /dev/i2c-$i || exit i=$[$i +1]
done
#end of file
Per i curiosi: Questo script crea nel filesystem il device dal quale verranno lette le informazioni sui sensori
Rendere lo script eseguibile: sudo chmod 755 mkdev.sh
Lanciare lo script: sudo ./mkdev.sh
Ora eseguire sudo sensors-detect rispondendo YES a tutte le domande. Alla domanda che chiede ISA/SMBus? rispondere ISA.
- Alla fine della fase di rilevamento saranno elencati i moduli che verranno aggiunti al file /etc/modules. Farli aggiungere automaticamente, ma prenderne comunque nota.
Eseguire sudo /etc/init.d/module-init-tools
- Caricare manualmente tutti i moduli della lista di cui abbiamo preso nota (es:)
- sudo modprobe i2c-sensor
sudo modprobe lm85
A questo punto l'installazione è terminata. Eseguire sensors Si otterrà una lista simile a questa:
- eeprom-i2c-0-52
Adapter: SMBus I801 adapter at fc00
Memory type: DDR SDRAM DIMM
Memory size (MB): 128
eeprom-i2c-0-50
Adapter: SMBus I801 adapter at fc00
Memory type: DDR SDRAM DIMM
Memory size (MB): 128
adt7463-i2c-0-2e
Adapter: SMBus I801 adapter at fc00
V1.5: +0.000 V (min = +0.00 V, max = +3.32 V) ALARM
VCore: +1.500 V (min = +0.00 V, max = +2.99 V)
V3.3: +3.317 V (min = +0.00 V, max = +4.38 V)
V5: +5.130 V (min = +0.00 V, max = +6.64 V)
V12: +3.313 V (min = +0.00 V, max = +15.94 V)
CPU_Fan: 0 RPM (min = 0 RPM)
fan2: 0 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
fan4: 0 RPM (min = 0 RPM)
CPU: +25.00°C (low = -127°C, high = +127°C)
Board: +28.00°C (low = -127°C, high = +127°C)
Remote: +32.00°C (low = -127°C, high = +127°C)
CPU_PWM: 0
Fan2_PWM: 255
Fan3_PWM: 255
vid: +1.525 V (VRM Version 9.0)
- Ulteriori personalizzazioni possono essere configurate modificando il file /etc/sensors.conf . Per i dettagli, digitare:
man sensors.conf
}}}
