Встановлення порогів температури в i8kmon Ubuntu 14.04


8

У мене проблема з перегрівом у мого Dell Inspiron 15R та встановлена i8kmonдля контролю швидкостей вентилятора на Ubuntu 14.04 .

Ось копія висновку 'lm-датчиків':

coretemp-isa-0000
Adapter: ISA adapter
Physical id 0:  +62.0°C  (high = +87.0°C, crit = +105.0°C)
Core 0:         +57.0°C  (high = +87.0°C, crit = +105.0°C)
Core 1:         +61.0°C  (high = +87.0°C, crit = +105.0°C)

i8k-virtual-0
Adapter: Virtual device
Right Fan:      0 RPM
CPU:          +62.0°C 

Навіть при встановленні порогів температури в /etc/i8kmon:

set config(daemon)      1

# Automatic fan control, override with --auto option
set config(auto)        1

# Report status on stdout, override with --verbose option
set config(verbose) 1

# Status check timeout (seconds), override with --timeout option
set config(timeout) 1

# Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt}
set config(0)   {{0 -}  -1  55  -1  55}
set config(1)   {{1 -}  55  70  55  70}
set config(2)   {{2 -}  60  128  60  128}

Вентилятор не запускається, коли повинен. Будь-які ідеї, що може бути неправильним? Ось копія під logчас запуску i8kmonвручну з --verboseопцією:

i8kmon v1.30 11/16/2013 - Copyright (C) 2013 Vitor Augusto <vitorafsr@gmail.com>
config(0)          = {0 0} -1 60 -1 65
config(1)          = {1 0} 50 70 55 75
config(2)          = {1 1} 60 80 65 85
config(3)          = {2 2} 70 128 75 128
config(acpi)       = acpi
config(auto)       = 1
config(daemon)     = 1
config(geometry)   = 
config(i8kfan)     = /usr/bin/i8kfan
config(min_speed)  = 2000
config(sysconfig)  = /etc/i8kmon.conf
config(t_high)     = 80
config(timeout)    = 5
config(unit)       = C
config(use_conf)   = 1
config(userconfig) = ~/.i8kmon
config(verbose)    = 1
status(ac)         = 0
status(acpi_timer) = 0
status(left)       = 
status(leftspeed)  = 0 -1 -1 -1
status(lspeed)     = 0
status(lstate)     = 0
status(lstuck)     = 0
status(nfans)      = 2
status(right)      = 
status(rightspeed) = 0 0 0 0
status(rspeed)     = 0
status(rstate)     = 2
status(rstuck)     = 0
status(state)      = 0
status(t_high)     = 0
status(t_low)      = 0
status(temp)       = 0
status(timer)      = 
status(ui)         = 0
1410467738 acpi: Battery 0: Discharging, 89%, 03:13:17 remaining
temp, left, right, ac state: 60 -1 2 0
# exec /usr/bin/i8kfan 0 0
temp, left, right, ac state: 59 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 60 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 59 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 58 -1 0 0
# exec /usr/bin/i8kfan 0 {}
temp, left, right, ac state: 60 -1 0 0

Здається, що температура неправильна і i8kmonне включається вентилятор.

Відповіді:


8

Відповідно до lm-sensors:

i8k-virtual-0
Adapter: Virtual device
Right Fan:      0 RPM

У вас є тільки Right Fan, таким чином завжди повинні бути залишені значення вентилятора -1. Ви повинні змінити встановлений конфігурацію у файлі /etc/i8kmon.confна такі значення:

set config(0)   {{-1 0}  -1  40  -1  40}
set config(1)   {{-1 1}  40  60  40  60}
set config(2)   {{-1 2}  60  128  60  128}
set config(3)   {{-1 2}  60  128  60  128}

у штаті {-1 0}немає лівого вентилятора, а правий вентилятор вимкнено, у штаті {-1 1}правий вентилятор повинен працювати на низькій швидкості, тоді як у стані {-1 2}він повинен працювати на повній швидкості. Інші значення, наприклад 40 60 40 60, відповідають температурним порогам --- min та max --- кожного стану, з і без змінного струму.

Вам також потрібно додати наступні параметри:

# Run as daemon, override with --daemon option
set config(daemon)      0

# Automatic fan control, override with --auto option
set config(auto)        1

# Report status on stdout, override with --verbose option
set config(verbose) 1

# Status check timeout (seconds), override with --timeout option
set config(timeout) 20

І, нарешті, вам потрібно створити файл i8k.confв /etc/modprobe.d/містить рядок options i8k force=1.

Дивіться більше деталей man i8kmon


Я вніс зміни, і їх все одно те ж саме ... Можливо, проблема пов'язана з виявленням вентиляторів? Чи є спосіб насправді змусити вентилятор бути включеним?
Ніколя

@Nicolas працює, lm-sensorsколи працює ваш вентилятор і перевіряє результат, Right Fan: 0 RPMчи бачите якісь зміни? і одне додаткове запитання, чи любите ви працювати, коли процесор вищий?
αғsnιη

зараз вентилятор працює на низькій швидкості, Right Fan: 78000 RPMале температура здається досить високою. CPU: +69.0°C. Він насправді починає працювати, коли активність процесора вище.
Ніколя

1
@Nicolas перейменувати i8kmonв i8kmon.confі встановити set config(daemon) 1в set config(daemon) 0і set config(timeout) 1до , set config(timeout) 20а також замінити -з -1значенням в кожному штаті , ex{- 1}щоб {-1 1}анс так далі. і, нарешті, запустившись i8kmonу терміналі, ви побачите, працює він чи ні. ви можете побачити askubuntu.com/a/308548/283843 або ubuntuforums.org/archive/index.php/t-842775.html для отримання більш детальної інформації
αғsnιη

1
Дякую @KasiyA! Вентилятор працює безперебійно зі швидкістю 78000 об / хв :)
Ніколас,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.