Вопрос Как контролировать скорость вращения вентилятора?


Как я могу контролировать скорость вращения вентилятора компьютера?

В Windows есть замечательная программа под названием SpeedFan,


153
2018-01-18 11:26


происхождения


Я поставил простое cron-решение для карт ATI здесь askubuntu.com/a/875241/375427 - Pavel Niedoba
В Linux, fancontrol настраивается с использованием pwmconfig, использование watch sensors наблюдать датчики под нагрузкой CPU и GPU. Используйте эти значения на холостом ходу и полной нагрузке для установки MINTEMP а также MAXTEMP соответственно, с INTERVAL=1, Это увеличивает ваши поклонники в реальном времени с увеличением нагрузки. Это наиболее активное охлаждение, обеспечивающее основу для дальнейшей настройки. Бег pwmconfig один раз, а затем отредактировать /etc/fancontrol непосредственно. Бег sudo service fancontrol restart после каждой настройки. - Dominic Cerisano


ответы:


Примечание перед запуском:

Эта функциональность зависит как от вашего оборудования, так и от программного обеспечения. Если ваше оборудование не поддерживает управление скоростью вращения вентилятора или не отображает их в ОС, очень вероятно, что вы не сможете использовать это решение. Если это так, но программное обеспечение (как ядро) не знает, как его контролировать, вам не повезло.


  1. Установите ле датчики а также управление вентилятором пакеты.
  2. конфигурировать ле датчики 

    1. В терминальном типе sudo sensors-detect и ответьте ДА на все вопросы YES / no.
    2. В конце обнаружения датчиков отобразится список модулей, которые необходимо загрузить. Введите «да», чтобы обнаружить датчики, вставить эти модули в / etc / modules или отредактировать / etc / modules самостоятельно.
    3. Бег sudo service module-init-tools restart, Это будет читать изменения, которые вы внесли /etc/modules на шаге 3, и вставьте новые модули в ядро.
      • Заметка: Если вы используете Ubuntu 13.04 или выше, эту команду 3-го шага следует заменить на sudo service kmod start,
  3. конфигурировать управление вентилятором

    1. В терминальном типе sudo pwmconfig , Этот скрипт остановит каждый вентилятор в течение 5 секунд, чтобы узнать, какие вентиляторы можно контролировать, с помощью которого ручка PWM. После того, как скрипт будет проходить через всех вентиляторов, вы можете настроить, какой вентилятор соответствует температуре.
    2. Вам нужно будет указать, какие датчики использовать. Это немного сложно. Если у вас есть только один вентилятор, обязательно используйте датчик температуры для вашего сердечника, чтобы установить скорость fancontrol.
    3. Запустите подсказки и сохраните изменения в местоположении по умолчанию.
    4. Вносить коррективы в тонкую настройку /etc/fancontrol и использовать sudo service fancontrol restart для применения ваших изменений. (В моем случае я устанавливаю интервал до 2 секунд.)
  4. Настроить управление вентилятором оказание услуг

    1. Бег sudo service fancontrol start, Это также приведет к автоматическому запуску службы fancontrol при запуске системы.

В моем случае /etc/fancontrol для процессора я использовал:

Settings for hwmon0/device/pwm2:  
Depends on hwmon0/device/temp2_input  
Controls hwmon0/device/fan2_input  
MINTEMP=40  
MAXTEMP=60  
MINSTART=150  
MINSTOP=0  
MINPWM=0  
MAXPWM=255 

127
2018-01-08 16:38



Я попытался последовать за вашим гидом, но застрял на третьем шаге с этой ошибкой: / usr / sbin / pwmconfig: не установлены модули датчиков, совместимые с pwm - tamale
У меня была та же проблема с pwmconfig, пока я не запустил датчики sudo-detect - Gearoid Murphy
Что делать, если датчики sudo не обнаруживают никаких датчиков? -> Извините, никаких датчиков не обнаружено. Либо у вашей системы нет датчиков, либо они не поддерживаются, либо они подключены к адаптеру I2C или SMBus, который не поддерживается. Если вы узнаете, какие фишки на вашем борту, проверьте lm-sensors.org/wiki/Devices для статуса водителя. - H3R3T1K
Если у вас возникли проблемы, обязательно проверьте свой dmesg на наличие сообщений об ошибках. В моем случае недавние изменения ядра не позволили мне загрузить необходимый драйвер, и мне пришлось добавить acpi_enforce_resources=lax к моим вариантам ядра, чтобы вернуть прежнюю функциональность. Смотрите также: goo.gl/tUcr36 - bukzor
Я пробовал это, и я не могу получить больше, чем sudo pwmconfig, потому что получаю: «Не установлены модули датчиков, совместимых с pwm». Это после того, как команда обнаружения датчиков обнаруживает «цифровой температурный датчик Intel». Я также пробовал этот параметр ядра. Может ли кто-нибудь предложить решение? - Sman789


Если у вас есть ThinkPad, есть часть программного обеспечения, называемого thinkfan что делает именно это. Как видно из названия, оно специально предназначено для ThinkPads (thinkpad_acpi).

thinkfan программное обеспечение доступно в стандартных репозиториях программного обеспечения ubuntu, но для его настройки требуется несколько шагов.

Вот простой шаг за шагом руководство:

http://staff.science.uva.nl/~kholshei/thinkfan_guide/

(в основном это переведенная версия этого немецкого гида: http://thinkwiki.de/Thinkfan)


Соответствующая информация из сообщения:

Шаг 1. Установите программное обеспечение thinkfan и датчики:

sudo apt-get install thinkfan lm-sensors

Шаг 2. Убедитесь, что демон управляет вентилятором, отредактировав файл thinkpad.conf:

sudo nano /etc/modprobe.d/thinkfan.conf

добавив следующую строку:

options thinkpad_acpi fan_control=1

Шаг 3. Сделать загрузку daemon автоматически при запуске, отредактировав файл:

sudo nano /etc/default/thinkfan

убедитесь, что для клавиши START установлено значение «да», то есть должна быть строка, которая гласит:

START=yes

Шаг 4. Обнаружение датчиков вашего ноутбука:

sudo sensors-detect

и просто выберите ответы по умолчанию, когда вам будет предложено нажать «Ввод».

Шаг 5. Загрузите новые модули. От ubuntu 13.10 это делается:

sudo service kmod start

в то время как для предыдущих версий, таких как 13.04, вам нужно будет:

sudo service module-init-tools start

Шаг 6. Выясните, какие датчики используются:

sensors

(те, которые указывают 0 градусов, не используются, я не знаю, почему они тоже «обнаружены»). Помните, какие из них используются.

Шаг 7. Узнайте все пути этих датчиков:

find /sys/devices -type f -name "temp*_input"

Выходом должен быть список путей, таких как / sys / devices / ...

Шаг 8. Скопируйте - вставьте пути к датчикам в файл конфигурации /etc/thinkpad.conf. Для этого сначала откройте файл:

sudo nano /etc/thinkfan.conf

Там должна быть строка вроде

#sensor /proc/acpi/ibm/thermal (0, 10, 15, 2, 10, 5, 0, 3, 0, 3) 

(# -символ означает, что эта строка закомментирована). Добавьте строку, начинающуюся с датчика (без # -символа), и скопируйте-вставьте первый датчик. Повторите это, если у вас несколько датчиков. Например, на моей машине выход на шаге 7 дает

/sys/devices/virtual/hwmon/hwmon0/temp1_input
/sys/devices/platform/thinkpad_hwmon/temp3_input
/sys/devices/platform/thinkpad_hwmon/temp4_input
/sys/devices/platform/thinkpad_hwmon/temp5_input
/sys/devices/platform/thinkpad_hwmon/temp6_input
/sys/devices/platform/thinkpad_hwmon/temp7_input
/sys/devices/platform/thinkpad_hwmon/temp1_input
/sys/devices/platform/thinkpad_hwmon/temp8_input
/sys/devices/platform/thinkpad_hwmon/temp2_input
/sys/devices/platform/coretemp.0/temp4_input
/sys/devices/platform/coretemp.0/temp2_input 

Те, которые используются в моей машине, являются теми, что указаны в первой и последней двух строках, поэтому я добавил три строки:

sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp4_input
sensor /sys/devices/platform/coretemp.0/temp2_input 

Шаг 9. Наконец, мы можем установить уровни скорости вращения вентилятора в файле конфигурации. Откройте файл /etc/thinkpad.conf, если он еще не был открыт.

sudo nano /etc/thinkfan.conf

Уровни вентиляторов, которые я использую на моем ThinkPad x201:

(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767) 

Последняя линия обеспечивает полную скорость вращения вентилятора (127 = «разомкнутый», то есть нерегулируемый). Вы можете играть на этих уровнях в соответствии с вашими потребностями / пожеланиями, но ПОЖАЛУЙСТА, ОСТОРОЖНО!

Шаг 10. Перезагружать. Теперь все должно работать. Чтобы проверить правильность запуска thinkpad, используйте

sudo thinkfan -n

который начинает думать в сложном режиме. Возможно, вы захотите остановить демон thinkfan:

sudo /etc/init.d/thinkfan stop

Если вы хотите снова запустить демон thinkfan, введите:

sudo /etc/init.d/thinkfan start

Чтобы быть полным, мой файл конфигурации /etc/thinkfan.conf:

# IMPORTANT:
#
# To keep your HD from overheating, you have to specify a correction value for
# the sensor that has the HD's temperature. You need to do this because
# thinkfan uses only the highest temperature it can find in the system, and
# that'll most likely never be your HD, as most HDs are already out of spec
# when they reach 55 °C.
# Correction values are applied from left to right in the same order as the
# temperatures are read from the file.
#
# For example:
# sensor /proc/acpi/ibm/thermal (0, 0, 10)
# will add a fixed value of 10 °C the 3rd value read from that file. Check out
# http://www.thinkwiki.org/wiki/Thermal_Sensors to find out how much you may
# want to add to certain temperatures.

# Syntax:
# (LEVEL, LOW, HIGH)
# LEVEL is the fan level to use (0-7 with thinkpad_acpi)
# LOW is the temperature at which to step down to the previous level
# HIGH is the temperature at which to step up to the next level
# All numbers are integers.
#

# I use this on my T61p:
#sensor /proc/acpi/ibm/thermal (0, 10, 15, 2, 10, 5, 0, 3, 0, 3)

#(0, 0, 55)
#(1, 48, 60)
#(2, 50, 61)
#(3, 52, 63)
#(4, 56, 65)
#(5, 59, 66)
#(7, 63, 32767)


# My settings for my ThinkPad X201: (kris)

sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp4_input
sensor /sys/devices/platform/coretemp.0/temp2_input

(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767)

34
2018-05-14 15:54



Один комментарий: вы хотите иметь большее перекрытие значений температуры, как указано в таблице. Особенно в диапазоне 45-55. В противном случае скорость вентилятора сохраняется. Это очень тревожно. (Постоянный шум вентилятора не мешает колебаниям шума). - HongboZhu
Мы (сообщество linux) действительно сосать UX. :( Установка скорости вращения вентилятора не должна быть 10-ступенчатым процессом. - Alexander
@Alexander Если вы решительно настроены на это, вы можете писать и поддерживать небольшую программу для автоматизации этого процесса. - Kris
@Kris Я был бы более склонным модифицировать оригинальную программу, чтобы не иметь такого бессмысленного процесса настройки. Увы, у меня нет мозгового козыря, я просто проезжал мимо этого сообщения, ища доступные опции контроля вентилятора. - Alexander
/etc/modprobe.d/thinkfan.conf  не существует в моем Ubuntu 14.04. Что теперь? - Youda008


Для нескольких компьютеров Dell вы можете установить пакет i8kutils:

sudo apt install i8kutils

Если у вас есть непроверенная Dell (например, Dell XPS 14z), вам может потребоваться принудительная загрузка модуля ядра:

sudo modprobe i8k force=1

12
2018-01-18 14:28



У меня Dell XPS 14 L421X. <code> датчики </ code> не показали поклонников. после установки пакета i8kutils, я получаю датчики coretemp-isa-0000 Адаптер: адаптер ISA Физический идентификатор 0: + 54,0 ° C (высокий = + 87,0 ° C, крит = + 105,0 ° C) Ядро 0: + 50,0 ° C (высокое = + 87,0 ° C, крит = + 105,0 ° C) Core 1: + 52,0 ° C (высокий = + 87,0 ° C, крит = + 105,0 ° C) i8k-virtual-0 Адаптер: виртуальное устройство Правый вентилятор: 0 оборотов в минуту CPU: + 55,0 & deg; С - philcolbourn
Это работает для hp? - Immortal Player
@ бессмертный игрок, я думаю, что это не так. Модуль ядра специально разработан для компьютеров Dell. - morhook


Установите и настройте ле датчики а также управление вентилятором пакеты:

sudo apt-get install lm-sensors fancontrol

Документация по их настройке доступна на их страницах руководства.

Это функция, которая должна предоставляться BIOS, совместимым с ACPI, но, похоже, большинство поставщиков материнских плат не потрудились следовать стандарту.


7



Можете ли вы предоставить более подробные инструкции по их установке и использованию? - Stefano Palazzo♦
Вы можете найти это на странице руководства или на www.lm-sensors.org. - psusi
Я знаю, я просто подумал, что этот ответ может быть лучше :) - Stefano Palazzo♦
Ссылка, которую @psusi дал, не работает, новая ссылка находится здесь: github.com/groeck/lm-sensors - Svetlana Belkin
Я думаю, у вас есть ошибочное имя пользователя. - markroxor