UNPKG

arch-wiki-md-repo

Version:

All arch-wiki articles in markdown format, updated every two days.

141 lines (90 loc) 11 kB
Контролировать скорость (и шум!) вашего кулера легко! **Важно:** Вы можете повредить ваше оборудование. Вентилятор на процессоре необходим для его охлаждения, а в процессе выполнения этого 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/).*