- Как посмотреть температуру Linux и мониторить ее
- Что необходимо
- Устанавливаем компоненты
- Настраиваем мониторинг температур
- Настраиваем DDTEMP
- Измерение и мониторинг температур
- Как узнать температуру оборудования в Linux?
- Зачем следить за температурой оборудования?
- Утилиты в Linux для доступа к температурным датчикам
- Lm-Sensors
- HDDTemp
- Psensor – GUI-мониторинг температур в Linux
- Заключение
- lm_sensors (Русский)
- Contents
- Установка
- Настройка
- Просмотр датчиков
- Добавление температурных датчиков модулей памяти
- Считывание SPD-значений из памяти модулей (необязательно)
- Использование данных датчиков
- Графические фронтэнды
- sensord
- Советы и рекомендации
- Регулировка значений
- Пример 1. Регулировка температурных смещений
- Пример 2. Переименование параметров
- Пример 3. Изменение нумерации ядер для многопроцессорных систем
- Автоматизация развертывания lm_sensors
- Решение проблем
- Модуль K10Temp
- Материнские платы Asus B450M-A/A320M-K/A320M-K-BR
- Материнские платы Asus B450/X399/X470 с сокетом AM4
- Материнские платы Asus H97/Z97/Z170/X570/B550
- Материнские платы Gigabyte B250/Z370/B450M
- Gigabyte GA-J1900N-D3V
Как посмотреть температуру Linux и мониторить ее
Часто ли вам приходится беспокоиться и температуре компьютера? Наверняка, нет, если машина исправна и работает без перебоев. Температура не подымится выше максимального значения, установленного производителем, если в нем отсутствуют заводские дефекты. Однако, все же, перегрев может произойти, не только по причине аппаратной проблемы, но и в результате сбоя в драйвере графической карты или неправильно настроенной программы управления системой охлаждения. Нередко причина перегрева кроется в скоплениях пыли и грязи, которая препятствует нормальному охлаждению системы и отводу тепла. Такое обычно можно наблюдать на старых машинах.
Стоит понимать, что перегрев способен привести к достаточно неприятным последствиям. Обязательно следите за состоянием системы вашего компьютера. Особенно полезно, если есть служба, отслеживающая значение температуры и уведомляющая пользователя в случае ее роста. В этой инструкции рассмотрим, как посмотреть значение температуры и организовать систему мониторинга. Так в Linux предусмотрен специальный набор инструментов, предназначенных для этой задачи.
Что необходимо
Итак, для выполнения поставленной задачи понадобятся следующие штатные инструменты:
- lm-sensors – извлекает данные из аппаратных датчиков на материнской плате для мониторинга температуры, напряжения.
- hddtemp – измеряет температуру жестких дисков.
- psensor – графическая утилита для мониторинга температуры, которая позволяет посмотреть температуру Linux, для процессора, видеокарты, жестких дисков.
Дальнейшая наша задача – выполнить установку компонентов.
Устанавливаем компоненты
Поскольку lm-sensors работает на основании информации, предоставляемой lm-sensors и hddtemp, то в первую очередь необходима установка именно этих компонентов. Для этого выполняем такую команду:
$ sudo apt install lm-sensors hddtemp psensor
Если вы нуждаетесь в самой актуальной версии этих компонентов, тогда в команду необходимо внести небольшие изменения:
sudo apt update
sudo apt install lm-sensors hddtemp psensor
То есть, необходимо добавить PPA от разработчиков в систему.
Установка psensor в Fedora и других дистрибутивах, основанных на Red Hat, выглядит примерно так же:
$ sudo yum install lm_sensors hddtemp psensor
Настраиваем мониторинг температур
В первую очередь настраиваем низкоуровневые инструменты, предназначенные для считывания информации, к тому числу относятся lm_sensors и hddtemp. Установив их, можно обеспечить систему мониторингом температуры:
Этой командой запускается мастер настройки ls_sensors. На все вопросы пользователь должен отвечать Y. Дальше она обнаружит в системе встроенные аппаратные датчики, а также автоматически определит подходящие драйвера.
После того, как сканирование датчиков завершится, пользователю будет предложено добавить обнаруженные модули ядра в автозагрузку:
В Ubuntu или Debian модули будут добавлены в /etc/modeuls. Для автоматической загрузки нужных модулей достаточно добавить lm_sensors в автозагрузку:
$ sudo systemctl enable lm-sensors
Дальше мы можем посмотреть температуру процессора и других аппаратных компонентов при помощи следующей команды:
Настраиваем DDTEMP
Для запуска мониторинга температуры жестких дисков необходимо запустить hddtemp в качестве демона, /dev/sda замените на адрес своего диска:
Повторите эту операцию для каждого системного диска. Еще один важный нюанс – программу следует добавить в список автозагрузки.
Измерение и мониторинг температур
Отслеживать температуру в Linux можно и при помощи psensor – специальная графическая утилита. Запустить ее можно как при помощи команды, так и из главного меню системы. Командой запускается следующим образом:
В главном окне программы и выберите Параметры. Перед вами откроется список датчиков, отображающих температуры основных компонентов. Вы можете самостоятельно выбрать, за какими из датчиков выбирать.
Для установки тревоги для определенного датчика перейдите на вкладку Alarm. По умолчанию температура в psensor измеряется в градусах Цельсия. В последних версиях также есть поддержка конвертации в градусы по Фаренгейту.
На этом все, температура важнейших компонентов компьютера будет теперь всегда под вашим контролем. Обязательно добавьте в автозагрузку, чтобы обеспечить себе работу с ней.
Источник
Как узнать температуру оборудования в Linux?
Трудно не согласиться с тем, что современное оборудование, не имеющее «на борту» температурные датчики может считаться «современным» и вообще полноценным. Ведь именно от температурных параметров зависит эффективная работа самого «железа». В Linux-системах существует масса свободных инструментов для доступа к температурным характеристикам работы оборудования и их мониторинга. О них более подробно и будет изложено в данной статье.
Зачем следить за температурой оборудования?
Обычных пользователей этот вопрос, конечно, может совсем и не волновать. За температурами следят администраторы, геймеры, тестеры и оверклокеры. Представитель из каждой из обозначенных категорий деятельности делает это в целях, непосредственно связанных с родом деятельности. Так, например, для администратора критически важно не допустить перегрева, иначе велик риск завалить систему. Для тестеров важно выявить стабильные характеристики режимов работы оборудования в различных режимах использования. В том числе и температурных. Практически во всех случаях, когда речь идёт о комнатном использовании оборудования, в частности, компьютерного железа, важно не допускать именно высоких температур. Ведь вся современная электроника построена на полупроводниках. Для которых «комфортным» для рабочих температур является диапазон от -40 до +60 градусов по Цельсию. По этой причине все геймеры и оверклокеры так стремятся оснастить свои системы максимально эффективными системами охлаждения. Подобный подход позволяет существенно компенсировать температурный нагрев в самых требовательных приложениях и играх. А также при разгоне тех же процессоров и графических чипов.
Утилиты в Linux для доступа к температурным датчикам
В настоящее время среди всего разнообразия, для Linux существует лишь одна по-настоящему универсальная и свободная утилита, предоставляющая доступ к целому комплексу доступных в системе датчиков. И не только температурных. Это Lm-sensors. Кроме неё также полезно использовать HDDTemp и Udisks2. Которые, как понятно из названий, работают с накопителями — HDD и/или SSD. Эти утилиты дополняют функционал Lm-sensors, предоставляя доступ к температурам накопителей. С чем сама Lm-sensors справляется плохо.
Lm-Sensors
Хотя Lm-sensors и не может полноценно читать информацию о температуре накопителей, но всё же обладает довольно мощными возможностями. Она позволяет также узнать данные о частоте вращения установленных в системе вентиляторов. При этом доступ возможен в том числе и к датчикам на периферийных устройствах. А не только на основной (материнской) плате.
Эта утилита обновляется разработчиками не так часто, но всё-таки ещё поддерживается. Далеко не всегда можно поспеть за самыми новыми веяниями в сфере компьютерного «железа», получить доступ к его спецификации, разработать и протестировать соответствующие обновления. Однако, даже в таких условиях Lm-sensors позволяет получить данные о температурах всех критически важных компонентах системы. Таких как CPU, GPU и основных параметрах чипсета.
Lm-sensors доступна практически в любом дистрибутиве Linux в стандартном репозитории. Обычно соответствующий пакет называется lm-sensors. Для его установки, например, в системах Ubuntu следует выполнить команду:
Сразу после установки Lm-sensors настоятельно рекомендуется выполнить начальную конфигурацию утилиты. Это необходимо для полного детектирования доступных в системе датчиков. Иначе информация, выдаваемая утилитой lm-sensors будет, скорее всего, неполной. Следующая команда поможет просканировать доступное оборудование, а также определить наиболее подходящий драйвер для считывания параметров датчиков:
Дальше необходимо на все выдаваемые запросы отвечать утвердительно, т. е. «yes». Поскольку в этом случае сканирование будет полноценным. Следует отметить одну важную деталь: иногда запросы предлагают разное написание ответов, это может быть «yes», «YES» или даже «Yes». Вводить ответ нужно в точности как он предложен в конкретном запросе — это влияет на результат сканирования. В завершении утилита предложит установить модуль ядра, содержащий оптимальный драйвер для считывания показаний датчиков для конкретной системы:
В данном случае, как можно видеть, lm-sensors в качестве оптимального драйвера определила «nct7802». Также приведены инструкции для ручного добавления модуля этого драйвера в сценарий загрузки ядром. Вместе с тем также возможна автоматическая правка файла /etc/modules. Что более предпочтительнее и рекомендуется поступать именно таким образом. Далее необходимо перезагрузить систему и далее, выполнив следующую команду, убедиться, что модуль «nct7802» загружен:
Данный вывод говорит о том, что модуль загружен. Теперь, для просмотра значений всех доступных для утилиты lm-sensors (тех, что она смогла обнаружить ранее при сканировании) достаточно выполнить команду:
Как видно, набор обнаруженных датчиков довольно внушительный. Есть даже показания температуры для модуля Wi-Fi. Не хватает, правда, значений оборотов охлаждающего вентилятора процессора и значений температур зон VRM. Но это уже издержки свободного ПО.
Для того, чтобы иметь возможность наблюдения за параметрами в непрерывном режиме, нужно выполнить команду sensors совместно с командой watch:
Здесь ключ -n задаёт периодичность обновления вывода, в данном случае это 3 секунды. Если он не задан, то по-умолчанию обновление будет происходить каждые 2 секунды. Для выхода из непрерывного режима нужно нажать сочетание клавиш .
HDDTemp
Для мониторинга температур устройств хранения. Например жестких дисков и/или твердотельных накопителей удобно использовать утилиту hddtemp. Соответствующий пакет «hddtemp» также доступен для большинства Linux-дистрибутивов. Для доступа к показаниям температуры конкретного устройства нужно выполнить команду:
Здесь, как можно догадаться, в качестве параметра передаётся интересующее устройство. В данном случае это /dev/sdb.
Для того, чтобы данные получаемые утилитой hddtemp могли использовать другие программы мониторинга (например psensor), необходимо запустить hddtemp в качестве демона:
Это команду необходимо выполнить для всех устройств, для которых необходимо мониторить значения температур.
Psensor – GUI-мониторинг температур в Linux
После того, как установлены и настроены все основные инструменты для мониторинга температур. Такие как lm-sensors и hddtemp, можно (и даже нужно) для удобства вывести это в одном приложении с использованием графиков и лог-файлов. Для этого предназначена очень популярная в среде Linux утилита psensor. Она обладает графическим пользовательским интерфейсом и способна агрегировать данные от всех самых популярных утилит-провайдеров всевозможных системных параметров, таких как температуры, обороты вентиляторов, объём RAM и т. д. Пакет для установки также доступен практически в каждом дистрибутиве Linux и обычно называется «psensor».
Psensor умеет довольно гибко управлять настройкой и отображением значений датчиков. Разобраться в пользовательском интерфейсе не составляет особого труда, он довольно прост:
Рис. 1: Графическая утилита psensor — мониторинг температур, оборотов вентиляторов и других системных параметров в Linux .
При запуске psensor обычно располагается в системном трее в виде значка термометра. Вызов главного окна psensor осуществляется из контекстного меню значка.
Заключение
В заключение стоит напомнить, что утилиты lm-sensors и hddtemp на сегодняшний день являются основными и самыми универсальными инструментами для мониторинга системных параметров в Linux. Эти утилиты консольные и являются поставщиками данных для инструментов с графическим интерфейсом: виджеты рабочего стола, сторонние утилиты-агрегаторы, такие как psensor. Ещё одним очень мощным агрегатором является Сonky. Но это куда более сложный в настройке инструмент, заслуживающий отдельного рассмотрения.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
lm_sensors (Русский)
lm_sensors (Linux monitoring sensors) — свободное ПО, состоящее из драйверов и утилит, позволяющее отслеживать температуру, напряжение, скорости вращения вентиляторов в вашей системе. Следует помнить, что набор датчиков индивидуален для каждой системы, поэтому некоторые возможности могут быть недоступны.
Contents
Установка
Настройка
Используйте от суперпользователя sensors-detect для обнаружения и формирования списка модулей ядра:
В результате будет создан конфигурационный файл /etc/conf.d/lm_sensors , используемый демоном sensors , который автоматически активируется ядром при загрузке. Программа будет задавать вопросы по различному железу. «Безопасные» ответы предусмотрены по умолчанию, так что слепое нажатие Enter на все вопросы не должно вызвать никаких проблем.
По окончанию определения датчиков будут доступны снимаемые ими значения.
Просмотр датчиков
Пример запуска sensors :
Добавление температурных датчиков модулей памяти
This article or section needs language, wiki syntax or style improvements. See Help:Style for reference.
Для обнаружения температурных датчиков модулей памяти установите пакет i2c-tools . После установки загрузите i2c-dev модуль ядра.
Затем найдём шины следующей командой:
Вывод будет примерно следующий:
В данном примере взята система, на которой планки памяти подключены к шине SMBus 0. Команд i2cdetect покажет устройства, которые подключены к шине. Аргумент «-y 0» означает использование i2c-0 smbus. Вы можете проверить другие шины, если необходимо.
команда выдаст таблицу:
SPD оперативной памяти начинается с адреса 0x50, температурные датчики ОЗУ начинаются с 0x18 на этой шине. В приведённой в пример системе доступно два DIMM. Соответственно, адреса температурных датчиков: 0x18 и 0x19.
После нахождения этой информации для чтения температурных показаний с планок памяти нужно загрузить jc42 модуль ядра. После этого нужно сообщить модулю адреса, которые необходимо использовать, записав » » в » к smbus».
После этого температура ваших планок памяти будет видна по команде sensors
Считывание SPD-значений из памяти модулей (необязательно)
Чтобы получить значения таймингов SPD с модулей памяти, установите i2c-tools . После установки загрузите eeprom модуль ядра.
Теперь можно просмотреть значения с помощью decode-dimms .
Вот часть вывода с одной машины:
Использование данных датчиков
Графические фронтэнды
Существует множество разнообразных фронтэндов для отображения данных датчиков.
- psensor — GTK приложение для отслеживания аппаратных датчиков, включая температуры и скорости вентиляторов. Отслеживает материнскую плату и центральный процессор (используя lm-sensors), Nvidia GPUs (используя XNVCtrl), и жёсткие диски (используя hddtemp или libatasmart).
https://wpitchoune.net/psensor/ || psensor
- xsensors — X11 интерфейс к lm_sensors.
https://linuxhardware.org/xsensors/ || xsensors
- Freon (расширение GNOME Shell) — Расширение выводит на экран температуры ЦП, дисков, видеокарты, напряжения и оборотов вентилятора в GNOME Shell.
https://github.com/UshakovVasilii/gnome-shell-extension-freon || gnome-shell-extension-freonAUR
- GNOME Sensors Applet — Апплет панели GNOME для отображения значений аппаратных датчиков, включая температуру ЦП, скорость вращения вентиляторов и вольтаж.
http://sensors-applet.sourceforge.net/ || sensors-applet
- lm-sensors (LXPanel plugin) — Отслеживает температуру/вольтаж/скорости вентиляторов in LXDE с помощью lm-sensors.
https://danamlund.dk/sensors_lxpanel_plugin/ || sensors-lxpanel-pluginAUR
- MATE Sensors Applet — Отображает считанные значения аппаратных датчиков на вашей панели MATE.
https://github.com/mate-desktop/mate-sensors-applet || mate-sensors-applet
- Sensors (Xfce4 panel plugin) — Hardware sensors плагин для панели Xfce.
https://goodies.xfce.org/projects/panel-plugins/xfce4-sensors-plugin || xfce4-sensors-plugin
- Thermal Monitor (Plasma 5 applet) — Апплет KDE Plasma для мониторинга CPU, GPU и других доступных датчиков температуры.
https://gitlab.com/agurenko/plasma-applet-thermal-monitor || plasma5-applets-thermal-monitor-gitAUR
sensord
Существует дополнительный демон sensord (включен в пакет lm_sensors ), позволяющий журналировать данные с сенсоров в кольцевые базы данных (rrd) для последующей визуализации. Смотрите ман sensord(8) для уточнения деталей.
Советы и рекомендации
Регулировка значений
В некоторых случаях отображаемые данные могут быть неверными или пользователи могут захотеть изменить вывод. К ним относятся:
- Неправильные значения температуры из-за неправильного смещения (к примеру температура отображается на 20 ° C текущей).
- Имеется потребность переименовать вывод для некоторых датчиков.
- Ядра могут быть отображены в неправильном порядке.
Все вышеперечисленное (и многое другое) можно регулировать переопределив настройки программы, указанные в /etc/sensors3.conf путем создания файла /etc/sensors.d/foo , в котором можно будет переопределять любые настройки, используемые по умолчанию. Рекомендуется переименовать ‘foo’ в соответствии с серией и моделью материнской платы, однако строгость в названии не является обязательной.
Пример 1. Регулировка температурных смещений
Это реальный пример для системной платы Zotac ION-ITX-A-U. Значения coretemp смещены на 20 °C (более выше) и отрегулированы в соответствии со спецификацией Intel.
Запустим sensors с параметром -u , чтобы увидеть, какие параметры доступны для каждого физического чипа (сырой режим)
Создаем следующий файл для переопределения значений по умолчанию:
Теперь вызов sensors отобразит настроенные значения:
Пример 2. Переименование параметров
Это реальный пример для системной платы Asus A7M266. Требуется указать более подробные названия значений температуры ‘temp1’ and ‘temp2’:
Создаем следующий файл, чтобы переопределить значения по умолчанию:
Теперь вызов sensors отобразит настроенные значения:
Пример 3. Изменение нумерации ядер для многопроцессорных систем
Это реальный пример на HP Z600 workstation с двумя Xeon. Текущая нумерация физических ядер неверно: пронумерованы 0, 1, 9, 10, который повторяются во втором процессоре. Требуется получать значения температур ядер в последовательном порядке, т.е. 0,1,2,3,4,5,6,7.
Опять же, запустим sensors с параметром -u , чтобы увидеть, какие варианты доступны для каждого физического чипа:
Создадим следующий файл переопределения значения по умолчанию:
Теперь вызов sensors отобразит настроенные значения:
Автоматизация развертывания lm_sensors
Если потребуется развернуть lm_sensors на нескольких машинах можно использовать следующую команду для принятия ответов по умолчанию на все вопросы:
Решение проблем
Модуль K10Temp
У некоторых процессоров K10 имеются проблемы с датчиком температуры. Для получения подробностей смотрите документацию к k10temp.
На проблемных машинах модуль сообщит «unreliable CPU thermal sensor; monitoring disabled». Можно принудительно загрузить его:
Убедитесь, что датчик действительно является достоверными и надежными. Если это так, то можно отредактировать /etc/modprobe.d/k10temp.conf , добавив:
Это позволит подгрузить модуль при загрузке системы.
Материнские платы Asus B450M-A/A320M-K/A320M-K-BR
Эти платы используют чип IT8655E, который не поддерживается драйвером ядра it87, на Ноябрь 2020 [1]. Однако, чип поддерживается в апстрим-версии драйвера ядра [2]. Имеется DKMS вариант it87-dkms-git AUR .
Материнские платы Asus B450/X399/X470 с сокетом AM4
Некоторые последние платы Asus используют чип ITE IT8665E, доступ к датчиком температур, вентиляторов и вольтажа может требовать модуля asus-wmi-sensors . Установите asus-wmi-sensors-dkms-git AUR и загрузите модуль ядра asus-wmi-sensors , модуль использует интерфейс UEFI и может требовать обновления BIOS для некоторых плат [3].
Другой способ: модуль it87 считывает значения с чипа напрямую; установите it87-dkms-git AUR и загрузите модуль ядра it87 .
Материнские платы Asus H97/Z97/Z170/X570/B550
Некоторые последние платы Asus требуют загруженного модуля ядра nct6775 для доступа к вентиляторам и вольтажу.
Вам также, вероятно, понадобится добавить следующий параметр ядра:
Материнские платы Gigabyte B250/Z370/B450M
Некоторые платы Gigabyte используют чип ITE IT8686E, которй не поддерживается драйвером ядра it87, на май 2019 [4]. Однако, чип поддерживается в апстрим-версии драйвера ядра [5]. Имеется DKMS вариант it87-dkms-git AUR . Перед установкой модуля также требуется добавить параметр ядра:
Кроме этого, укажите идентификатор чипа при загрузке модуля следующим образом:
Или вы можете загружать модуль в процессе загрузки системы, создав два файла:
Как модуль будет загружен, используйте sensors для исследования чипа. Теперь вы также можете использовать fancontrol для управления скорости вращения вашего вентилятора корпуса.
В дополнение установка zenpower-dkms AUR позволит тонко настроить систему охлаждения материнской платы, однако отключит стандартный модуль k10temp.
Gigabyte GA-J1900N-D3V
Эта материнская плата использует чип ITE IT8620E (useful also to read voltages, mainboard temp, скоростей вентилятора). На октябрь 2014 lm_sensors не имеет драйвера с поддержкой чипа ITE IT8620E [6] [7]. Разработчики lm_sensors сообщили, что чип частично совместим с IT8728F для мониторинга части аппаратных ресурсов. Однако, на август 2016, представлены списки с поддержкой IT8620E [8].
Вы можете загрузить модуль в рантайме:
Или вы можете загружать модуль в процессе загрузки системы, создав два файла:
Как модуль будет загружен, используйте sensors для исследования чипа.
Теперь вы также можете использовать fancontrol для управления скорости вращения вашего вентилятора корпуса.
Источник