Полное руководство: как узнать температуру процессора и видеокарты в Linux

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

Для выявления текущей нагрузки на ядра Intel или AMD достаточно выполнить одну команду в терминале, чтобы получить мгновенный срез показателей. Мониторинг нагрева графического ускорителя NVIDIA или AMD Radeon требует специализированных драйверов, так как стандартные датчики материнской платы часто не считывают данные с GPU.

Базовые методы диагностики через терминал

Первым шагом является установка пакета lm-sensors, который является стандартом де-факто для считывания показаний температурных датчиков вLinux-окружении. Без этой утилиты вы не сможете получить доступ к данным о тепловыделении центрального процессора, если только не используете проприетарные драйверы.

После установки необходимо запустить команду sensors-detect, которая просканирует системную шину и найдет активные чипы сенсоров. Этот процесс требует подтверждения всех вопросов с ответом "yes", чтобы загрузить необходимые модули ядра. Если вы пропустите этот этап, команда sensors вернет пустой результат или ошибку отсутствия датчиков.

Выполните ввод данных для инициализации:

sudo sensors-detect

sudo sensors

В выводе вы увидите разделы для каждого процессора, где указаны Core 0, Core 1 и другие. Критическим значением считается температура выше 85°C при нагрузке, что требует немедленного вмешательства.

Для видеокарт на базе Intel встроенная графика часто отображается в том же выводе, если драйверы intel-hdmi активны. Однако для дискретных карт NVIDIA стандартный вывод sensors может быть пуст, так как они используют собственную шину мониторинга.

⚠️ Внимание: Если команда sensors не выдает данных о GPU, не пытайтесь перезагружать систему многократно — это лишь усилит нагрев без получения диагностики. Используйте специализированные утилиты для видеокарт.

Мониторинг видеокарт NVIDIA и AMD

Процедура получения данных для графических ускорителей кардинально отличается в зависимости от производителя чипа. Для карт NVIDIA необходим драйвер с поддержкой nvidia-smi, который является частью проприетарного пакета драйверов.

Введите команду nvidia-smi в терминале, чтобы получить таблицу с текущей температурой, загрузкой видеопамяти и частотами GPU. В колонке "Temp" отображается текущая температура, а "Perf" показывает текущий уровень производительности (P0-P12).

nvidia-smi --query-gpu=temperature.gpu,utilization.gpu,clocks.current.graphics --format=csv

Эта команда выводит только нужные параметры в удобном CSV-формате, что удобно для последующего анализа или логирования. Если вы видите значение "N/A" вместо температуры, проверьте корректность установки драйверов через lspci | grep -i nvidia.

Для карт AMD ситуация проще, так как современные драйверы amdgpu интегрированы в ядро Linux. Данные можно получить через файловую систему /sys/class/drm/ или утилиту radeontop. Утилита radeontop показывает нагрузку в реальном времени и температуру, если поддерживается аппаратно.

📊 Какой GPU у вас установлен?
NVIDIA (Proprietary)
NVIDIA (Open Source)
AMD Radeon
Intel Graphics

Графические интерфейсы и системные мониторы

Если вы предпочитаете визуальное отображение данных, в Linux существует множество графических утилит для мониторинга. Psensor — это популярное приложение для GNOME, которое строит красивые графики изменения температуры во времени.

После установки psensor вы сможете видеть не только текущие значения, но и настраивать звуковые оповещения при достижении критических порогов. Программа автоматически подхватывает датчики, определенные утилитой lm-sensors.

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

Распределение данных по типам утилит представлено в таблице ниже:

Утилита Тип интерфейса Поддержка GPU Сложность настройки
lm-sensors Терминал Частичная Низкая
Psensor Графический Зависит от lm-sensors Средняя
nvidia-smi Терминал Только NVIDIA Низкая
radeontop Терминал Только AMD Низкая
Графические утилиты для KDE Plasma

В KDE Plasma встроен отличный виджет "Системные мониторы", который можно добавить на рабочий стол без установки дополнительного ПО. Он показывает CPU, RAM и GPU в реальном времени.

Чек-лист проверки системы перед нагрузкой

Прежде чем запускать стресс-тесты или тяжелые вычисления, необходимо убедиться в корректности работы системы мониторинга. Игнорирование этого этапа может привести к необратимому повреждению silicon-чипов из-за скрытого перегрева.

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

  • ✅ Проверьте наличие драйверов: выполните lsmod | grep nvidia или lsmod | grep amdgpu.
  • ✅ Запустите сканирование датчиков: команда sensors-detect должна завершиться успешно.
  • ✅ Сравните показания: сверьте данные из nvidia-smi и графических утилит на предмет расхождений.
  • ✅ Установите пороги оповещения: настройте триггеры в Psensor на 80°C для CPU и 85°C для GPU.

☑️ Подготовка к мониторингу

Выполнено: 0 / 5

Анализ критических уровней нагрева

Понимание того, какие температуры являются нормальными, а какие критическими, важно для долголетия вашего оборудования. Для процессоров Intel и AMD в режиме простоя температура должна находиться в диапазоне 30-45°C.

При полной нагрузке (рендеринг, игры) допустимые значения поднимаются до 75-85°C, но длительное пребывание выше 90°C требует снижения частот или улучшения охлаждения. Thermal throttling начинается автоматически, когда температура достигает пиковых значений (обычно 95-100°C), снижая производительность для защиты чипа.

Для видеокарт NVIDIA предел обычно составляет 83-86°C, после чего включается агрессивное снижение тактовой частоты. Карты AMD могут работать стабильно при более высоких температурах, но превышение 95°C является тревожным сигналом.

Важно учитывать, что Tjunction (максимальная температура перехода) отличается от измеряемой температуры корпуса чипа. Ошибка в интерпретации этих данных может привести к ненужным заменам термопасты или кулеров.

⚠️ Внимание: Если температура в простое превышает 50°C, это свидетельствует о неэффективной работе системы охлаждения или повышенной температуре в помещении, а не о неисправности сенсора.

Автоматизация мониторинга и логирование

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

Пример скрипта для сбора данных каждую минуту:

while true; do date >> temp.log; sensors >> temp.log; sleep 60; done

Такой подход позволяет построить графики зависимости температуры от времени суток или нагрузки. Инструменты вроде Collectd или Prometheus предоставляют более продвинутые возможности для промышленного мониторинга.

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

Решение проблем с отсутствием показаний

Если утилиты не видят температуру, проблема часто кроется в отсутствии необходимых модулей ядра или конфликтах версий драйверов. Проверьте, загружен ли модуль coretemp для процессоров Intel:

sudo modprobe coretemp

Для карт AMD убедитесь, что драйвер amdgpu загружен и поддерживает функцию powerplay. В старых дистрибутивах может потребоваться ручное включение поддержки сенсоров GPU в ядре.

Иногда помогает обновление ядра Linux, так как поддержка новых чипов добавляется именно там. Проверьте версию ядра командой uname -r и сравните с требованиями производителя вашей видеокарты.

Если ничего не помогает, проверьте физические соединения датчиков на материнской плате, хотя в ноутбуках это часто невозможно без разборки. В некоторых случаях BIOS/UEFI блокирует доступ к датчикам из операционной системы.

Заключение и рекомендации

Эффективный мониторинг температуры в Linux требует комбинации правильных утилит и понимания архитектуры вашей системы. Использование только одного инструмента может дать неполную картину, поэтому рекомендуется дублировать данные разными методами.

Регулярная проверка показывает, что своевременное охлаждение предотвращает деградацию кремния и сохраняет стабильность системы. Не игнорируйте предупреждения о перегреве, так как они являются единственным индикатором impending failure.

⚠️ Внимание: Не пытайтесь обмануть систему мониторинга, отключая датчики программно. Это приведет к отсутствию защиты от перегрева и может сжечь оборудование.

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

Как проверить температуру видеокарты без драйверов NVIDIA?

Если у вас установлены только открытые драйверы nouveau, функция мониторинга температуры может быть ограничена. В этом случае попробуйте утилиту nvclock (для старых карт) или проверьте файлы в /sys/class/drm/card0/device/. Однако для точных данных настоятельно рекомендуется установка проприетарных драйверов.

Почему температура процессора в Linux выше, чем в Windows?

Это распространённое явление, связанное с различиями в алгоритмах управления питанием и частотой опроса датчиков. Linux может активнее использовать процессор для фоновых задач, а также алгоритмы TDP в ядре могут быть настроены иначе, чем в фирменном ПО производителя.

Можно ли узнать температуру SSD в Linux?

Да, большинство современных накопителей поддерживают протокол S.M.A.R.T. Используйте утилиту smartmontools и команду smartctl -a /dev/sdX (где X — буква диска) для получения полной информации о температуре и здоровье диска.

Как настроить автоматическое отключение при перегреве?

Для этого используется система управления вентиляторами fancontrol из пакета lm-sensors. Настройка требует редактирования файлов конфигурации /etc/fancontrol. Также можно настроить thermald, который автоматически снижает производительность при достижении пороговых значений.

Какая утилита лучше для мониторинга в реальном времени?

Для терминала лучшим выбором является htop с модулем датчиков или nvtop (аналог htop для GPU). Для графического интерфейса отлично подходят Psensor или стандартные виджеты рабочего стола GNOME/KDE.