La temperature de votre disque dur

Posté par  (site web personnel) . Modéré par Fabien Penso.
Étiquettes :
0
11
jan.
2002
Linux
J'ai écris une babiole qui permet de connaître la température du disque dur.

La chose ne reconnait que 3 types de disques pour l'instant, et seulement des disques IBM (les seuls auxquels j'ai pû avoir accès à la doc et les seuls dont je dispose).
J'aurais donc besoin de personnes pour tester sur d'autres disques et tester tout cours la chose. Une liste (surement non exaustive) de disques supportant cette fonctionnalité est disponible dans le second lien.

Merci pour votre aide.

PS: je suis prêt si cela interesse des gens à en faire une version X11 dockable pour WindowMaker.

Aller plus loin

  • # Moi ça m'interesse

    Posté par  . Évalué à 8.

    Moi ça m'interesse; mais j'ai un seagate (dans la liste de ceux qui ont une sonde)...

    y'a quoi comme logiciels qui gèrent ça sinon ?
    • [^] # Re: Moi ça m'interesse

      Posté par  (site web personnel) . Évalué à 4.

      Sous Windows y a ça:
      http://www.siguardian.com/products/hddtemperature/index.html(...)
      http://private.peterlink.ru/tochinov/(...)
      et un autre que je n'arrive plus à retrouver.

      Sinon sous Linux j'en connais pas.
      • [^] # Re: Moi ça m'interesse

        Posté par  . Évalué à 1.

        Si tu pouvois bosser sur les seagate, ça me générait pas :)

        je suis dispo pour tester..
        • [^] # Re: Moi ça m'interesse

          Posté par  (site web personnel) . Évalué à 7.

          T'as essayé avec l'option -q ?
          Ca te donne un résultat incohérent ou bien il ne trouve pas de sonde ?
          • [^] # Re: Moi ça m'interesse

            Posté par  . Évalué à 5.

            [root@chaos hddtemp-0.1]# ./hddtemp -q /dev/hda
            /dev/hda: ST340016A: 32°C


            c'est possible ?



            Si ça marche, une version dockapp wmaker serait en effet une bonne idée... cela dit, avec la multiplication des dockapps, ça serait bien de l'intégrer dans un ensemble plus vaste.
            • [^] # Re: Moi ça m'interesse

              Posté par  (site web personnel) . Évalué à 2.

              Dans ma tour Antec est bien ventilé mon IBM descend même à 26-27°C.
              Donc oui ça me parait possible.
              Mais je n'arrive pas à trouver la spec pour les Seagate.
              • [^] # Re: Moi ça m'interesse

                Posté par  . Évalué à 8.

                Ca à l'air de marcher en tout cas.

                C'est quoi la plage de temperature idéale et qu'est sont les plages critiques ?
            • [^] # Re: Moi ça m'interesse

              Posté par  . Évalué à 3.

              En fait, histoire de ne pas avoir que la temperature d'affichée, ça serait bien si la dockapp affichait la taille du HD, son utilisation et ce genre de conneries (I/O) quoi...
            • [^] # Ca marche aussi sur les seagate!

              Posté par  . Évalué à 6.

              comme yeupou j'ai un seagate, et ca a l'air de marcher aussi

              root:/tmp/hddtemp-0.1# ./hddtemp /dev/hda
              WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for
              now.
              WARNING: The temperature shown could be wrong
              WARNING: Let me (coredump@free.fr) know if it works with your drive.
              /dev/hda: ST380021A: 31°C

              Et vu que le sensor de la carte mere me dit que la temperature dans le boitier est de 27°C ca m'a l'air cohérent comme résultat.
            • [^] # Re: Moi ça m'interesse

              Posté par  . Évalué à 4.

              cela dit, avec la multiplication des dockapps, ça serait bien de l'intégrer dans un ensemble plus vaste.
              Moi je verrais bien ça en plug'in Gkrellm...

              POur revenir au test : voilà ce que ça donne chez moi :
              WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
              WARNING: The temperature shown could be wrong
              WARNING: Let me (coredump@free.fr) know if it works with your drive.
              /dev/hda: IBM-DARA-206000: no sensorWARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
              Donc (voir commentaire un peu plus bas) sur les DARA-* pas de sensor.

              J'essaye un IBM DJSA-220 (plus récent) et je donne les résultats. Faut juste que je monte le disque, et que j'installe un OS...
            • [^] # Re: Moi ça m'interesse

              Posté par  (site web personnel) . Évalué à -1.

              plugin gkrellm? ca serait mieux qu'une dockapp je trouve... enfin ca serait bien quoi =)
  • # Ca marche sur les HD de portables ?

    Posté par  (site web personnel) . Évalué à 9.

    J'ai un disque dur "^IBM-DARA-.*$" qui est un disque dur de 2"5, malheureusement il n'a pas l'air d'avoir de sonde.

    M'enfin tu peux toujours ajouter ce type de disque au "supported _drives.h"...
    # ./hddtemp /dev/hda
    /dev/hda: IBM-DARA-206000: no sensor
  • # 38°C

    Posté par  (site web personnel) . Évalué à 10.

    Je viens de tester sur un IBM 75 GXP (IBM-DTLA-307020) branché sur une carte Promise UDMA100 et ça marche bien(tm). Merci pour ton prog.

    Je trouve 38°C. Ca m'a l'air raisonnable mais je ne connais pas les valeurs communément admises. A partir de quelle température doit on considérer que le disque chauffe trop ?

    Pensez à l'environnement avant d'imprimer ce commentaire - Please consider the environment before printing this comment

    • [^] # Re : 38°C

      Posté par  . Évalué à 3.

      regarde dans la doc technique sur le site du constructeur de ton disque, ils doivent donner la gamme de température dans lequel ton disque dois fonctionner
      • [^] # Re: Re : 38°C

        Posté par  (site web personnel) . Évalué à 4.

        Justement, j'avais trouvé un PDF sur le site d'IBM avec tous les détails techniques mais il n'y a pas tout à fait ce que je cherche.
        Ils donnent comme intervalle de températures en fonctionnement de 5 à 55°C. Mais à mon avis ces valeur correspondent à aux températures extérieures dans lequel l'utilisateur doit placer son disque.
        Rien n'indique dans cette doc quelle température intérieure le disque ne doit pas dépasser même si dans une atmosphère à 5°C il a moins de chances de se déteriorer que dans atmosphère à 55°C.

        Pensez à l'environnement avant d'imprimer ce commentaire - Please consider the environment before printing this comment

        • [^] # température de fonctionnement

          Posté par  (site web personnel) . Évalué à 7.

          Je n'y connais pas grand chose, mais la plupart des composants électroniques ont des températures de fonctionnement d'environ 50°C.

          Quand on dépasse les 80 °C c'est généralement plutôt mauvais signe (mais certaines cartes vidéo y montent !)

          Bref ce doit être équivalent pour un disque dur.
          27 °C au repos et presque 50°C en fonctionnement continu, me semble "normal"
    • [^] # Re: 38°C

      Posté par  (site web personnel) . Évalué à 8.

      Sur un 75GXP du boulot j'ai un 45°C constant.
      Chez moi sur 22GXP mal ventilé (pour cause de bruit) et dans un placard, j'arrive à 41°C.
      Et toujours chez moi sur un 60GXP bien ventilé je suis en dessous des 30°C.
    • [^] # Re: 38°C

      Posté par  . Évalué à 5.

      skippy:/home/jal/tmp/hddtemp-0.1# ./hddtemp /dev/hdd /dev/hdc
      /dev/hdd: IC35L040AVER07-0: 44°C
      /dev/hdc: IBM-DTLA-307030: 48°C


      De la balle ....
      bon va falloir que je ventile un peu tout ca moi ...

      Sinon ya quoi d'autre comme info qui sont recuperables ?
      • [^] # Re: 38°C

        Posté par  . Évalué à 6.

        Tiens, c'est rigolo, on a le même disque :

        [root@luggage hddtemp-0.1]# ./hddtemp /dev/hda /dev/hdc
        /dev/hda: IC35L060AVER07-0: 21°C
        /dev/hdc: QUANTUM FIREBALLlct10 15: no sensor
        [root@luggage hddtemp-0.1]#

        Le fireball a pas de sensor, comme prévu.

        Secondemachine, même pas la peine d'espérer grand chose vu l'age :

        [root@rincevent kadreg]# ./hddtemp /dev/hda /dev/hdb
        /dev/hda: Maxtor 71629 AP: no sensor
        /dev/hdb: QUANTUM BIGFOOT_CY4320A: no sensor
        [root@rincevent kadreg]#
        • [^] # Re: 38°C

          Posté par  . Évalué à 6.

          Ici /dev/hda: IC35L060AVER07-0: 27°C
          <p>
          Ce disque était brulant avant que je ne change de boîtier. En effet, j'avais une midi-tour de base, sans ventilo en dehors de l'alim, maintenant g une grande tour Enermax FS 710 avec son alim et 3 ventilateurs 8 cm. Faut croire que ca fait une sacrée différence... (le nouveau boîtier est fermé et sa température tourne autour de 18°C, ce qui est à peu de choses près la température de la pièce)
          • [^] # Re: 38°C

            Posté par  . Évalué à 5.

            T'affole pas, je venais de booter, il s'est maintenant stabilisé :

            [kadreg@luggage]/home/kadreg/hddtemp-0.1$ ./hddtemp /dev/hda
            /dev/hda: IC35L060AVER07-0: 38°C
            [kadreg@luggage]/home/kadreg/hddtemp-0.1$
            • [^] # Re: 38°C

              Posté par  . Évalué à 5.

              C'est bizarre, moi quand j'ai booté ce matin, c'était à 9°C.

              Petit à petit, ça monte, là c'est à
              [moa@chaos moa]$ hddtemp /dev/hda -q
              /dev/hda: ST340016A: 30°C
              pour
              [moa@chaos moa]$ uptime
              12:00pm up 1:15, 0 users, load average: 0.77, 0.37, 0.22

              Hier, il est resté à 32°C de manière constante jusqu'à l'arrêt, je suppose qu'il va en être de même.
  • # wmDockableuh !?

    Posté par  . Évalué à 10.

    > PS: je suis prêt si cela interesse des gens à en faire une version X11 dockable pour WindowMaker.
    Oui oui oui !

    Moi ca m'interesse d'avoir ce dock, et je ne pense pas être le seul.

    Par ailleurs, je me demande dans quelle mesure cela pourrait possible d'integrer ton dev comme plug-in pour gkrellm, parce que pour de la supervision, c'est Cool (tm)(c) :)
    • [^] # Re: wmDockableuh !?

      Posté par  (site web personnel) . Évalué à 4.

      OK, je note WindowMaker et gkrellm (que je ne connais pas).
      • [^] # Re: wmDockableuh !?

        Posté par  . Évalué à 4.

        Et tant qu'a faire , un petit script pour mrtg ?
        • [^] # Re: wmDockableuh !?

          Posté par  (site web personnel) . Évalué à 6.


          #!/bin/sh

          # Choisir le plus approprié : (non, pas de test du paramètre éventuel)
          # drive=$1
          drive="/dev/hda"

          # Récupère la sortie du programme
          line=`./hddtemp -q $drive`

          # Ne garde que le troisième champs (xx°C)
          temp_str=`echo $line | cut -d " " -f 3`

          # Vire le "°C" pour ne garder que la valeur entière
          temp=`echo $temp_str | sed "s/°C//"`

          echo $temp
          echo $temp
          # pas absolument nécessaire, mais la doc dit que :)
          uptime
          echo "HDD temp : $drive"


          Je ne peux pas le tester en live (pas de capteur sur le HDD du 'serveur'), mais ça semble être correct.
          Toute amélioration ou correction est bien sûr la bienvenue.
          • [^] # Re: wmDockableuh !?

            Posté par  (site web personnel) . Évalué à 8.

            Je mettrais plutôt directement:

            temp=`hddtemp $1 | sed 's/^.* \([0-9]*\).*$/\1/'`
            • [^] # Re: wmDockableuh !?

              Posté par  (site web personnel) . Évalué à 2.

              Oui, je sais. J'ai la (mauvaise ? bonne ?) habitude de décortiquer les problèmes en petits bouts...
              En plus, je ne me sens pas encore aussi à l'aise que je le voudrais avec les regexps :(

              -1 parce que mavie
          • [^] # envoyé à coredump, mais ça peut vous interesser

            Posté par  . Évalué à 5.

            avec wminfo
            http://boombox.campus.luth.se/wminfo.htm(...)

            il est très simple de faire afficher la température, il sufit d'écrire un
            petit greffon en bash

            pour utiliser hddtemp avec j'ai bricolé ce petit greffon

            [ "$2" == "" ] ; then
            hddtemp -q $1 | sed s@"$1: "@""@g
            else
            hddtemp -q $1 | sed s@" $2: "@""@g | sed s@"/dev/"@""@g
            fi


            du coup, en lançant
            wminfo -p "hddtemp.wmiplugin /dev/hda ST340016A" -u 60

            j'ai un truc qui va bien !
            qui m'affiche
            HDA: 32 C


            (note que le paquet de wminfo n'installe pas les plugins dans /usr/local/bin,
            faut donc rajouter un
            cp ../plugins/* /usr/local/bin au makefile

            --
            mathieu
          • [^] # Re: wmDockableuh !?

            Posté par  . Évalué à 3.

            # Choisir le plus appropri? : (non, pas de test du param?tre ?ventuel)
            # drive=$1
            drive="/dev/hdc /dev/hdd"

            # un joli regexp
            temp=`hddtemp $drive`

            temp1=`echo $temp | cut -f 3 -d ":" | sed 's/^ \([0-9]*\).*$/\1/'`000
            temp2=`echo $temp | cut -f 5 -d ":" | sed 's/^ \([0-9]*\).*$/\1/'`000

            echo $temp1
            echo $temp2


            --
            voila ... eh bah ca marche pas avec mrtg ;(((
            apperrment .. bah je sais pas pourquoi il aime pas ;( ..
            ptet que le script est trop lent ?
            quelqu'un a reussi avec mrtg ?
    • [^] # gkrellm

      Posté par  . Évalué à 0.

      J'utilise pas windowmaker, par contre une applet gkrellm m'intéresserait beaucoup.
  • # sous cygwin ?!

    Posté par  . Évalué à -1.

    ça ne compile pas sous cygwin, j'ai une chance que ça marche un jour ou je me rabats sur les utilitaires Windows(tm) ?
    • [^] # Re: sous cygwin ?!

      Posté par  (site web personnel) . Évalué à 2.

      Aucune chance que ça marche, sauf si quelqu'un en fait l'adaptation parce que j'ai quasiment jamais programmé sous Windows.
      Donc essaye les liens si dessus.
      • [^] # Re: sous cygwin ?!

        Posté par  . Évalué à -1.

        arrêtes de déconner, je réussis à compiler WindowMaker 0.80.0 sans rien toucher au code source, et il n'est pas prévu pour Windows, ça n'a rien à voir avec windows (ou pas grand chose)
        • [^] # Re: sous cygwin ?!

          Posté par  (site web personnel) . Évalué à 4.

          Nan je déconne pas.
          Et c'est pas parce que tu as réussi, que le code de WindowMaker n'est pas adapté pour compiler sous Windows.
          Mais si tu es si fort, fait l'adaptation du code et envoie moi un patch, j'en serais fort content.
          C bô l'OpenSource.
          Si tu me trouves les bon paramètres à passer à ioctl et si Windows le permet, il sera effectivement très simple de l'adapter.
  • # Merci

    Posté par  (site web personnel) . Évalué à 10.

    Merci à tous pour toutes vos réponses.
    J'essayerais de répondre à tous le monde.

    J'ai déjà retravaillé un peu hddtemp et je compte rajouter une option pour que vous puissiez me faire des rapports plus facilement.

    En attendant vous pouves tester si votre disque possède une sonde en utilisant les softs sités plus haut ou les disquettes comme celles fournient par IBM:
    IBM Feature Tool: http://www.storage.ibm.com/hdd/support/download.htm(...)

    Pour les autres constructeurs je n'ai pas cherché car je ne peux pas tester.
  • # Avec disque Maxtor

    Posté par  (site web personnel) . Évalué à 10.

    Ca semble aussi marcher avec les disques Maxtor. La température fournie pour le Maxtor peut paraître élevée, mais comme l'IBM est déja à 46°C et qu'au toucher le Maxtor est plus chaud que l'IBM, la valeur indiquée doit être bonne. Il faut juste que je ventile un peu (beaucoup ?) plus.

    /dev/hda: IBM-DTLA-307030: 46°C
    WARNING: Drive /dev/hdc doesn't seems to be an IBM drive. Only IBM drives are supported for now.
    WARNING: The temperature shown could be wrong
    WARNING: Let me (coredump@free.fr) know if it works with your drive.
    /dev/hdc: MAXTOR 6L060J3: 51°C

    Sinon, outre le fait d'en faire un applet windowmaker, je pense qu'il est aussi possible de créer un répertoire dans /proc un peu à la manière de lm-sensors (voir intégrer ce code dans lm-sensors). Ainsi, on a plus besoin d'applet spécifique, mais seulement d'applets fonctionnant avec lm-sensors moyennant peu ou pas du tout de modification.
    • [^] # Re: Avec disque Maxtor

      Posté par  (site web personnel) . Évalué à 2.

      Oui j'y ai pensé, mais il semblerait que cela ne soit pas vraiment standard et donc le programme nécessite une base de connaissance sur les disques (d'où ma demande pour des tests). Sur le retour que j'ai pour l'instant, seul mon 22GXP sort du lot. J'aimerais bien que des gens me disent qu'ils ont un disque qui possède une sonde et que hddtemp dit qu'il n'en trouve pas.
      De plus rien ne sert charger le noyau avec des choses inutiles et qui peuvent très bien être faites en mode utilisateur.

      Merci pour l'info sur le Maxtor.
    • [^] # Re: Avec disque Maxtor

      Posté par  . Évalué à 2.

      Avec un Seagate
      /dev/hdb: ST310216A: 51°C
      C'est 51 ° aussi. Serait-ce un hasard ?
  • # Nouvelle version

    Posté par  (site web personnel) . Évalué à 9.

    http://coredump.free.fr/linux/hddtemp-0.2.tar.gz(...)

    Cette nouvelle version dispose d'options en plus et utilise un fichier pour le stockage de la base de disques connus.
    Si vous savez que votre disque possède une sonde et que hddtemp ne trouve pas la sonde, il vous est possible d'essayer de trouver le bon champ et d'enrichir la base.

    Si cette nouvelle version ne marche plus alors que l'ancienne marchait, dîtes le moi, c'est que la valeur que j'ai mis dans la hddtemp.db est mauvaise.
    J'ai rajouté des entrées dans hddtemp.db avec ce que j'ai reçu comme réponses.

    Voilà.
    • [^] # Re: Nouvelle version

      Posté par  (site web personnel) . Évalué à 5.

      [root@taz hddtemp-0.2]# ./hddtemp -q /dev/hda
      /dev/hda: WDC AC310100B: no sensor
      [root@taz hddtemp-0.2]# ./hddtemp -q /dev/hdb
      /dev/hdb: WDC AC2850F: no sensor

      bon, mon maxtor d740x-6l fonctionnera peut-etre qd je l'aurai branché ;)
      • [^] # Re: Nouvelle version

        Posté par  (site web personnel) . Évalué à 2.

        et l'option --debug donne quoi ?
      • [^] # Re: Nouvelle version

        Posté par  (site web personnel) . Évalué à 2.

        Est-ce qu'on a une chance d'avoir un Western Digital avec une sonde ou ils sont tous fait sans sonde ?

        Parce que les miens, à premières vus n'ont pas de sondes (mêmes avec d'autres utilitaires).
        C'est bien dommage car j'ai presque que des WD chez moi...
    • [^] # Re: Nouvelle version

      Posté par  . Évalué à 2.

      hddtemp: Can't open /usr/share/hddtemp.db: No such file or directory

      Aller chercher par defaut dans /usr/share c'est pas tiptop ... un ptit /local/hddtemp/ c plus 'logique' ?

      sinon pour moi ca marche toujours ..

      /dev/hda: QUANTUM FIREBALL EL5.1A: no sensor
      /dev/hdc: IBM-DTLA-307030: 47°C
      /dev/hdd: IC35L040AVER07-0: 43°C
      • [^] # Re: Nouvelle version

        Posté par  (site web personnel) . Évalué à 2.

        /usr/share ça le fait pas ?
        sinon y a l'option -f qui est dispo.
        /etc ne me semble pas une bonne idée non plus, car c pas vraiment un fichier de conf.
    • [^] # Re: Nouvelle version

      Posté par  . Évalué à 6.

      tu pourrais rajouter ça à ton Makefile


      install:
      cp -fv hddtemp /usr/local/bin
      mkdir -pv /usr/local/etc/hddtemp
      cp -fv hddtemp.db /usr/local/etc/hddtemp
      ln -s /usr/local/etc/hddtemp/hddtemp.db /usr/share/hddtemp.db

      (il y a un tab au début de chaque ligne sauf install:)
  • # Snif...

    Posté par  (site web personnel) . Évalué à 3.

    Mon beau n'IBM, il marche pô...

    WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
    WARNING: The temperature shown could be wrong
    WARNING: Let me (coredump@free.fr) know if it works with your drive.
    /dev/hda: IBM-DPTA-372050: no sensor

    C'est con en plus, ça m'intéresserait bien, vu que j'ai l'impression d'avoir des données corrompues de temps en temps (faut dire que les plombs qui sautent, ça n'aide pas).
    • [^] # Re: Snif...

      Posté par  (site web personnel) . Évalué à 2.

      Bizarre. Il est pourtant plus récent que mon 22GXP.
      Envoie moi le résultat de l'option --debug (par mail).
  • # Tests

    Posté par  (site web personnel) . Évalué à 3.

    Marche aussi sur mac (sous debian): (disque IBM 45Go)

    # ./hddtemp /dev/ide/host0/bus0/target0/lun0/disc
    /dev/ide/host0/bus0/target0/lun0/disc: IBM-DTLA-307045: 37°C

    et sur un PC: (disque IBM 40Go)
    # ./hddtemp /dev/hda
    /dev/hda: IC35L040AVER07-0: 40°C
    (normal, le disque est pas ventilé, et le boitier est ouvert)

    Ca serait bien la même chose pour les disques SCSI :)
    • [^] # Re: Tests

      Posté par  (site web personnel) . Évalué à 2.

      Ah, j'oubliais sur un mac aussi (sous debian) avec disque d'origine 30Go Maxtor:
      # ./hddtemp /dev/hda
      WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
      WARNING: The temperature shown could be wrong
      WARNING: Let me (coredump@free.fr) know if it works with your drive.
      /dev/hda: Maxtor 53073U6: no sensor
      • [^] # Re: Tests

        Posté par  (site web personnel) . Évalué à 2.

        Bon, et j'ai oublié aussi 2 portables mac: (sous debian)
        disque 20Go IBM:
        # ./hddtemp /dev/hda
        WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
        WARNING: The temperature shown could be wrong
        WARNING: Let me (coredump@free.fr) know if it works with your drive.
        /dev/hda: IBM-DJSA-220: no sensor


        et sur un autre ibook (ben ouais, c'est le meme disque! mais c'est pas du tout la meme machine)
        # ./hddtemp /dev/hda
        WARNING: Drive /dev/hda doesn't seems to be an IBM drive. Only IBM drives are supported for now.
        WARNING: The temperature shown could be wrong
        WARNING: Let me (coredump@free.fr) know if it works with your drive.
        /dev/hda: IBM-DJSA-220: no sensor
    • [^] # Re: Tests

      Posté par  (site web personnel) . Évalué à 4.

      Je n'ai pas été très clair en fait.
      Les commandes S.M.A.R.T. ne sont pas accessibles via les interfaces SCSI (pour l'instant).
      Donc hddtemp ne peut que fonctionner avec des disques IDE.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.