LINUX:Surveiller la température
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