1THINKFAN(1)                        thinkfan                        THINKFAN(1)
2
3
4

NAME

6       thinkfan - A simple fan control program
7

SYNOPSIS

9       thinkfan [-hnqzDd] [-b BIAS] [-c CONFIG] [-s SECONDS] [-p [DELAY]]
10

DESCRIPTION

12       Thinkfan  sets the fan speed according to temperature limits preconfig‐
13       ured in /etc/thinkfan.conf. It can read temperatures from a  number  of
14       sources:
15
16       /proc/acpi/ibm/thermal
17              Which  is  provided  by the thinkpad_acpi kernel module on older
18              Thinkpads,
19
20       temp*_input files in sysfs
21              Which  may  be  provided  by  any   hwmon   drivers,   including
22              thinkpad_acpi on modern Thinkpads,
23
24       S.M.A.R.T., e.g. /dev/sda,
25              Which  reads  the  temperature directly from the hard disk using
26              libatasmart, and
27
28       directly from nVidia GPUs,
29              In case the proprietary nVidia driver is used, no hwmon for  the
30              card  will be available. In this situation, thinkfan can use the
31              proprietary NVML API to get temperatures.
32
33       The fan can be /proc/acpi/ibm/fan or some PWM file in /sys/class/hwmon.
34       See thinkfan.conf(5) for a detailed explanation of the config syntax.
35
36
37       WARNING:  This program does only very basic sanity checking on the con‐
38              figuration. That means that you can set your temperature  limits
39              as insane as you like.
40
41       There are two general modes of operation:
42
43   COMPLEX MODE
44       In  complex mode, temperature limits are defined for each sensor think‐
45       fan knows about. Setting suitable limits for each sensor in your system
46       will probably require a bit of experimentation and good knowledge about
47       your hardware, but it's the safest way of keeping each component within
48       its          specified          temperature          range.         See
49       http://www.thinkwiki.org/wiki/Thermal_Sensors for details on which sen‐
50       sor  measures  what  temperature in a Thinkpad. On other systems you'll
51       have to find out on your own. See the example configs  to  learn  about
52       the syntax.
53
54   SIMPLE MODE
55       In simple mode, Thinkfan uses only the highest temperature found in the
56       system. That may be dangerous, e.g. for hard  disks.   That's  why  you
57       should  provide  a  correction value (i.e. add 10-15 °C) for the sensor
58       that has the temperature of your hard disk  (or  battery...).  See  the
59       example config files for details about that.
60

CONFIGURATION

62       Some  example  configurations are provided with the source package. For
63       detailed explanations please read the README  file.  If  you  installed
64       thinkfan   from  a  distribution  package,  you  may  find  them  under
65       /usr/share/doc or wherever your package manager puts documentation.
66

OPTIONS

68       -h     Show a short help message
69
70       -s SECONDS
71              Maximum seconds between temperature updates (default: 5)
72
73       -b BIAS
74              Floating point number (-10 to 30) to control rising  temperature
75              exaggeration.   If  the  temperature increases by more than 2 °C
76              during one cycle, this number is used to calculate a bias, which
77              is added to the current highest temperature seen in the system:
78
79               current_tmax = current_tmax + delta_t * BIAS / 10
80
81              This  means  that negative numbers can be used to even out short
82              and sudden temperature spikes like those  seen  on  some  on-DIE
83              sensors. Use DANGEROUS mode to remove the -10 to +30 limit. Note
84              that you can't have a space between -b and a negative  argument,
85              because  otherwise  getopt  will interpret things like -10 as an
86              option and fail (i.e. write "-b-10" instead of "-b -10").
87
88              Default is 15.0
89
90       -c FILE
91              Load  a  different  configuration  file  (default:   /etc/think‐
92              fan.conf)
93
94       -n     Do not become a daemon and log to terminal instead of syslog
95
96       -q     Be  quiet,  i.e.  reduce  logging level from the default. Can be
97              specified multiple times until only errors are displayed/logged.
98
99       -v     Be more verbose. Can be specified  multiple  times  until  every
100              message is displayed/logged.
101
102       -p [SECONDS]
103              Use  the  pulsing-fan workaround (for older Thinkpads). Takes an
104              optional floating-point argument (0-10s) as depulsing  duration.
105              Default 0.5s.
106
107       -d     Do  not  read  temperature from sleeping disks. Instead, 0 °C is
108              used as that disk's temperature. This is needed if  reading  the
109              temperature  causes  your  disk to wake up unnecessarily.  Note:
110              This option is only available if  thinkfan  was  built  with  -D
111              USE_ATASMART.
112
113       -D     DANGEROUS mode: Disable all sanity checks. May damage your hard‐
114              ware!!
115

SIGNALS

117       SIGINT and SIGTERM simply interrupt operation and should cause thinkfan
118       to terminate cleanly.
119
120       SIGHUP  makes  thinkfan  reload its config. If there's any problem with
121       the new config, we keep the old one.
122
123       SIGUSR1 causes thinkfan to dump all currently known temperatures either
124       to syslog, or to the console (if running with the -n option).
125

RETURN VALUE

127       0      Normal exit
128
129       1      Runtime error
130
131       2      Unexpected runtime error
132
133       3      Invalid commandline option
134

SEE ALSO

136       thinkfan.conf(5),         The        thinkfan        Github        page
137       (https://github.com/vmatare/thinkfan)
138
139

BUGS

141       If thinkfan tells you to, or if you feel like it, report issues at  the
142       Github issue tracker: https://github.com/vmatare/thinkfan/issues.
143
144
145
146
147thinkfan 1.0_beta1               February 2016                     THINKFAN(1)
Impressum