Portál AbcLinuxu, 25. května 2024 17:15
Osobně používám kernely řady 2.6 tudíž odpadá patchování, které je nezbytné pro funkci na 2.4 řadě. Pro ty kteří používají kernel 2.4 je patch přidávajcí podporu i2c, dostupný zde, najdete zde také TAR archív s lm_sensors.
Nejprve je nutné správně nakonfigurovat kernel, momentálně používám kernel 2.6.12-nitro2, i2c mám zakompilovanou(žádné zbytečné moduly).
Po stažení TARu s lm_sensors jej rozbalte a nainstalujte příkazy:
make usera jako root
make user_install
Není třeba spouštět sensors-detect
to co by vyprodukoval je nám stejně k ničemu. Napsal jsem si vlastní skript který se vše postará, pokud bych měl i2c a monitorovací čip jako modul muselo by být postaráno o natažení příslusných modulů, ale zakompilovánim do kernelu tato starost odpadá.
/etc/rc.d/rc.lm_sensors:
#!/bin/sh PSENSORS=/usr/local/bin/sensors RETVAL=0 prog="lm_sensors" start() { echo -n "Starting $prog: " $PSENSORS -s | $PSENSORS -s #nevim proc, ale po prvnim spusteni se rozervou alarmy i kdyz se nic nedeje, takhle to jen pipne RETVAL=$? if [ $RETVAL -eq 0 ] && touch /var/lock/subsys/lm_sensors ; then echo success else echo failure fi } stop() { echo -n "Stopping $prog: " RETVAL=$? if [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/lm_sensors ; then echo success else echo failure fi } restart() { stop start RETVAL=$? } condrestart() { [ -e /var/lock/subsys/lm_sensors ] && restart || : } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) restart ;; condrestart) condrestart ;; *) echo "Usage: $0 {start|stop|restart|condrestart}" exit 1 esac exit $RETVAL
V souboru se nachází vlastní nastavení senzorů, maximalní a minimalní hodnoty, nastavení alarmů a podobně. Jeho vzor najdete v cesta_k_rozbalenym_lm_sensors/etc/sensors.conf.eg
, stačí ponechat jen řádky týkajcí se konfigurace právě vašich senzorů, v mém případě je to Winbond w83697hf.
/etc/sensors.conf:
chip "w83697hf-*" #nastaveni alarmu label alarms "Alarm" label beep_enable "Beep" set beep_enable 1 set beeps 112 #maska pro zvukovy alarm, 2 4 8 16... index jednotlivých senzoru, cislo je jejich soucet #jmenovky senzoru label in0 "VCore" label in2 "+3.3V" label in3 "+5V" label in4 "+12V" label in5 "-12V" label in6 "-5V" label in7 "V5SB" label in8 "VBat" #nastaveni senzoru compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1) compute in4 ((28/10)+1)*@ , @/((28/10)+1) compute in5 (5.14 * @) - 14.91 , (@ + 14.91) / 5.14 compute in6 (3.14 * @) - 7.71 , (@ + 7.71) / 3.14 compute in7 ((6.8/10)+1)*@ , @/((6.8/10)+1) compute temp2 @+8 , @-8 #oprava podle teplomeru +3, pak to zhruba sedi -+2 #maximalni/minimalni hodnoty napeti set in0_min 1.65 * 0.95 set in0_max 1.68 * 1.05 set in2_min 3.3 * 0.95 set in2_max 3.3 * 1.05 set in3_min 5.0 * 0.95 set in3_max 5.0 * 1.05 set in4_min 12 * 0.95 set in4_max 12 * 1.05 set in5_max -12 * 0.90 set in5_min -12 * 1.10 set in6_max -5 * 0.95 set in6_min -5 * 1.05 set in7_min 5 * 0.90 set in7_max 5 * 1.10 set in8_min 3.0 * 0.80 set in8_max 3.0 * 1.20 #minimalni otacky vetracku set fan1_min 2000 #maximalni hodnoty teplot set temp1_over 40 set temp1_hyst 37 set temp2_over 68 set temp2_hyst 65 #nastaveni vetracku set fan1_div 4 ignore fan2
Tím jsou přípravy hotovy, stačí do /etc/rc.d/rc.local
přidat řádek
/etc/rc.d/rc.lm_sensors starta nabootovat kernel s podporou i2c a monitorovacího čipu.
Doufám že toto mini HOW-TO někomu pomůže, nasměruje ke zdárnému konci, nejsou to žádná kouzla, je to celkem trifka, ale tady všechno pohromadě.
Tiskni Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.