PDA

View Full Version : 5.01 - getting lm_sensors to work



marhleet
09-11-2006, 12:21 PM
apart from the difficulty of finding info ....
there is often too much
and it's always so varied from the many different linux versions

has anyone got thermal sensors to display correctly yet ?

one thing i've seen, to help with debugs and 5.02
I've seen someone say to run
sensors -detect
which is, to say, uhm ....
sensors-detect

this runs, fine.
and finishes fine.
but it will save to
/etc/modules

the first couple of lines under the bootup sequence, modules is found in
/etc/modules-2.6.17
and copied over

so you lose the freshly found sensors-detect details
i figure it won't be too hard to just copy the file back, first, but is that the
"best" / correct way to do it

after that, it won't be too much longer, cos if I don't get some fans and temps on the screen, this linux is going back to windoze, again.

marhleet
09-13-2006, 12:03 PM
28 views so far
and no answeres at all
sigh, back to windoze, very soon

ockham23
09-13-2006, 02:58 PM
"Help me, or I'll go back to windows." What kind of childish threat is that? Windows might be the right OS for you anyway.

P.S.: lm-sensors and gkrellm work perfectly with my Kanotix install. I have readings for temperatures, voltages and fan speeds.

marhleet
09-13-2006, 07:58 PM
"Help me, or I'll go back to windows." What kind of childish threat is that? Windows might be the right OS for you anyway.

P.S.: lm-sensors and gkrellm work perfectly with my Kanotix install. I have readings for temperatures, voltages and fan speeds.

you might want to post that success story in the kanotix forums
back to the knoppix bit of the question ........

ockham23
09-13-2006, 09:13 PM
you might want to post that success story in the kanotix forumsThis isn't necessary because that's where I found the how-to.

Anyway, sensors-detect displays a list of the required modules. Just copy the list and add it manually to the modules file. With the LiveCD it's /etc/modules, but if it's modules-[kernel] on your hard drive you have to edit this file:
su
mcedit /etc/modules-2.6.17Just append the names of the modules, each module in a separate line. Press "F2" to save the file, "F10" to quit. Reboot and check whether mbmon is already installed:
su
mbmon -c1If you want a GUI, install gkrellm:
su
apt-get update
apt-get install gkrellm

marhleet
09-14-2006, 10:18 AM
that's much nicer, ta

yup, I got the modules loaded, and my
/etc/modules is the sames as the
/etc/modules-2.6.17 so i figured that part out

I've tried gDesklets, but they don't want to show anything
and I've not got the
view code
to work at all, don't know why

I've got gkrellm installed, but I have no idea where on the menus it is .....
just remembered, the Konqueror has a different layout
oh goody, I found a search function .....
back soon .....

aaaaah, there it is.
today, I learnt a new thing !! ;-)

gKrellm up, working, configged, expanded, i got temps and fans.
thanx muchly
now, can I get a SMART monitor (http://www.panterasoft.com) for my hard drives ?

Béèm
09-14-2006, 11:58 AM
I use HDD health in XP. Very nice tool.
Why don't you try to run it in wine?

marhleet
09-14-2006, 12:02 PM
I use HDD health in XP. Very nice tool.
Why don't you try to run it in wine?

trying to minimize system impact
all of my boxen are purely boinc clients
the less running the better

linookser
09-18-2006, 04:28 PM
There is smartmontools (http://packages.debian.org/unstable/utils/smartmontools.html).

HOWTO Monitor your hard disk(s) with smartmontools (http://gentoo-wiki.com/HOWTO_Monitor_your_hard_disk(s)_with_smartmontools )
Monitoring Hard Disks with SMART (http://www.linuxjournal.com/article/6983)
Linux Harddisk Monitoring with SmartMonTools (smartctl) (http://www.captain.at/howto-linux-smartmontools-smartctl.php)

johnrw
02-21-2008, 11:31 AM
Ok, now that I have gotten rid of XP's default boot... in exchange for
Knoppix 5.1.1 running from a knoppix tohd style install with a 3 GB
persistent image... I decided it was time to get some fan and tempurature
monitoring going. I enabled a second taskbar on the top of my display and
stuck a KDE system tray applet there called Kima. I suspect I may be editing this one
in the future, but it worked for me.

So here are some notes from my experience installing lm-sensors on a persistent image.
Well... I am no expert. I botched it once. I did get it working though.

I also installed kima_0.7.4-1_i386.deb which displays current readings
of my fans and temps along with cpu usage.
http://kima.sourceforge.net/
This installed fine on my Knoppix 5.1.1 persistent home.

Here is a screenshot. (http://imagebin.ca/view/D-oGuXvH.html)

Here you can get a good launch into lm-sensors including a link to download it.
http://www.lm-sensors.org/wiki/FeedbackAndSupport
They have a lot of good resources to find out why you may have troubles, and
what you can do about it there. If you have bleeding edge hardware, you may
find usefull things there.

My board's chipset required the module w83627hf to be loaded.
Your board will probably be using a different chipset, so you find
this info using the sensors-detect utility that comes with lm-sensors
after you compile it. I just downloaded it to my Desktop. Then a
right mouse click->extract here.
Then open a terminal session by pressing F4,
Then type:

cd lm_sensors-3.0.1
make all
make install
By default, it installs to your /usr/local which I liked.
Things that get installed into /usr become inseperable... almost like they
become part of the hull of the ship.


Also I had to make this subdir... so that touch works later on.

sudo mkdir /var/lock/subsys

Now, you run sensors-detect as root.
in the same terminal session you can type:

sudo sensors-detect
to find out which modules you need. I included the output of mine
so you can see what it will do ahead of time.

Next we take the file:
/home/knoppix/Desktop/lm_sensors-3.0.1/prog/init/lm_sensors.init
and modify it a little so it can run on Knoppix. Then I save it to
/etc/init.d/lm_sensors. I just added some missing functions and
removed a call to a non existant file '/etc/init.d/functions'
Don't forget to make it executable and owned by root.
Here is a diff output of mine and the one proposed by lm-sensors.



diff /home/knoppix/Desktop/lm_sensors-3.0.1/prog/init/lm_sensors.init /etc/init.d/lm_sensors
30a31,39
> echo_success() {
> echo -n " Success! "
> }
>
> echo_failure() {
> echo -n " Failed! "
> }
>
>
63c72
< . /etc/init.d/functions
---
> # . /etc/init.d/functions


begin file:///etc/init.d/lm_sensors


#!/bin/sh
#
# chkconfig: 2345 26 74
# description: sensors is used for monitoring motherboard sensor values.
# config: /etc/sysconfig/lm_sensors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

# See also the lm_sensors homepage at:
# http://www.lm-sensors.org

# It uses a config file /etc/sysconfig/lm_sensors that contains the modules
# to be loaded/unloaded. That file is sourced into this one.

# The format of that file a shell script that simply defines the modules
# in order as normal shell variables with the special names:
# MODULE_1, MODULE_2, MODULE_3, etc.

echo_success() {
echo -n " Success! "
}

echo_failure() {
echo -n " Failed! "
}


if grep -q sysfs /proc/mounts; then
WITHSYS=1
else
WITHSYS=0
fi

if [ $WITHSYS == "0" ]; then
# If sensors isn't supported by the kernel, try loading the module...
[ -e /proc/sys/dev/sensors ] || /sbin/modprobe i2c-proc >/dev/null 2>&1

# Don't bother if /proc/sensors still doesn't exist, kernel doesn't have
# support for sensors.
[ -e /proc/sys/dev/sensors ] || exit 0

# If sensors was not already running, unload the module...
[ -e /var/lock/subsys/lm_sensors ] || /sbin/modprobe -r i2c-proc >/dev/null 2>&1
fi

CONFIG=/etc/sysconfig/lm_sensors
[ -r "$CONFIG" ] || exit 0
grep '^MODULE_' $CONFIG >/dev/null 2>&1 || exit 0

# Load config file
. "$CONFIG"

PSENSORS=/usr/local/bin/sensors

if [ ! -x $PSENSORS ]; then
PSENSORS=/usr/bin/sensors
fi

# Source function library.
# . /etc/init.d/functions

RETVAL=0
prog="lm_sensors"

start() {
echo -n "Starting $prog: loading module "

modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '`
i=0
while [ $i -lt $modules ] ; do
module=`eval echo '$'MODULE_$i`
echo -n "${module} "
/sbin/modprobe $module >/dev/null 2>&1
i=`expr $i + 1`
done
$PSENSORS -s

RETVAL=$?
if [ $RETVAL -eq 0 ] && touch /var/lock/subsys/lm_sensors ; then
echo_success
echo
else
echo_failure
echo
fi
}

stop() {
echo -n "Stopping $prog: "

modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '`
i=`expr $modules`
while [ $i -ge 0 ] ; do
module=`eval echo '$'MODULE_$i`
/sbin/modprobe -r $module >/dev/null 2>&1
i=`expr $i - 1`
done

if [ $WITHSYS == "0" ]; then
/sbin/modprobe -r i2c-proc >/dev/null 2>&1
fi

RETVAL=$?
if [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/lm_sensors ; then
echo_success
echo
else
echo_failure
echo
fi
}

dostatus() {
$PSENSORS
RETVAL=$?
}

restart() {
stop
start
RETVAL=$?
}

condrestart() {
[ -e /var/lock/subsys/lm_sensors ] && restart || :
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
dostatus
;;
restart|reload)
restart
;;
condrestart)
condrestart
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|condrestart}"
exit 1
esac

exit $RETVAL


end file:///etc/init.d/lm_sensors

Lastly, I created a knoppix.sh file in the same directory as my knoppix.img
You will need to change the modprobe statement to match what modules
sensors-detect earlier said you will need to use. It will not be activated unless
you put myconfig=scan on the knoppix prompt, or in your boot loader command line.
I use grub4dos to boot my computer and the knoppix tohd install.

begin file:///media/hda1/knoppix.sh


#!/bin/bash

modprobe w83627hf


LMSENSORS_INIT=/etc/init.d/lm_sensors

if [ ! -x "$LMSENSORS_INIT" ]; then
echo "lm_sensors init not found"
exit 0
fi

$LMSENSORS_INIT start

# This should be exec'ed last.
/usr/local/bin/sensors -s

end file:///media/hda1/knoppix.sh

begin file:///etc/sysconfig/lm_sensors


# /etc/sysconfig/lm_sensors - Defines modules loaded by
# /etc/init.d/lm_sensors
# Copyright (c) 1998 - 2001 Frodo Looijaard <frodol@dds.nl>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
#
# See also the lm_sensors homepage at:
# http://www.lm-sensors.org/
#
# This file is used by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded. This file is sourced into /etc/init.d/lm_sensors.
#
# The format of this file is a shell script that simply defines the modules
# in order as normal variables with the special names:
# MODULE_0, MODULE_1, MODULE_2, etc.
#
# List the modules that are to be loaded for your system
#
# Generated by sensors-detect on Sun Feb 17 05:48:47 2008
MODULE_0=w83627hf

end file:///KNOPPIX.IMG/etc/sysconfig/lm_sensors

begin file:///usr/local/bin/sensors-detect script output


root@Knoppix:/# sensors-detect
# sensors-detect revision 5108 (2008-01-22 13:22:47 +0100)

This program will help you determine which kernel modules you need
to load to use lm_sensors most effectively. It is generally safe
and recommended to accept the default answers to all questions,
unless you know what you're doing.

We can start with probing for (PCI) I2C or SMBus adapters.
Do you want to probe now? (YES/no): yes
Probing for PCI bus adapters...
Use driver `i2c-viapro' for device 0000:00:11.0: VIA Technologies VT8233A/8235 South Bridge

We will now try to load each adapter module in turn.
Module `i2c-viapro' already loaded.
If you have undetectable or unsupported adapters, you can have them
scanned by manually loading the modules before running this script.

To continue, we need module `i2c-dev' to be loaded.
Do you want to load `i2c-dev' now? (YES/no): yes
Module loaded successfully.

We are now going to do the I2C/SMBus adapter probings. Some chips may
be double detected; we choose the one with the highest confidence
value in that case.
If you found that the adapter hung after probing a certain address,
you can specify that address to remain unprobed.

Next adapter: SMBus Via Pro adapter at 5000 (i2c-0)
Do you want to scan it? (YES/no/selectively): yes
Client found at address 0x2e
Probing for `Myson MTP008'... No
Probing for `National Semiconductor LM78'... No
Probing for `National Semiconductor LM78-J'... No
Probing for `National Semiconductor LM79'... No
Probing for `National Semiconductor LM80'... No
Probing for `National Semiconductor LM85 or LM96000'... No
Probing for `Analog Devices ADM1027, ADT7460 or ADT7463'... No
Probing for `SMSC EMC6D100, EMC6D101 or EMC6D102'... No
Probing for `Analog Devices ADT7462'... No
Probing for `Analog Devices ADT7467 or ADT7468'... No
Probing for `Analog Devices ADT7470'... No
Probing for `Analog Devices ADT7473'... No
Probing for `Analog Devices ADT7475'... No
Probing for `Analog Devices ADT7476'... No
Probing for `Andigilog aSC7611'... No
Probing for `Andigilog aSC7621'... No
Probing for `National Semiconductor LM87'... No
Probing for `National Semiconductor LM93'... No
Probing for `Winbond W83781D'... No
Probing for `Winbond W83782D'... No
Probing for `Winbond W83792D'... No
Probing for `Winbond W83793R/G'... No
Probing for `Winbond W83791SD'... No
Probing for `Winbond W83627HF'... No
Probing for `Winbond W83627EHF'... No
Probing for `Winbond W83627DHG'... No
Probing for `Asus AS99127F (rev.1)'... No
Probing for `Asus AS99127F (rev.2)'... No
Probing for `Asus ASB100 Bach'... No
Probing for `Winbond W83L786NR/NG/R/G'... No
Probing for `Winbond W83L785TS-S'... No
Probing for `Analog Devices ADM9240'... No
Probing for `Dallas Semiconductor DS1780'... No
Probing for `National Semiconductor LM81'... No
Probing for `Analog Devices ADM1026'... No
Probing for `Analog Devices ADM1025'... No
Probing for `Analog Devices ADM1029'... No
Probing for `Analog Devices ADM1030'... No
Probing for `Analog Devices ADM1031'... No
Probing for `Analog Devices ADM1022'... No
Probing for `Texas Instruments THMC50'... No
Probing for `Analog Devices ADM1028'... No
Probing for `ITE IT8712F'... No
Probing for `SMSC DME1737'... No
Probing for `Fintek F75373S/SG'... No
Probing for `Fintek F75375S/SP'... No
Probing for `Fintek F75387SG/RG'... No
Probing for `Analog Devices ADM1024'... No
Probing for `Winbond W83791D'... No
Client found at address 0x4e
Probing for `National Semiconductor LM75'... No
Probing for `Dallas Semiconductor DS75'... No
Probing for `Dallas Semiconductor DS1621'... No
Probing for `Analog Devices ADM1021'... No
Probing for `Analog Devices ADM1021A/ADM1023'... No
Probing for `Maxim MAX1617'... No
Probing for `Maxim MAX1617A'... No
Probing for `Maxim MAX1668'... No
Probing for `Maxim MAX1805'... No
Probing for `Maxim MAX1989'... No
Probing for `Maxim MAX6655/MAX6656'... No
Probing for `TI THMC10'... No
Probing for `National Semiconductor LM84'... No
Probing for `Genesys Logic GL523SM'... No
Probing for `Onsemi MC1066'... No
Probing for `Maxim MAX1619'... No
Probing for `National Semiconductor LM82/LM83'... No
Probing for `Maxim MAX6659'... No
Probing for `Maxim MAX6680/MAX6681'... No
Probing for `Maxim MAX6633/MAX6634/MAX6635'... No
Probing for `ITE IT8201R/IT8203R/IT8206R/IT8266R'... No
Probing for `Fintek F75111R/RG/N (GPIO)'... No
Probing for `Fintek F75121R/F75122R/RG (VID+GPIO)'... No
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Probing for `EDID EEPROM'... No
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Probing for `EDID EEPROM'... No

Some chips are also accessible through the ISA I/O ports. We have to
write to arbitrary I/O ports to probe them. This is usually safe though.
Yes, you do have ISA I/O ports even if you do not have any ISA slots!
Do you want to scan the ISA I/O ports? (YES/no): yes
Probing for `National Semiconductor LM78' at 0x290... No
Probing for `National Semiconductor LM78-J' at 0x290... No
Probing for `National Semiconductor LM79' at 0x290... No
Probing for `Winbond W83781D' at 0x290... No
Probing for `Winbond W83782D' at 0x290... No
Probing for `Silicon Integrated Systems SIS5595'... No
Probing for `VIA VT82C686 Integrated Sensors'... No
Probing for `VIA VT8231 Integrated Sensors'... No
Probing for `IPMI BMC KCS' at 0xca0... No
Probing for `IPMI BMC SMIC' at 0xca8... No

Some Super I/O chips may also contain sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no): yes
Probing for Super-I/O at 0x2e/0x2f
Trying family `National Semiconductor'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Fintek'... Yes
Found `Winbond W83697HF/F/HG Super IO Sensors' Success!
(address 0x290, driver `w83627hf')
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Fintek'... No
Trying family `ITE'... No

Some CPUs or memory controllers may also contain embedded sensors.
Do you want to scan for them? (YES/no):

Some CPUs or memory controllers may also contain embedded sensors.
Do you want to scan for them? (YES/no): yes
AMD K8 thermal sensors... No
AMD K10 thermal sensors... No
Intel Core family thermal sensor... No
Intel AMB FB-DIMM thermal sensor... No

Now follows a summary of the probes I have just done.
Just press ENTER to continue:

Driver `w83627hf' (should be inserted):
Detects correctly:
* ISA bus, address 0x290
Chip `Winbond W83697HF/F/HG Super IO Sensors' (confidence: 9)

Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no): no
To load everything that is needed, add this to one of the system
initialization scripts (e.g. /etc/rc.d/rc.local):

#----cut here----
# Chip drivers
modprobe w83627hf
/usr/local/bin/sensors -s
#----cut here----

If you have some drivers built into your kernel, the list above will
contain too many modules. Skip the appropriate ones! You really
should try these commands right now to make sure everything is
working properly. Monitoring programs won't work until the needed
modules are loaded.

root@Knoppix:/#
---------------------------------------------------------
begin file:///usr/local/bin/sensors-detect script output

I answered yes to everything except when it says it can modify my
/etc/sysconfig/lm-sensors for me. I had already done so before.
Just make sure you get all those files set up before you reboot to test it.
I had caused a kernel oops when I forgot to do the modprobe line at one point.

In short.
Download the source tarball and extract to the desktop, and build then install it.
Let sensors-detect modify or create /etc/sysconfig/lm-sensors
Create your knoppix.sh to load the recommended driver like mine
and the /usr/local/bin/sensors -s line last.
Add a working init script like my /etc/init.d/lm-sensors

You can then download and install the Kima .deb file.
After doing so... you can add kima to your taskbar by right clicking the tray area and picking
Add Applet to Panel... and picking Kima.