Lm sensors не показывает температуру процессора

Обновлено: 03.07.2024

lm_sensors (Linux monitoring sensors) - свободное ПО, состоящее из драйверов и утилит, позволяющее отслеживать температуру, напряжение, скорости вращения вентиляторов в вашей системе. Следует помнить, что набор датчиков индивидуален для каждой системы, поэтому некоторые возможности могут быть недоступны.

Contents

Установка

Настройка

Используйте от суперпользователя sensors-detect для обнаружения и формирования списка модулей ядра:

В результате будет создан конфигурационный файл /etc/conf.d/lm_sensors , используемый демоном sensors , который автоматически активируется ядром при загрузке. Программа будет задавать вопросы по различному железу. "Безопасные" ответы предусмотрены по умолчанию, так что слепое нажатие Enter на все вопросы не должно вызвать никаких проблем.

По окончанию определения датчиков будут доступны снимаемые ими значения.

Примечание: Служба systemd добавится автоматически после того, как будет послан ответ YES на предложение сгенерировать /etc/conf.d/lm_sensors . Ответив YES, эта служба также будет незамедлительно запущена.

Просмотр датчиков

Пример запуска sensors :

Добавление температурных датчиков модулей памяти

This article or section needs language, wiki syntax or style improvements. See Help:Style for reference.

Reason: Некоторые секции нуждаются в символах приглашения. (Discuss in Talk:Lm sensors (Русский))

Для обнаружения температурных датчиков модулей памяти установите пакет 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 .

Вот часть вывода с одной машины:

Использование данных датчиков

Графические фронтэнды

Существует множество разнообразных фронтэндов для отображения данных датчиков.

sensord

Существует дополнительный демон sensord (включен в пакет lm_sensors ), позволяющий журналировать данные с сенсоров в кольцевые базы данных (rrd) для последующей визуализации. Смотрите ман sensord(8) для уточнения деталей.

Советы и рекомендации

Регулировка значений

В некоторых случаях отображаемые данные могут быть неверными или пользователи могут захотеть изменить вывод. К ним относятся:

  • Неправильные значения температуры из-за неправильного смещения (к примеру температура отображается на 20 ° C текущей).
  • Имеется потребность переименовать вывод для некоторых датчиков.
  • Ядра могут быть отображены в неправильном порядке.
Примечание: Не редактируйте /etc/sensors3.conf, т.к. при обновление он перепишется и соответственно измененные данные будут утеряны.

Пример 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

Решение проблем

Модуль 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 для управления скорости вращения вашего вентилятора корпуса.


Lm_Sensors - это утилита командной строки, которую можно настроить для сканирования различных аппаратных датчиков на ПК с Linux, чтобы сообщать о состоянии температуры. Lm_Sensors - полезный инструмент для проверки температуры вашего процессора в крайнем случае.

В настоящее время дистрибутивы Linux не поставляются с Lm_Sensors, поэтому, прежде чем мы рассмотрим, как его использовать, мы должны продемонстрировать, как установить программу на ваш ПК с Linux. Чтобы начать установку, откройте окно терминала, нажав клавиши Ctrl + Alt + T или Ctrl + Shift + T на клавиатуре. Оттуда следуйте инструкциям командной строки внизу, которые соответствуют вашей операционной системе Linux.

Ubuntu

В Ubuntu приложение Lm_Sensors легко устанавливается с помощью команды Apt.

Debian

Используете Debian Linux? Вы сможете установить программу с помощью следующей команды Apt-get.

Arch Linux

sudo pacman -S lm_sensors

Fedora

Чтобы установить Lm_Sensors в Fedora Linux, используйте команду Dnf ниже, чтобы настроить программу в вашей системе.

OpenSUSE

Официально OpenSUSE не поддерживает приложение Lm_Sensors. Однако должна быть возможность установить пакет Fedora Linux.

Предупреждение: версия Lm_Sensors для Fedora может не работать в OpenSUSE Linux. Попробуйте этот метод на свой страх и риск!

Конфигурирование Lm_Sensors

После установки приложения Lm_Sensors начальный процесс установки не завершен. Перед использованием приложения его необходимо настроить для работы с аппаратными датчиками на вашем компьютере. Чтобы начать процесс настройки, перейдите в окно терминала и получите root-доступ с помощью команды su или sudo -s

Когда root доступен, выполните в терминале команду sensors-detect, и начнется процесс начальной настройки.


Когда Lm_Sensors закончит задавать вопросы, настройка завершена.

Проверьте температуру процессора с помощью датчиков Lm

Проверка температуры процессора в Linux с помощью Lm-Sensors выполняется командой датчиков. Чтобы быстро проверить показания температуры вашего ЦП (и других устройств, обнаруженных датчиками Lm), откройте окно терминала с помощью Ctrl + Alt + T или Ctrl + Shift + T на клавиатуре. Затем выполните команду датчиков, чтобы просмотреть показания различных температур датчиков.


Метод 2 - Psensor

Еще один отличный способ проверить температуру процессора в Linux - это инструмент Psensor. Это графическое приложение, которое может отображать различную статистику датчиков в удобном для чтения интерфейсе.

Примечание: Psensor использует Lm_Sensors для некоторых операций в приложении. Чтобы получить максимальную отдачу от Psensor, следуйте инструкциям в способе 1 для настройки Lm_Sensors, прежде чем следовать инструкциям, изложенным ниже.

Кроме того, утилита позволяет определять допустимые границы показателей, например, та же температура процессора Linux для определенной модели. Таким образом, вы можете найти неполадку в системе вовремя и заменить неработающий элемент, например, вентилятор, чтобы избежать перегрева и выхода и строя оборудования.

2. Установка программы.

Обычно, пакет lm_sensors уже предустановлен в большинстве систем и сконфигурирован для работы, но если в вашей системе его нет, то программу не так сложно установить.

3. Настройка программы.

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

Для этого выполните:

Утилита sensors-detect пытается найти все установленное оборудование и загрузить рекомендованные для него модули ядра. В большинстве случаев вам будет достаточно нажимать кнопку Enter в ответ на все вопросы программы, тем самым давая ответы по умолчанию.

4. Использование программы.

4.1. Текстовый интерфейс.

Теперь можно перейти к просмотру доступной температуры. Для этого наберите:


Здесь отображается не только температура процессора CentOS 7, но и другие полезные показатели, такие как, напряжение и частота вращения вентиляторов.

Для любителей, можно вывести температуру процессора в Фаренгейтах с помощью опции -f:


Чтобы постоянно наблюдать за температурой процессора можно использовать команду watch.

По умолчанию она будет обновлять информацию раз в две секунды:


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

4.2. Графический интерфейс.

Если вы не любите работать в терминале и вам больше по душе графический интерфейс, то можно воспользоваться графической утилитой psensor , которая берет информацию через lm_sensors .

Чтобы установить ее в CentOS 7 выполните:

Дальше утилиту можно запустить из главного меню или командой:

Здесь отображается вся та же информация, что и в lm_sensors , но, кроме того, есть температура видеокарты, жесткого диска, загрузка процессора и видеокарты, а также другие параметры. В настройках утилиты вы можете выбрать единицу измерения температуры. Добавить в авто запуск. И выбрать датчики, которые нужно использовать.

infoitcomua1

Перегрев оборудования часто снижает производительность вашей системы. Мониторинг температуры оборудования может помочь вам диагностировать любые проблемы с перегревом процессора в системе. Источником перегрева ноутбука обычно является чрезмерная температура процессора, графического процессора (видеокарты) или жесткого диска.

Если ваш ноутбук нагревается, убедитесь, что он установлен правильно, чтобы не препятствовать потоку воздуха. У вас должен быть хороший, чистый кулер для ноутбука, не пыльный, и удалить все нежелательное программное обеспечение, использующее высокую производительность процессора. Также работа ноутбука в режиме энергосбережения снижает перегрев.

В этом руководстве мы узнаем, как получить температуру процессора в Ubuntu Linux из командной строки, а также с рабочего стола.

Шаг 1. Проверьте температуру процессора с помощью Lm_Sensors

Итак, сначала давайте проверим, как установить пакет lm-sensor на различные дистрибутивы Linux.

В Ubuntu / Debian

Откройте терминал в Ubuntu, нажав комбинацию клавиш CTRL + ALT + T на клавиатуре. Затем установите Lm_Sensors, выполнив следующую команду, которую я тестировал в Ubuntu 18.04, Ubuntu 20.04 и Debian 10:

Установите Psensor Server, если вы хотите распечатать температуру и скорость вращения вентилятора удаленного сервера.

В Arch Linux

На Fedora

Используйте команду dnf для установки lm_sensors в Fedora Linux.

На CentOS / RHEL

Используйте команду yum для установки lm_sensors на CentOS 7 и RHEL 7

Обнаружение совместимых датчиков в Ubuntu Linux

Далее нам нужно обнаружить микросхемы аппаратного мониторинга, установленные в наших ноутбуках. Итак, теперь мы можем начать обнаружение аппаратных датчиков нашего ноутбука. Это предоставит информацию о:

  • Датчики, встроенные в процессоры и другие микросхемы ввода-вывода
  • Микросхемы мониторинга оборудования, доступ к которым осуществляется через порты ввода-вывода и шину SMBus / I2C в нашей системе

Мы делаем это, набирая команду sudo sensor-detect:

Отображение температуры процессора в командной строке

Мы успешно установили пакет lm-sensor и успешно обнаружили поддерживаемые датчики на нашем ноутбуке с Ubuntu Linux.

Теперь мы можем выполнить следующую команду, чтобы увидеть данные о температуре:

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

Вы также можете использовать команду watch для постоянного запуска команды датчиков, которая будет отображать изменения выходного сигнала датчика на экране:

Шаг 2. Проверьте температуру процессора с помощью графического интерфейса пользователя Psensor.

Мы собираемся использовать инструмент с графическим интерфейсом, Psensor, который позволяет вам контролировать температуру оборудования в Linux.

С помощью Psensor вы можете проверить следующее:

  • Температура материнской платы и датчиков процессора и графических процессоров NVidia
  • Температура жестких дисков
  • Скорость вращения вентиляторов
  • Мониторинг использования ЦП

Последняя версия Psensor также предоставляет индикатор апплета для Ubuntu, что делает мониторинг температуры оборудования в Ubuntu еще проще. Вы можете выбрать отображение температуры прямо на самой верхней панели. Он даже может отправлять уведомление на рабочий стол, когда температура превышает предел.

Мы можем продолжить установку Psensor, используя следующую команду:

Ubuntu / Debian

Fedora

CentOS and RHEL

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

Как узнать температуру процессора в Ubuntu Linux

Как узнать температуру процессора в Ubuntu Linux

Если вы хотите отобразить статистику ЦП, включая температуру, на верхней панели, перейдите в «Настройки датчика». Затем в меню «Индикатор приложения» выберите компонент, для которого вы хотите отображать температуру. Затем отметьте «Датчик отображения» в опции ярлыка.

Как узнать температуру процессора в Ubuntu Linux

Шаг 3. Использование Hardinfo для проверки температуры процессора

В Ubuntu и Debian

В Arch Linux вы можете найти hardinfo в репозитории сообщества.

Выполните следующую команду с терминала, чтобы отобразить информацию об оборудовании в графическом интерфейсе.

Как узнать температуру процессора в Ubuntu Linux

Использование i7z для определения температуры процессора

Для установки на ubuntu выполните следующую команду:

Как узнать температуру процессора в Ubuntu Linux

Заключение

Несколькими годами ранее я использовал Conky, легкий монитор настольной системы, который может отображать статистику процессора, памяти, пространства подкачки, дискового пространства, температуры, процессов, сетевых интерфейсов, заряда батареи и т. Д.

Если вы хотите проверить температуру без сторонних инструментов, загляните в файл /sys/devices/virtual/Thermal/Thermal_zone1/temp.

Чтобы проверить температуру жесткого диска, вы можете установить пакет hddtemp .

Наконец, если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Читайте также: