Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a Dell Precision M4500, Intel Core i5 CPU, running Linux (Ubuntu Lucid), and would like to keep an eye on CPU temperature.

I've tried lm-sensors: sensors-detect didn't find any sensors; following its hint ("This is relatively common on laptops, where thermal management is handled by ACPI rather than the OS.") I tried acpi -V but got nothing thermal. The Gnome panel applet "Hardware Sensors Monitor" reports on GPU temperature but nothing else.

What should I be trying next?

share|improve this question
add comment

4 Answers

up vote 0 down vote accepted

I find a cpu temp for m4500 here:

cat /sys/kernel/debug/ips/cpu_temp
share|improve this answer
add comment

I got sensors to work on mine (linux mint debian) by loading the coretemp module:

sudo modprobe coretemp

Then run sensors again.If that works, make it permanent by:

sudo echo "coretemp" >> /etc/modules

You can also install i8kutils, then load the i8k module and get the temp from /proc/i8k:

sudo apt-get install i8kutils 
sudo modprobe i8k
cat /proc/i8k | cut -d " " -f 4

Also have a look at dellfand. Note that I had to add #include <sys/stat.h>to dellfand.cc to get it to compile. Once installed you can play with the fan speeds. eG:

sudo ./dellfand 0 3 40 50 65
sudo ./dellfand 0 0.2 25 40 65
share|improve this answer
add comment

Dell uses proprietary motherboard sensor communication which are masked from most utilities, all I can suggest is to try as many different utilities as you can find.

share|improve this answer
add comment

This may be equivalent to what Gnome and/or lm-sensors uses, but then maybe not. To be honest, I'm pretty uninformed about the details of this issue; mostly I just know how to root around for stuff, and know where the temperature info is usually at and what it looks like.

On my Dell (a trooper pentium M laptop from about 6 years ago),

$ cat /sys/devices/virtual/thermal/thermal_zone0/temp

will print the current temperature in thousandths of degrees Celsius. This particular location is I think the standard one, though there are others. For instance, it's also available at /sys/devices/virtual/hwmon/hwmon0/temp1_input. I'm not sure if this is the same sensor or not.

If that doesn't work, you could try

$ find /sys -iname "*temp*" -or -iname "*ther*"

for a fairly brute-squad approach (*ther* will catch "thermal" and generally not much else).

If you don't find it that way, I guess you could be the brute squad and do something like

$ find /sys/ -type f | while read f; do
  if grep -q '^[0-9]\{5\}$' $f
    && (( $(wc -l $f | cut -f 1 -d \ ) == 1 ));
  then
    echo $f;
  fi;
done 2>/dev/null;

which should print out all files that are one line long and consist of 5 digits, which is generally how these pseudo-files look.

If you don't find it, you can broaden the search a bit by changing \{5\} to \+ to find any number of digits, and/or adding a . after the 9 in the character range [0-9]. Doing both of those will let you catch floating-point representations, though it seems very unlikely that they'd be doing it that way.

I'm not sure how useful either of these approaches will be, since the information may not be in sysfs (ie /sys/...) at all. You might be able to find it under /proc/ instead, using similar techniques — but filter out the numbered directories, and /proc/self, or you'll end up searching metadata for all the processes on your system.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.