1HDDTEMP(8)                  System Manager's Manual                 HDDTEMP(8)
2
3
4

NAME

6       hddtemp - Utility to monitor hard drive temperature
7

SYNOPSIS

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

DESCRIPTION

12       hddtemp  will  give  you  the temperature of your hard drive by reading
13       Self-Monitoring Analysis and Reporting Technology (S.M.A.R.T.)   infor‐
14       mation  on  drives  that support this feature.  Only modern hard drives
15       have a temperature sensor.  hddtemp supports reading S.M.A.R.T.  infor‐
16       mation  from  SCSI drives too.  hddtemp can work as simple command line
17       tool or as a daemon.
18
19       You can specify one or more device drive path, where each path  can  be
20       prefixed  with  a type like PATA, SATA or SCSI to force hddtemp too use
21       one of these type (because detection can fail).
22
23
24

OPTIONS

26       The program follows the  usual  GNU  command  line  syntax,  with  long
27       options  starting  with  two  dashes  (`-').   A  summary of options is
28       included below.
29
30       -b, --drivebase
31              Display the database file that allows  hddtemp  to  recognize  a
32              supported drive.
33
34       -D, --debug
35              Display  various S.M.A.R.T. fields and their values.  Useful for
36              finding a value that seems to match the  temperature  and/or  to
37              send a report.  (done for every drive supplied)
38
39       -d, --daemon
40              Execute hddtemp in TCP/IP daemon mode (port 7634 by default).
41
42       -f, --file=file
43              Specify the database file to use.
44
45       -F, --foreground
46              Don't  fork  into  the  background even in daemon mode.  This is
47              useful when running under a process supervisor.
48
49       -l, --listen=addr
50              Listen on a specific address.  addr is  a  string  containing  a
51              host  name  or  a numeric host address string.  The numeric host
52              address string is a dotted-decimal IPv4 address or an  IPv6  hex
53              address.
54
55       -n, --numeric
56              Print only the temperature (without the unit).
57
58       -p, --port=#
59              Port number to listen to (in TCP/IP daemon mode).
60
61       -s, --separator=char
62              Separator  to  use  between fields (in TCP/IP daemon mode).  The
63              default separator is `|'.
64
65       -S, --syslog=s
66              Switch to daemon mode and log temperatures  to  syslog  every  s
67              seconds.
68
69       -q, --quiet
70              Don't check if the drive is supported.
71
72       -u, --units=C|F
73              Force output temperature either in Celsius or Fahrenheit.0
74
75       -v, --version
76              Display hddtemp version number.
77
78       -w, --wake-up
79              Wake-up the drive if needed (ATA drives only).
80
81       -4     Listen on IPv4 sockets only.
82
83       -6     Listen on IPv6 sockets only.
84
85
86

DRIVE DATABASE

88       If  you  know  your  drive  has  a  temperature  sensor but it is being
89       reported unsupported, tell me which model and which manufacturer it is,
90       and/or  just  add a new entry in /usr/share/misc/hddtemp.db.  Each line
91       of hddtemp.db is either a comment, a blank line or a line containing:
92
93       - a regular expression that allow hddtemp to recognize a drive or a
94              set of drives from its model name or from a generic model name,
95
96       - a value (ATTRIBUTE_ID from S.M.A.R.T.),
97
98       - a C or an F to set the unit to Celsius or Fahrenheit,
99
100       - a description.
101
102       Feedback is welcome (see the REPORT section below).
103
104

TCP/IP DAEMON MODE

106       Example of type forcing:
107
108       # hddtemp SATA:/dev/sda PATA:/dev/hda
109
110       To test hddtemp in daemon mode, start it like this:
111
112       # hddtemp -d /dev/hd[abcd]
113
114       and use telnet or netcat (which is known as nc on some systems) to  get
115       a reply:
116
117       # netcat localhost 7634
118
119       The  drive  database  is  read only once at startup, so hddtemp must be
120       restarted if the database is updated for the changes to take effect.
121
122

REPORT

124       As I receive a lot of reports, things must be clarified.  When  running
125       hddtemp  with  debug  options,  hddtemp  will  show  sort  of a dump of
126       S.M.A.R.T. data.  Each field corresponds to an information field.   The
127       standard  field  for  drive temperature is 194.  But this is not always
128       the case (mostly for older drives).  Even if your drive has  S.M.A.R.T.
129       capabilities,  it  doesn't necessarily mean that it can report its tem‐
130       perature.  So, things must be determined through experimentation.
131
132       So, you can try to guess which field by is  the  good  one  by  running
133       hddtemp at regular intervals:
134
135        - just after starting up your PC/server/station,
136
137        - after opening a window (a physical window :),
138
139        - after opening the case,
140
141        - whatever you can think of...
142
143       and looking for a field's value that would increase or decrease depend‐
144       ing on what effect you want to induce.  Be careful, fields 4, 9, and 12
145       are often reported to match a temperature field but after some investi‐
146       gation they do not.  But fields 194 (which is the  standard  field  for
147       temperature) and 231 are good candidates.
148
149       Then, you can send me a report with outputs from `hddtemp --debug ...',
150       `smartctl' or `hdparm -i ...', and/or add an entry in hddtemp.db  your‐
151       self.
152
153

BUGS

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

SEE ALSO

163       smartctl(8), syslog(3), syslogd(8).
164
165

AUTHOR

167       Emmanuel Varagnat (hddtemp@guzu.net).
168
169       This   manual   page   was   originally   written   by  Aurelien  Jarno
170       <aurel32@debian.org>, for the Debian GNU/Linux system (but may be  used
171       by others).
172
173
174
175                                 July 21, 2003                      HDDTEMP(8)
Impressum