LINUX:Surveiller la température

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche
La version imprimable n’est plus prise en charge et peut comporter des erreurs de génération. Veuillez mettre à jour les signets de votre navigateur et utiliser à la place la fonction d’impression par défaut de celui-ci.

retour à la Surveillance


But

Une série de logiciels permettent de surveiller la température de divers éléments d'un ordinateur.

Certains servent à charger des pilotes dans le système afin d'effectuer cette surveillance sur les éléments de la machine qui le supporte.

D'autres permettent de les interroger.


Pilotes de surveillance de la température

Sensors

Les pilotes Sensors permettent de surveiller les puces de la carte mère et de divers cartes connectées sur celle-ci.


DriveTemp

Le pilote DriveTemp permet de surveiller la température des disques durs.


Consultation

Sensors

La commande:

sensors

vue dans l'article sur Sensors et DriveTemp est utilisée dans le rapport vu dans l'article sur LogWatch.


HddTemp

Ce programme permet de consulter la température des disques durs.


Installation

On doit auparavant l'installer:

dnf install hddtemp


Exécution

On peut dès lors l'exécuter en spécifiant le ou les devices ciblés:

hddtemp /dev/sd?

qui donne:


/dev/sda: WDC WD5000AAKX-001CA0: 48°C
/dev/sdb: WDC WD5000AAKX-603CA0: 49°C
/dev/sdc: ST3500320NS: 41°C
/dev/sdd: WDC WD10EALX-009BA0: 49°C

en correspondance aux disques durs de l'exemple dans l'article sur SmartMonTools.


Lshw et Inxi

Le programme "inxi" permet d'afficher diverses informations sur le système de façon plus ludique que le programme "Lshw".


Installation

Pour installer le programme "lshw", on exécute:

dnf install lshw

et pour le programme "inxi":

dnf install inxi


Exécution

Le programme est moins facile d'utilisation; voici un exemple concernant les disques durs:

lshw -class disk

qui donne:


 *-disk:0
      description: ATA Disk
      product: WDC WD5000AAKX-0
      vendor: Western Digital
      physical id: 0
      bus info: scsi@0:0.0.0
      logical name: /dev/sda
      version: 1H15
      serial: WD-WCAYUHL91712
      size: 465GiB (500GB)
      capabilities: gpt-1.00 partitioned partitioned:gpt
      configuration: ansiversion=5 guid=0f487a34-682c-49e4-83d2-dc5f2579a4da logicalsectorsize=512 sectorsize=512
 *-disk:1
      description: ATA Disk
      product: WDC WD5000AAKX-6
      vendor: Western Digital
      physical id: 0.1.0
      bus info: scsi@0:0.1.0
      logical name: /dev/sdb
      version: 1H18
      serial: WD-WCAYUHC98423
      size: 465GiB (500GB)
      capabilities: gpt-1.00 partitioned partitioned:gpt
      configuration: ansiversion=5 guid=3d1e8912-683c-4333-b733-c348c04122fc logicalsectorsize=512 sectorsize=512
 *-disk:2
      description: ATA Disk
      product: ST3500320NS
      physical id: 1
      bus info: scsi@1:0.0.0
      logical name: /dev/sdc
      version: SN06
      serial: 9QMBXHBS
      size: 465GiB (500GB)
      capabilities: gpt-1.00 partitioned partitioned:gpt
      configuration: ansiversion=5 guid=f8e6b0c1-f811-4725-ad4b-aa5a912693bf logicalsectorsize=512 sectorsize=512
 *-disk
      description: ATA Disk
      product: WDC WD10EALX-009
      vendor: Western Digital
      physical id: 0.0.0
      bus info: scsi@2:0.0.0
      logical name: /dev/sdd
      version: 1H15
      serial: WD-WCATR8931870
      size: 931GiB (1TB)
      capabilities: gpt-1.00 partitioned partitioned:gpt
      configuration: ansiversion=5 guid=c80d4448-f9ab-4e36-97ea-781308019be3 logicalsectorsize=512 sectorsize=512

Il n'affiche pas la température monitorée.


De son côté, le programme "inxi" possède nombre d'options.

Par exemple, la commande:

inxi -F

donne toutes les informations en résumé ("F" comme full).

Si on veux plus d'informations, on ajoute un "x" jusqu'à trois fois:

inxi -Fx

ou

inxi -Fxx

ou la totale:

inxi -Fxxx

Si on veux se restreindre aux disques durs, on utilise l'option "D":

inxi -D

qui donne:


Drives:
 Local Storage: total: 2.27 TiB used: 511.76 GiB (22.0%)
 ID-1: /dev/sda vendor: Western Digital model: WD5000AAKX-001CA0 size: 465.76 GiB
 ID-2: /dev/sdb vendor: Western Digital model: WD5000AAKX-603CA0 size: 465.76 GiB
 ID-3: /dev/sdc vendor: Seagate model: ST3500320NS size: 465.76 GiB
 ID-4: /dev/sdd vendor: Western Digital model: WD10EALX-009BA0 size: 931.51 GiB

La commande:

inxi -Dx

affiche en plus la température des disques:


Drives:
 Local Storage: total: 2.27 TiB lvm-free: 4 MiB used: 511.76 GiB (22.0%)
 ID-1: /dev/sda vendor: Western Digital model: WD5000AAKX-001CA0 size: 465.76 GiB temp: 48.0 C
 ID-2: /dev/sdb vendor: Western Digital model: WD5000AAKX-603CA0 size: 465.76 GiB temp: 49.0 C
 ID-3: /dev/sdc vendor: Seagate model: ST3500320NS size: 465.76 GiB temp: 41.0 C
 ID-4: /dev/sdd vendor: Western Digital model: WD10EALX-009BA0 size: 931.51 GiB temp: 49.0 C

et la totale:

inxi -Dxxx

Drives:
 Local Storage: total: 2.27 TiB lvm-free: 4 MiB used: 511.76 GiB (22.0%)
 ID-1: /dev/sda vendor: Western Digital model: WD5000AAKX-001CA0 size: 465.76 GiB
   speed: 3.0 Gb/s tech: N/A serial: WD-WCAYUHL91712 fw-rev: 1H15 temp: 48.0 C scheme: GPT
 ID-2: /dev/sdb vendor: Western Digital model: WD5000AAKX-603CA0 size: 465.76 GiB
   speed: 3.0 Gb/s tech: HDD rpm: 7200 serial: WD-WCAYUHC98423 fw-rev: 1H18 temp: 49.0 C
   scheme: GPT
 ID-3: /dev/sdc vendor: Seagate model: ST3500320NS size: 465.76 GiB speed: 3.0 Gb/s tech: HDD
   rpm: 7200 serial: 9QMBXHBS fw-rev: SN06 temp: 41.0 C scheme: GPT
 ID-4: /dev/sdd vendor: Western Digital model: WD10EALX-009BA0 size: 931.51 GiB speed: 3.0 Gb/s
   tech: N/A serial: WD-WCATR8931870 fw-rev: 1H15 temp: 49.0 C scheme: GPT


Fichiers système

Toute information est consultable directement dans les fichiers du système.

Voici un script qui donne un aperçu:


#!/bin/bash
echo -e "Device\tTempérature\tTaille\tDisque"
echo    "================================================"
liste=`grep -l "drivetemp" /sys/class/hwmon/hwmon*/name`
for disque in $liste
do
 DISQUE=`ls ${disque%/*}/device/scsi_disk/*/device/block`
 MODELE=`cat ${disque%/*}/device/model`
 TEMP=$((`cat ${disque%/*}/temp1_input`/1000))
 SECTEUR=`cat /sys/class/block/$DISQUE/size`
 BLOCK=`cat /sys/class/block/$DISQUE/queue/logical_block_size`
 TAILLE=$(($SECTEUR*$BLOCK/1000/1000/1000))
 echo -n $DISQUE
 echo -n -e "\t"
 echo -n $TEMP
 echo -n " Celcius"
 echo -n -e "\t"
 echo -n $TAILLE GB
 echo -n -e "\t"
 echo $MODELE
done

qui donne:


Device  Température     Taille  Disque
================================================
sda     48 Celcius      500 GB  WDC WD5000AAKX-0
sdb     49 Celcius      500 GB  WDC WD5000AAKX-6
sdc     41 Celcius      500 GB  ST3500320NS
sdd     49 Celcius      1000 GB WDC WD10EALX-009




retour à la Surveillance