#### Beyond Linux® From Scratch (systemd Edition) - Version 11.1

### Chapter 12. System Utilities

- Prev

  LSB-Tools-0.9

- Next

  Logrotate-3.19.0

- Up
- Home

# lm-sensors-3-6-0

## Introduction to lm_sensors

The lm_sensors package provides user-space support for the hardware monitoring drivers in the Linux kernel. This is useful for monitoring the temperature of the CPU and adjusting the performance of some hardware (such as cooling fans).

This package is known to build and work properly using an LFS-11.1 platform.

### Package Information

- Download (HTTP): https://github.com/lm-sensors/lm-sensors/archive/V3-6-0/lm-sensors-3-6-0.tar.gz

- Download MD5 sum: f60e47b5eb50bbeed48a9f43bb08dd5e

- Download size: 268 KB

- Estimated disk space required: 2.6 MB

- Estimated build time: less than 0.1 SBU

### lm_sensors Dependencies

#### Required

Which-2.21

#### Optional

RRDtool (required to build the sensord program)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/lm_sensors

## Kernel Configuration

Getting your kernel config right is an iterative process that may require that you recompile your kernel a couple of times. The simplest way to go about it is to start by enabling modules and then compile everything that may be needed by Lm Sensors as a module:

    Bus options (PCI etc.)  --->
      [*] PCI support                         [CONFIG_PCI]

    [*] Enable loadable module support  --->  [CONFIG_MODULES]

    Device Drivers  --->
      I2C support --->
        <*/M> I2C device interface            [CONFIG_I2C_CHARDEV]
        I2C Hardware Bus support  --->
          <M> (configure all of them as modules)
      <*/M> Hardware Monitoring support  ---> [CONFIG_HWMON]
        <M> (configure all of them as modules)

Recompile your kernel and reboot into the new kernel. Don't forget to make modules_install We will come back to the kernel in the Configuring section below.

## Installation of lm_sensors

Install lm_sensors by running the following commands:

    make PREFIX=/usr        \
         BUILD_STATIC_LIB=0 \
         MANDIR=/usr/share/man

This package does not come with a test suite.

Now, as the `root` user:

    make PREFIX=/usr        \
         BUILD_STATIC_LIB=0 \
         MANDIR=/usr/share/man install &&

    install -v -m755 -d /usr/share/doc/lm_sensors-3-6-0 &&
    cp -rv              README INSTALL doc/* \
                        /usr/share/doc/lm_sensors-3-6-0

## Command Explanations

`BUILD_STATIC_LIB=0`: This parameter disables compiling and installing the static version of `libsensors`.

`PROG_EXTRA=sensord`: This parameter enables compiling sensord, a daemon that can monitor your system at regular intervals. Compiling sensord requires RRDtool. Compiling RRDtool 1.4.6 requires a sed: sed -i '/ sv_undef/d' bindings/perl-shared/RRDs.xs.

## Configuring lm_sensors

###

#### Config File

`/etc/sensors3.conf`

###

#### Configuration Information

To find out what hardware sensors your system has, issue the following command as the `root` user:

    sensors-detect

The appropriate modules should have been loaded and a summary is displayed at the end. Now you know what is needed and you can recompile your kernel to enable just the options you need (i.e., don't enable the modules you cannot use).

## Contents

Installed Programs: fancontrol, isadump, isaset, pwmconfig, sensors, sensors-conf-convert, sensors-detect, and optionally, sensord
Installed Library: libsensors.so
Installed Directories: /etc/sensors.d, /usr/include/sensors and /usr/share/doc/lm_sensors-3-6-0

### Short Descriptions

fancontrol | is a shell script for use with lm_sensors. It reads its configuration from a file, then calculates fan speeds from temperatures and sets the corresponding PWM outputs to the computed values
isadump | is a small helper program to examine registers visible through the ISA bus. It is intended to probe any chip that lives on the ISA bus working with an address register and a data register (I2C-like access) or a flat range (of up to 256 bytes)
isaset | is a small helper program to set registers visible through the ISA bus
pwmconfig | tests the pulse width modulation (PWM) outputs of sensors and configures fancontrol
sensors | prints the current readings of all sensor chips
sensors-conf-convert | is a Perl script to convert lm-sensors version 2 configuration files to work with version 3
sensors-detect | is a Perl script that will walk you through the process of scanning your system for various hardware monitoring chips (sensors) supported by `libsensors`, or more generally by the lm_sensors tool suite
sensord | (optional) is a daemon that can be used to periodically log sensor readings
`libsensors.so` | contains the lm_sensors API functions

Last updated on

- Prev

  LSB-Tools-0.9

- Next

  Logrotate-3.19.0

- Up
- Home