arch-wiki-md-repo
Version:
All arch-wiki articles in markdown format, updated every two days.
141 lines (90 loc) • 11 kB
Markdown
Контролировать скорость (и шум!) вашего кулера легко!
**Важно:** Вы можете повредить ваше оборудование. Вентилятор на процессоре необходим для его охлаждения, а в процессе выполнения этого howto он будет выключен на пару секунд. Если вам не хочется этого делать - не делайте!
## Contents
* [1 lm-sensors](#lm-sensors)
* [2 pwmconfig](#pwmconfig)
* [2.1 Тонкая настройка](#.D0.A2.D0.BE.D0.BD.D0.BA.D0.B0.D1.8F_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0)
* [3 fancontrol](#fancontrol)
### lm-sensors
Первым делом, вам необходимо установить и настроить **lm-sensors**. Подробнее об этом вы можете узнать из соответствующей [статьи](/index.php/Lm_sensors_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Lm sensors (Русский)").
После того как вы установите [lm_sensors](https://www.archlinux.org/packages/?name=lm_sensors), изучите вывод программы `sensors`.
```
$ sensors
w83627hf-isa-0290
Adapter: ISA adapter
VCore 1: +1.14 V (min = +0.00 V, max = +4.08 V)
VCore 2: +2.67 V (min = +0.00 V, max = +4.08 V)
+3.3V: +3.39 V (min = +2.82 V, max = +3.79 V)
+5V: +5.19 V (min = +3.47 V, max = +0.40 V) ALARM
+12V: +12.40 V (min = +12.95 V, max = +7.96 V) ALARM
-12V: -7.01 V (min = +1.78 V, max = -10.63 V) ALARM
-5V: -3.84 V (min = -7.66 V, max = +2.29 V)
V5SB: +5.75 V (min = +0.08 V, max = +0.54 V) ALARM
VBat: +3.10 V (min = +0.54 V, max = +0.13 V) ALARM
fan1: 2428 RPM (min = 0 RPM, div = 4)
fan2: 0 RPM (min = 1630 RPM, div = 4) ALARM
fan3: 2191 RPM (min = 6367 RPM, div = 4) ALARM
temp1: +38°C (high = +20°C, hyst = +68°C) sensor = thermistor
temp2: +39.5°C (high = +65°C, hyst = +60°C) sensor = diode
temp3: +38.0°C (high = +65°C, hyst = +60°C) sensor = thermistor (beep)
vid: +0.000 V (VRM Version 2.4)
alarms:
beep_enable:
Sound alarm enabled''
```
Если в вашем выводе sensors отсутствует RPM (обороты в минуту) для процессорного кулера (CPU fan) и вы уверены что он работает, вам необходимо увеличить делитель кулера (fan divisor). Если скорость вашего кулера отображается и она больше нуля, пропустите следующий шаг.
**Увеличение fan_div:**
Первая строка в выводе sensors - это имя чипсета вашей материнской платы, которое используется для чтения скоростей/темпов/напряжений. Сначала сделаем резервную копию:
```
# cp /etc/sensors.conf /etc/sensors.conf_original
```
Отредактируйте файл `/etc/sensors.conf`
```
# nano /etc/sensors.conf
```
Найдите ваш чипсет. Их названия очень похожи друг на друга, так что убедитесь что вы редактируете правильный. Добавьте строку fanX_div 4 в начале конфигурации вашего чипсета. Замените X на количество ваших процессорных кулеров, у меня это 2\. Вы должны сами найти это число для своего компьютера, но скорее всего это 1, 2 или 3.
Сохраните и выполните:
```
# sensors -s
```
это загрузит новые значения переменных из sensors.conf. Запустите sensors снова и проверьте RPM теперь. Если его нет, то увеличте делитель до 8, 16 или 32.
Можете не опасаясь игнорировать всё, кроме fanX_div. Я бы посоветовал вам оставить все остальные значения по умолчанию.
### pwmconfig
После того как lm-sensors правильно сконфигурированы запустите pwmconfig и настройте скорость работы ваших вентиляторов:
```
pwmconfig
```
Следуйте инструкциям в pwmconfig для установки базовых скоростей.
Опции конфигурации по умолчанию должны создать новый файл, `/etc/fancontrol`.
Для настройки всех скоростей следуйте инструкциям в pwmconfig.
#### Тонкая настройка
**Важно:** Некоторые из приведённых ниже шагов описывают тонкую настройку кулеров. Прежде чем что-то выполнять убедитесь что ваш процессор не очень сильно нагружен и у вас есть пространство для маневров. Если в какой-то момент настройки вы заметите что температура процессора катастрофически растёт выполните `echo "255" > /sys/class/hwmon/hwmon0/device/pwm1` чтобы раскрутить кулер как можно сильнее пока ситуация не нормализуется и процессор не охладится. Вообще, вы должны знать что вы делаете, прежде чем вы допустите глупость в конфигурационном файле.
Если вы хотите больше контроля, вам возможно надо редактировать сгенерированный файл конфигурации чтобы добиться желаемого результата. Вот пример конфигурационного файла:
```
INTERVAL=10
FCTEMPS=hwmon0/device/pwm1=hwmon0/device/temp1_input
FCFANS= hwmon0/device/pwm1=hwmon0/device/fan1_input
MINTEMP=hwmon0/device/pwm1=20
MAXTEMP=hwmon0/device/pwm1=55
MINSTART=hwmon0/device/pwm1=150
MINSTOP=hwmon0/device/pwm1=105
```
* **INTERVAL**: как часто демон должен опрашивать датчики температуры процессора и корректировать скорость вращения кулера. Интервал задаётся в секундах.
Оставшаяся часть конфигурационного файла разделена на (как минимум) два значения на каждую опцию конфигурации. Каждая опция сначала указывает на PWM-устройство в которое будет производиться запись при смене скорости кулера. Второе "поле" — это непосредственно значение, которое надо записать. Это позволяет вам наблюдать и контролировать несколько вентиляторов и датчиков температуры (если ваш компьютер это поддерживает).
* **FCTEMPS**: устройство ввода температуры процессора. Предыдущий пример указывает на `/sys/class/hwmon/hwmon0/device/temp1_input`.
* **FCFANS**: устройство ввода текущей скорости кулера. Пример: `/sys/class/hwmon/hwmon0/device/fan1_input`
* **MINTEMP**: температура (°C) при которой нужно *ВЫКЛЮЧАТЬ* кулер на процессоре. Эффективные процессоры не нуждаются в охлаждении во время простоя. Устанавливая этот параметр, вы должны быть *уверены* в том, что эта температура безопасна. Установка этого параметра в 0 не рекомендуется, используйте более корректное (для данного оборудования) значение.
* **MAXTEMP**: температура (°C) при которой кулер надо включать на *МАКСИМАЛЬНУЮ* скорость. Этот параметр надо выставлять задавать примерно на 10-20 °C ниже *критической температуры*/*температуры выключения* для вашего процессора. Установка этого параметра ближе к MINTEMP приведёт к повышению средней скорости вращения кулера.
* **MINSTOP**: значение PWM при котором останавливается кулер. Все кулеры немного отличаются друг от друга. Вы можете записывать при помощи `echo` различные значения (от 0 до 255) в `/sys/class/hwmon/hwmon0/device/pwm1` и наблюдать за кулером. Когда какое-то значение приведёт к его остановке, используйте это значение.
* **MINSTART**: значение PWM при котором кулер запускается вновь. Зачастую это значение превышающее MINSTOP, т.к. большее напряжение необходимо кулеру для преодоления инерции.
### fancontrol
Попробуйте запустить fancontrol:
```
/usr/bin/fancontrol
```
После запуска этой программы вы возможно услышите как ваш кулер замедляется. Если это работает, то можно добавить "fancontrol" в автозапуск
```
systemctl enable fancontrol
```
либо к массиву DAEMONS в `/etc/[rc.conf](/index.php/Rc.conf "Rc.conf")` если вы используете init, чтобы это происходило при старте системы.
*Большая часть материала для этого howto взята с [Ubuntu forums](http://ubuntuforums.org/) и [Ubuntu guide](http://ubuntuguide.org/).*