- Записки IT специалиста
- Linux — начинающим. Как узнать температуру процессора и накопителей
- Lm-sensors — получаем информацию с датчиков компьютера
- Температура накопителей через Smartmontools и Hddtemp
- Особенности NVMe накопителей
- 4 Useful Tools to Monitor CPU and GPU Temperature in Ubuntu
- 1. Glances
- 2. Sensors
- 3. Hardinfo
- 4. i7z
Записки IT специалиста
Linux — начинающим. Как узнать температуру процессора и накопителей
Пришло лето, а вместе с ним и жаркие деньки, но в это время администраторы думают вовсе не о пляже, а о температурном режиме обслуживаемого оборудования. Перегрев может негативно сказываться как на производительности, так и на сроке службы устройств. Как понять, требуется ли дополнительное охлаждение основным компонентам вашего компьютера или сервера если вы работаете под управлением Linux? Очень просто и сегодня мы расскажем о простых и надежных утилитах, позволяющих получить информацию о состоянии оборудования даже если вам доступна только командная строка.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Lm-sensors — получаем информацию с датчиков компьютера
Информацию о температуре, напряжении, оборотах вентилятора и не только можно получить от датчиков компьютера, набор данных, которые можно получить таким образом может достаточно широко варьироваться, в зависимости от наличия самих датчиков и их поддержки со стороны Linux, а поможет нам в этом пакет lm-sensors, для его установки выполните:
Теперь можно получить данные с доступных датчиков:
Как мы уже говорили, объем получаемых данных может быть сильно разный, например, такой:
Последний вариант, конечно, довольно тоскливый и не сообщает нам ничего лишнего, кроме температуры процессора. Но не будем раньше времени впадать в уныние. Lm-sensors в состоянии «из коробки» поддерживает ограниченный набор датчиков, но знает он гораздо больше. Поэтому выполним поиск доступных датчиков командой:
Последовательно отвечаем на вопросы и смотрим какие еще датчики обнаружила программа, в нашем случае нашелся Nuvoton NCT6795D:
По завершению поиска будет подведен краткий итог: будут перечислены найденный датчики и указаны имена нужных драйверов, которые будет предложено добавить в /etc/modules для автоматической загрузки при старте системы, с этим следует согласиться.
Но перезагрузить систему не всегда представляется возможным, поэтому просто загрузим нужные модули руками, все что нам нужно — точное имя драйвера, на скриншоте мы выделили его желтым, после чего выполним команду:
Если обнаружено несколько датчиков, то загрузите модули для каждого из них. Проверить что модуль успешно загружен можно командой
Или еще раз выполните команду
и убедитесь, что набор информации изменился и стал гораздо богаче.
Но не все датчики одинаково полезны, некоторые вместо реальных значений могут показывать температуру на Марсе. Почему так? Потому что единый стандарт на это отсутствует и все зависит от конкретного производителя и модели оборудования, в некоторых случаях для получения реальных значений к полученной информации нужно применять поправки, в других — просто игнорировать.
Температура накопителей через Smartmontools и Hddtemp
Если исходить из применяемых технологий записи и хранения данных накопители можно подразделить на два типа: устройства магнитной записи и твердотельные. Жесткие диски крайне чувствительны к рабочим температурам, высокая температура приводит к повышенному износу механики и ускоренной деградации магнитного покрытия и головок. Большинство производителей не рекомендуют работу при температурах выше 50 градусов, а температуру в 65 градусов считают критической.
Твердотельные накопители — это полупроводники и диапазон рабочих температур у них гораздо шире, диапазон рабочих температур может доходить до 70-80 градусов, а критические температуры начинаются уже после сотни. Это обязательно следует учитывать при интерпретации результатов. иначе можно начать бить тревогу на ровном месте.
Классические диски с интерфейсом SATA не умеют непосредственно передавать показания датчиков, для доступа к информации о состоянии диска используется специальная технология S.M.A.R.T., как правило утилита для работы со S.M.A.R.T. бывает установлена, если же нет, то самое время это сделать:
apt install smartmontools
Для получения информации о температуре запросим список атрибутов накопителя и перейдем к атрибуту с номером 194:
К сожалению, здесь тоже нет единого стандарта и разные диски по-разному отдают информацию о температуре, smartmontools умеет правильно интерпретировать возможные варианты и показывает реальное значение температуры в градусах Цельсия в колонке RAW_VALUE. Если же вы используете иные инструменты для доступа к S.M.A.R.T., то вам придется обратиться к документации на вашу модель диска для правильной расшифровки результата.
Также может быть различен набор отдаваемой информации, например, Toshiba сообщает не только текущую информацию, но и минимальную и максимальную зафиксированные для этого накопителя (пример на скриншоте выше), другие модели отдают только актуальную температуру. Ряд недорогих китайских SSD может не иметь термодатчика вообще, отдавая в S.M.A.R.T. либо заранее зашитое значение (обычно 40 градусов), либо полную ерунду.
Еще одним ограничением S.M.A.R.T. является округление температуры до целых значений.
Если же вас интересует только температура, то можете поставить специализированную утилиту hddtemp, она не делает ничего нового, точно также читает S.M.A.R.T., но выдает из него единственное значение — температуру диска. Она также есть в репозиториях и для ее установки выполните:
В выводе вы увидите модель диска и его температуру.
Чем именно пользоваться? Решайте сами, это Linux, здесь к одной цели может вести множество путей и все из них будут правильными.
Особенности NVMe накопителей
На сегодняшний день SATA интерфейс устарел и применяется только в целях обратной совместимости в бюджетных моделях SSD дисков. Все современные накопители выпускаются с поддержкой NVMe, следует помнить, что NVMе — это протокол, для подключения к ПК такие диски используют шину PCIe, а одним из возможных форм-факторов является разъем M.2.
Подключение через PCIе дает возможность прямого доступа к датчикам таких накопителей и получить значения температуры можно через lm-sensors, при этом все NVMe диски поддерживают технологию S.M.A.R.T. и получать данным с них можно двумя альтернативными путями.
Как видим, датчик точнее — он выдает температуру с точностью до десятых градуса и быстрее реагирует на ее изменения, в то время как S.M.A.R.T. показывает ее усредненное и округленное значение. Поэтому если есть возможность использовать датчик, то следует опираться на его показания.
Почему мы сделали оговорку «есть возможность»? Потому что доступ к датчику не является чем-то обязательным, все зависит от модели диска и материнской платы, но такая возможность у NVMe накопителей есть и ее следует иметь ввиду.
Как видим, контролировать значения температуры и не только ее в Linux совсем несложно и консоль не должна вас пугать, в умелых руках это удобный и мощный инструмент, владеть которым должен каждый администратор.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
4 Useful Tools to Monitor CPU and GPU Temperature in Ubuntu
The CPU or GPU temperature depends entirely on the usage of running programs or applications. Sensitive computer components such as CPUs have a finite lifespan and running them at a temperature that exceeds a certain limit (or at higher temperatures generally) can shorten it. Besides, it can also cause thermal throttling especially when the fan is not providing adequate cooling.
So it is important to monitor your system’s CPU temperature to avoid damaging it as a result of overheating. In this article, we will share some useful command-line tools to help you keep a close eye on the temperature of your CPU and GPU.
1. Glances
Glances is a cross-platform, advanced and popular real-time system monitoring tool that uses the psutil library to gather information from various system resources.
It can display information from sensors using the psutil and/or hddtemp tools. One of its intriguing features is the webserver mode which allows you to access it via a web browser to remotely monitor your Linux server.
There are various methods to install Glances on your system, but the preferred way of installing glances is using an auto-install script, which will install the latest production-ready version.
To install Glances on your system, use curl or wget command as shown.
# curl -L https://bit.ly/glances | /bin/bash OR # wget -O- https://bit.ly/glances | /bin/bash
Once you have installed it, start Glances and press f key to view sensors information.
2. Sensors
Sensors is a simple command-line utility that displays the current readings of all sensor chips including the CPU. It comes pre-installed some Linux distributions such as Ubuntu by default, otherwise install it as shown.
$ sudo apt-get install lm-sensors
Then you can run the following command to detect all sensors on your system.
Once detected, you can run the following command to check CPU temperature, GPU temperature, fan speed, voltage, etc.
3. Hardinfo
Hardinfo is a lightweight system profiler and benchmark tool designed for hardware analysis and report generation. It features comprehensive reports on system hardware and allows for the generation of HTML reports on your system’s hardware.
To install the hardinfo package on your Ubuntu Linux system, run the following command.
$ sudo apt install hardinfo
After the installation is complete, you can launch hardinfo to view devices’ information by running the following command.
To launch the GUI app, simply run the following command or search for ‘System Profiler and Benchmark’ in the system menu or Dash and open it.
Then click on sensors to view sensors information as shown in the following screenshot.
4. i7z
i7z is a tiny command-line utility that reports Intel Core i7, i5, i3 CPU information including temperatures. You can install it on your Ubuntu system by running the following command.
Once installed, run i7z with root privileges as shown.
You might also like to read these useful related articles.
That’s all for now! In this article, we have shared the useful command-line tools for viewing CPU and GPU temperatures in a Ubuntu system. Have your say about this article or ask questions via the feedback form below.