Provided by: hddtemp_0.3-beta14-6_i386 bug


       hddtemp - Utility to monitor hard drive temperature


       hddtemp [options] [type:]disk...


       hddtemp  will  give  you  the temperature of your hard drive by reading
       Self-Monitoring  Analysis   and   Reporting   Technology   (S.M.A.R.T.)
       information  on  drives  that  support  this feature.  Only modern hard
       drives have a temperature sensor.  hddtemp supports reading  S.M.A.R.T.
       information  from  SCSI drives too.  hddtemp can work as simple command
       line tool or as a daemon.

       You can specify one or more device drive path, where each path  can  be
       prefixed  with  a type like PATA, SATA or SCSI to force hddtemp too use
       one of these type (because detection can fail).


       The program follows the  usual  GNU  command  line  syntax,  with  long
       options  starting  with  two  dashes  (‘-’).   A  summary of options is
       included below.

       -b, --drivebase
              Display the database file that allows  hddtemp  to  recognize  a
              supported drive.

       -D, --debug
              Display  various S.M.A.R.T. fields and their values.  Useful for
              finding a value that seems to match the  temperature  and/or  to
              send a report.  (done for every drive supplied)

       -d, --daemon
              Execute hddtemp in TCP/IP daemon mode (port 7634 by default).

       -f, --file=file
              Specify the database file to use.

       -l, --listen=addr
              Listen  on  a  specific  address.  addr is a string containing a
              host name or a numeric host address string.   The  numeric  host
              address  string  is a dotted-decimal IPv4 address or an IPv6 hex

       -n, --numeric
              Print only the temperature (without the unit).

       -p, --port=#
              Port number to listen to (in TCP/IP daemon mode).

       -s, --separator=char
              Separator to use between fields (in TCP/IP  daemon  mode).   The
              default separator is ‘|’.

       -S, --syslog=s
              Switch  to  daemon  mode  and log temperatures to syslog every s

       -q, --quiet
              Don’t check if the drive is supported.

       -v, --version
              Display hddtemp version number.

       -w, --wake-up
              Wake-up the drive if needed (ATA drives only).

       -4     Listen on IPv4 sockets only.

       -6     Listen on IPv6 sockets only.


       If you know your drive  has  a  temperature  sensor  but  it  is  being
       reported unsupported, tell me which model and which manufacturer it is,
       and/or  just  add  a  new  entry  in  /etc/hddtemp.db.   Each  line  of
       hddtemp.db is either a comment, a blank line or a line containing:

       - a regular expression that allow hddtemp to recognize a drive or a
              set of drives from its model name or from a generic model name,

       - a value (ATTRIBUTE_ID from S.M.A.R.T.),

       - a C or an F to set the unit to Celsius or Fahrenheit,

       - a description.

       Feedback is welcome (see the REPORT section below).


       Exemple of type forcing:

       # hddtemp SATA:/dev/sda PATA:/dev/hda

       To test hddtemp in daemon mode, start it like this:

       # hddtemp -d /dev/hd[abcd]

       and  use telnet or netcat (which is known as nc on some systems) to get
       a reply:

       # netcat localhost 7634

       The drive database is read only once at startup,  so  hddtemp  must  be
       restarted if the database is updated for the changes to take effect.


       As  I receive a lot of reports, things must be clarified.  When running
       hddtemp with debug options,  hddtemp  will  show  sort  of  a  dump  of
       S.M.A.R.T.  data.  Each field corresponds to an information field.  The
       standard field for drive temperature is 194.  But this  is  not  always
       the  case.   Even if your drive has S.M.A.R.T. capabilities, it doesn’t
       necessarily mean that it can report its temperature.  So,  things  must
       be determined through experimentation.

       So,  you  can  try  to  guess which field by is the good one by running
       hddtemp at regular intervals:

        - just after starting up your PC/server/station,

        - after opening a window (a physical window :),

        - after opening the case,

        - whatever you can think of...

       and looking for  a  field’s  value  that  would  increase  or  decrease
       depending  on what effect you want to induce.  Be careful, fields 4, 9,
       and 12 are often reported to match a temperature field but  after  some
       investigation they do not.  But fields 194 (which is the standard field
       for temperature) and 231 are good candidates.

       Then, you can send me a report with outputs from ‘hddtemp --debug ...’,
       ‘smartctl’  or  ‘hdparm  -i  ...’,  and/or  add  an entry in hddtemp.db


       If hddtemp crashes (yes, it might) for some unknown reasons, look for a
       file  named  hddtemp.backtrace.<PID>.XXXXXX  (where  XXXXXX is a random
       number generated at runtime) in /tmp.  Then, you can then send me  this
       file  and the hddtemp binary.  The backtrace functionality is currently
       supported on i386 architectures only.


       smartctl(8), syslog(3), syslogd(8).


       Emmanuel Varagnat (

       This  manual   page   was   originaly   written   by   Aurelien   Jarno
       <>,  for the Debian GNU/Linux system (but may be used
       by others).

                                 July 21, 2003                      HDDTEMP(8)