Если у вас есть 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. Сделайте так, чтобы демон автоматически загружался при запуске, отредактировав файл:
sudo nano /etc/default/thinkfan
убедившись, что клавиша СТАРТ установлена на да, то есть должна быть строка, которая говорит:
START=yes
Шаг 4. Определите датчики вашего ноутбука:
sudo sensors-detect
и просто выбирайте ответы по умолчанию всякий раз, когда вам будет предложено нажать Enter.
Шаг 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 в подробном режиме. Возможно, вы захотите сначала остановить демон 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)