i8kmon(1)
π i8kmon β the temperature monitor bestie π
okay so this is i8kmon(1) from the Utilities corner of the manual, and she is literally out here keeping your Dell laptop from melting. let's get into it π«Ά
β¨ NAME β¨
i8kmon β temperature monitor π‘οΈ
β¨ SYNOPSIS β¨
i8kmon [<options>]
β¨ DESCRIPTION β¨
So i8kmon is a daemon, right? and what she does is monitor the cpu temperature and control the fan speed on some Dell laptops π
she does it by regularly reading the system temperature, and then choosing the appropriate speed of the fans. main character behavior honestly.
the way the speed changes is decided by a table of thresholds. inside i8kmon the default table of thresholds looks like this:
set config(0) {{0 0} -1 60 -1 65}
set config(1) {{1 0} 50 70 55 75}
set config(2) {{1 1} 60 80 65 85}
set config(3) {{2 2} 70 128 75 128}
and you can customize this table at /etc/i8kmon.conf, which gets read every single time the i8kmon service starts. every time. she re-reads it. no cap.
on Debian and derivated OSes, i8kmon starts in the background by default as a service. π
β¨ OPTIONS β¨
i8kmon accepts the following command-line options when initiated by the user, not as a service:
-nc,--nouserconfigβ doesn't read the~/.i8kmonconfigfile, only/etc/i8kmon.conf. like, she's ignoring your personal vibes and going straight to the system ones π-v,--verboseβ report hardware status and program actions on stdout. she will literally narrate her whole life to you π£οΈ-t,--timeout<seconds>β specifies the interval at which the daemon checks the hardware status. useful values are in the range of 1-5 seconds. default is 2 seconds. β°
β¨ CONFIGURATION β¨
as said before (iykyk), i8kmon has builtin default values of temperature thresholds. but if users need, they can specify their own settings in the configuration files /etc/i8kmon.conf and ~/.i8kmon. it is also possible to specify values to others variables that change i8kmon behavior π
the variables and values are as follows:
set config(i8kfan) /usr/bin/i8kfanβ i8kfan executable path π οΈset config(acpi) "acpi"β filename of the apci executable.i8kmonuses acpi to query whether the notebook is on-line or on battery πset config(use_conf) 1β set whether user configuration file must be read or not when user startingi8kmon. default is1.set config(verbose) 0β print verbose logs πset config(timeout) 2β timeout. default is2.set config(t_high) 80β maximum high temperature. default is80. π₯
the following variables set fans speeds. if these variables are set at the config file, i8kmon will not probe for them. and heads up: the probe moment turns on fans at max speed πͺοΈ
set status(leftspeed) "0 1000 2000 3000"β speed values (rpm) of left fan at velocities0,1,2,3set status(rightspeed) "0 1000 2000 3000"β speed values (rpm) of right fan at velocities0,1,2,3
π¦ the states, bestie π¦
the daemon defines 4 states (0, 1, 2, 3) with different combinations of fan speeds ({0 0}, {1 0}, {1 1}, {2 2}) and for each state is defined the temperature thresholds which cause the fans to switch to a higher or lower state. each state can have different thresholds for operation on ac power or on battery. for example, this configuration:
set config(0) {{0 0} -1 60 -1 65}
set config(1) {{1 0} 50 70 55 75}
set config(2) {{1 1} 60 80 65 85}
set config(3) {{2 2} 70 128 75 128}
defines state 0 with both fans off, a high threshold of 60 degrees (65 on battery) and a low threshold of -1 degrees β which is actually never reached since 0 is the lowest temperature π. when the high temperature threshold is reached, the program switches to state 1 (left low, right off) which has a high threshold of 70 degrees and a low threshold of 50 degrees. if on ac power the temperature drops below 50, the program will switch back to state 0; if it rises above 70, it will enter state 2, and so on. slay, cascading states β¨
for better operation the temperature ranges should be overlapping with an hysteresis of at least 10 degrees, i.e. 1={50 70},2={60 80} is better than 1={50 70},2={70 80}. and it must be remembered that the low threshold of state 0 must be -1 degrees and the high threshold of state 3 must be 128 degrees. those two are non-negotiable, periodt π
ββοΈ
π§ one fan girlies π§
if the laptop has only one fan, it is better to specify a '-' instead of the fan speed of the missing fan. for example:
set config(2) {{1 -} 60 80 65 85}
β¨ FILES β¨
/proc/i8k/etc/i8kmon.conf/$HOME/.i8kmon
β¨ AUTHORS β¨
- Vitor Augusto
<vitorafsr@gmail.com> - Massimo Dal Zotto
<dz@debian.org>
β¨ COPYRIGHT β¨
i8kmon and all the i8kutils programs, scripts and other files are distributed under the GNU General Public License (GPL) π on Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL'.
β¨ SEE ALSO β¨
i8kctl(1)π
and that's the whole page, bestie!! this manual page was brought to you by Vitor Augusto, dated 04 Mar 2017, under the i8kmon(1) manual, Utilities section β go forth and keep those fans spinning πππ¦
π¦ where this page comes from
- debian bookworm: i8kutils 1.43+nmu1+b1 Β· GPL-2.0-or-later
- debian trixie: i8kutils 1.45 Β· GPL-2.0-or-later
- ubuntu jammy: i8kutils 1.43+nmu1 Β· GPL-2.0-or-later
- ubuntu noble: i8kutils 1.43+nmu1 Β· GPL-2.0-or-later
- ubuntu questing: i8kutils 1.45
- ubuntu resolute: i8kutils 1.45build1 Β· GPL-2.0-or-later
- ubuntu stonking: i8kutils 1.45build1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms