Con la llegada del verano y los 40 grados a la sombra es conveniente echar un vistazo a las temperaturas a las que se pone el ordenador, sobre todo si este se encuentra en una habitación no climatizada y funcionando 24 h/dia (como en mi caso) . De este modo podemos preveer si vá a ser necesario actuar para bajar la temperatura y prevenir fallos, sobretodo en discos duros.

En general los discos duros suelen encontrarse a una temperatura de trabajo de entre 35-45ºC. Dependiendo de la ventilación y el ritmo de trabajo. Se debería actuar si la temperatura se aproxima a 53-55ºC. Si se superan los 55ºC y tenemos instalado y activado SMART (servicio que vigila el estado de salud de los discos duros) el programa nos avisa, bien mostrando un mensaje en pantalla ó bien enviando un email.

Un exceso de temperatura es suele ser el motivo principal de fallos y errrores en un disco duro.

La CPU suele trabajar a bastante más grados, normalmente entre 40 y 70ºC.  Aunque AMD recomienda que los Athlon no sobrepasen los 95º, las mayorías de las placas base vienen preparadas con un sistema de protección que apaga el ordenador en caso de sobrepasarse limites críticos (70-80º). Es raro que la CPU de problemas por exceso de temperatura, sinembargo hay que tener en cuenta la temperatura que se encuentra, ya que suele indicar que el ventilador esta fallando o incluso que algun cable cercano acabe derritiendose.

SMART

SMART es una tecnología que incorporan prácticamente todos los discos duros del mercado, que controla periodicamente el estado de salud de nuestros discos duros tratando de prevenir y adelantarse a errores en los procesos de escritura que podrían provocar la pérdida de datos.

Por defecto OpenSuSe instala las smartmontools, un conjunto de herramientas que nos permiten acceder a la información SMART ofrecida por nuestro disco duro y monitorizar su estado de forma periodica para actuar en caso de necesidad.

Instala smartmontools desde los repositorios oficiales o desde tu DVD de openSuse.

Para configurar smartd necesitas saber como se identifican tus discos duros. Puedes consultar el archivo /etc/fstab o escribir fdisk -l en una consola como root, devolverá algo como: Disco /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cilindros of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000c5927

Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sda1 1 523 4200966 82 Linux swap / Solaris
/dev/sda2 * 524 13578 104864287+ 83 Linux
/dev/sda3 13579 38913 203503387+ 83 Linux

Disco /dev/sdb: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cilindros of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00028188

Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sdb1 1 38913 312568641 83 Linux

Según lo anterior mis dos discos duros son /dev/sda y /dev/sdb. Ahora edita el archivo /etc/smartd.conf y adaptalo a la configuración de tu máquina ( solo la configuración y uso de smartd llevaría varios apuntes dedicados en exclusiva. A modo de ejemplo os dejo el contenido de mi propio smartd.conf, el cual está repleto de ejemplos de configuración y descripción de opciones).

/dev/sda -a -d ata -W 4,45,55 -R 5 -o on -S on -s (S/../.././11|L/../../6/01) -m trebol-a@localhost
/dev/sdb -a -d ata -W 4,45,55 -R 5 -o on -S on -s (S/../.././12|L/../../7/01) -m trebol-a@localhost

en las lineas anteriores: se definen mis dos discos duros, de que son de tipo ATA (-d ata), se monitorizan los cambios de temperatura de más de 4ºC, se producen advertencias si se superan los 45º y se emite un aviso crítico y una comunicación por correo (a -m trebol-a@localhost) si se superan los 55º. Tambien se realizan autoanalisis diarios (S/../.././11) a las 11AM y 12AM para cada disco y un analisis largo los sábados y domingos a la 1 de la mañana (L/../../7/01)

A continuación definimos un intervalo de media hora en el que smartd comprueba los discos duros editando el archivo /etc/default/smartmontools y añadiendo la opciónsmartd_opts="--interval 1800"

Lanza smartd consu
/etc/init.d/smartd start

Y activalo para que se inicie al iniciar el sistem consu
chkconfig smartd 235

Desde este momento podeis comprobar la temperatura del disco duro en una consola con (en ejemplo siguiente la primera columna -036- indica la temperatura actual en Cº la siguiente -43- el peor registro alcanzado.) :su
smartctl -A /dev/sda | grep 194
194 Temperature_Celsius     0x0022   036   043   000    Old_age   Always       -       36 (0 14 0 0)

o consultando el archivo log del sistema (tail /var/log/messages)Jul 10 16:18:39 smartd[27085]: Device: /dev/sda, Temperature changed -6 Celsius to 37 Celsius (Min/Max 37!/43)
Jul 10 16:18:39 smartd[27085]: Device: /dev/sda, SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 57 to 63
Jul 10 16:18:39 smartd[27085]: Device: /dev/sdb, Temperature changed -3 Celsius to 39 Celsius (Min/Max 39!/43)
Jul 10 16:18:39 smartd[27085]: Device: /dev/sdb, SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 57 to 61

LM_SENSORS

Para controlar la temperatura de funcionamiento de la CPU y otros, disponemos de sensors-detect, un pequeño script que escanea los dispositivos de nuestro ordenador y carga los módulos necesarios para cada máquina. En una consola, logeate como administrador y escribes:sensors-detectEl script va realizando una serie de preguntas sobre la detección de diversos dispositivos y finaliza creando un archivo de configuración /etc/sensors.conf (Si tienes dudas responde Yes a todo) y activando el servicio lm_sensors.
Al escribir sensors en una consola recibimos:k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp: +36.0°C
Core1 Temp: +44.0°C