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

Система охлаждения является критическим элементом стабильности вашего компьютера, особенно при работе с ресурсоемкими задачами. В операционных системах семейства Linux контроль за thermal throttling (троттлингом) требует использования специализированных инструментов, так как стандартный интерфейс часто скрывает детальные данные о состоянии GPU. Без своевременного мониторинга вы рискуете столкнуться с непредсказуемыми вылетами приложений или снижением производительности в играх.

Многие пользователи ошибочно полагают, что в Linux невозможно получить такие же подробные данные, как в Windows. На самом деле, командная строка предоставляет даже более гибкие возможности для анализа, если знать правильные утилиты. Независимо от того, используете вы дистрибутив Ubuntu, Arch или Fedora, существует универсальный подход к сбору телеметрии с графического ускорителя.

Мониторинг через командную строку для карт NVIDIA

Большинство пользователей Linux с картами от NVIDIA начинают знакомство с мониторингом именно с драйверов, поставляемых производителем. Стандартная утилита nvidia-smi является основным инструментом для получения сводной информации о состоянии графического процессора. Она показывает текущую температуру, загрузку, использование памяти и частоту вращения вентиляторов в реальном времени.

Для получения детального отчета достаточно ввести в терминале следующую команду:

nvidia-smi
. В выводе вы увидите таблицу, где в столбце "Temp" указана текущая температура в градусах Цельсия. Этого часто бывает достаточно, чтобы быстро оценить, не перегревается ли система.

Если же вам нужно отслеживать изменения температуры в динамике, утилита позволяет задать интервал обновления. Следующая команда выводит обновленные данные каждые 2 секунды:

nvidia-smi -l 2
. Это удобно при стресс-тестах или длительных рендерингах, когда нужно визуально контролировать рост показателей.

⚠️ Внимание: Утилита nvidia-smi требует наличия проприетарных драйверов. Если у вас установлены открытые драйверы Nouveau, эта команда может не работать или выдавать ошибку доступа.

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

nvidia-smi --query-gpu=temperature.gpu --format=csv
. Это особенно полезно, если вы планируете перенаправлять вывод данных в скрипты для автоматического уведомления.

📊 Какой производитель видеокарты установлен в вашей системе?
NVIDIA
AMD
Intel
Другой/Служу на интегрированной

Работа с утилитами для видеокарт AMD и Intel

Ситуация с картами AMD и Intel в Linux кардинально отличается благодаря использованию открытых драйверов Mesa. Для получения данных о температуре здесь используется утилита radeontop или встроенный инструмент amdgpu. В современных ядрах Linux мониторинг часто доступен через интерфейс sysfs, что делает чтение данных прямым и быстрым.

Чтобы увидеть температуру для карт AMD, наиболее информативным является вывод содержимого файла в виртуальной файловой системе. Выполните команду:

cat /sys/class/drm/card0/device/hwmon/hwmon*/temp1_input
. Результат будет представлен в миллиградусах, поэтому для удобства чтения часто делят число на 1000.

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

cat /sys/class/drm/card0/device/hwmon/hwmon*/temp1_input
. Если система имеет несколько видеокарт, индекс card0 нужно заменить на соответствующий номер вашего ускорителя.

  • Убедитесь, что модуль ядра для вашей карты загружен (проверьте через lsmod | grep amdgpu или i915).
  • Используйте утилиту radeontop для визуализации загрузки и температур в графическом режиме.
  • Для карт Intel проверьте наличие пакета intel-gpu-tools в вашем репозитории.
Что делать, если путь к датчикам отличается?

Иногда файл может лежать в hwmon1, hwmon2 или другом каталоге. Используйте команду ls /sys/class/drm/card0/device/hwmon/ для поиска нужного каталога, содержащего файл temp1_input.

Использование универсальных утилит LM-Sensors

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

Установка пакета зависит от используемого дистрибутива. В Debian и Ubuntu используйте

sudo apt install lm-sensors
, а в Arch Linux
sudo pacman -S lm-sensors
. После установки необходимо запустить утилиту обнаружения, которая автоматически просканирует систему.

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

Сам процесс чтения данных осуществляется командой sensors. В выводе вы увидите список всех найденных датчиков. Ищите секции с названиями, связанными с GPU, например, nvme, coretemp или специфические имена для чипов AMD и NVIDIA (если драйверы открыты).

⚠️ Внимание: Утилита lm-sensors не всегда корректно считывает температуру с закрытых драйверов NVIDIA без дополнительной настройки. В таких случаях лучше полагаться на nvidia-smi.

Графические интерфейсы для мониторинга

Не всем пользователям удобно работать в терминале, и для них существуют удобные графические приложения. Одним из лучших решений является Psensor, который предоставляет наглядные графики изменения температуры во времени. Приложение собирает данные от lm-sensors и отображает их в виде кривых линий, что позволяет легко заметить пиковые нагрузки.

Установить Psensor можно через менеджер пакетов вашей системы. После запуска программа автоматически сканирует доступные датчики. В главном окне вы увидите текущие значения и сможете настроить цветовую индикацию: например, красным цветом выделить температуры выше 80°C.

Для продвинутых пользователей, желающих иметь мониторинг прямо в рабочем столе, отлично подойдет утилита CoolerMaster или плагины для GNOME/KDE. Они позволяют выводить текущую температуру видеокарты в системный трей или на панель задач, обеспечивая постоянный визуальный контроль.

☑️ Проверка графического мониторинга

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

Сравнение методов мониторинга и их особенности

Выбор способа мониторинга зависит от ваших задач: разовая проверка, длительный стресс-тест или постоянный контроль в фоновом режиме. Разные инструменты имеют свои преимущества и недостатки, которые стоит учитывать при настройке системы.

Ниже приведена таблица, сравнивающая основные методы получения данных о температуре в Linux:

Метод Требования Преимущества Недостатки
nvidia-smi Проприетарные драйверы NVIDIA Точность, детализация, встроенный инструмент Не работает с драйверами Nouveau
lm-sensors Установленный пакет Универсальность, поддержка AMD/Intel Требует настройки, не всегда видит GPU NVIDIA
radeontop Драйверы Mesa Графическое представление данные в реальном времени Только для карт AMD, дополнительная установка
Psensor Графическая среда Наглядные графики, удобство использования Нагрузка на ресурсы системы, зависимость от GUI

Для NVIDIA карт в игровых сценариях часто предпочтительнее использовать командную строку или специальные оверлеи, так как они потребляют меньше ресурсов. Для серверов и рабочих станций критична стабильность, поэтому здесь часто используют lm-sensors в связке с системами удаленного мониторинга.

Интерпретация данных и безопасные пределы

Полученные данные о температуре требуют правильной интерпретации. Нормальная рабочая температура для современных видеокарт варьируется в зависимости от модели и нагрузки. В простое (idle) показатели обычно составляют 30-45°C, а под нагрузкой могут достигать 70-85°C.

Критическим порогом, при котором начинается троттлинг (снижение частот для защиты), является обычно 83-85°C. Если температура стабильно держится выше 85°C, это сигнал о необходимости вмешательства: очистки системы охлаждения или замены термопасты. Превышение 90°C в течение длительного времени может привести к деградации кристалла.

Обратите внимание, что "Hot Spot" (точка с максимальной температурой на чипе) может быть на 10-15 градусов выше средней температуры GPU. Это нормально, но если разница становится слишком большой или Hot Spot превышает 100°C, стоит проверить плотность прилегания радиатора.

  • Следите за температурой в простое: если она выше 50°C — mungkin проблема с циркуляцией воздуха в корпусе.
  • Сравнивайте показатели с официальными спецификациями производителя для вашей конкретной модели GPU.
  • Используйте утилиты для записи логов при обнаружении нестабильной работы системы.

Частые вопросы и решение проблем

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

Что делать, если команда nvidia-smi не найдена?

Это означает, что проприетарные драйверы не установлены или не загружены. Проверьте их наличие через dpkg -l | grep nvidia (для Debian/Ubuntu) или установите драйверы через центр управления вашего дистрибутива. Убедитесь, что вы используете именно драйверы NVIDIA, а не Nouveau.

Почему lm-sensors не показывает температуру видеокарты?

Утилита lm-sensors считывает датчики с материнской платы и северного моста. Для видеокарт NVIDIA с закрытыми драйверами она часто не видит GPU. В этом случае используйте nvidia-smi. Для AMD убедитесь, что модуль ядра amdgpu активен и поддерживает чтение через sysfs.

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

Можно написать простой bash-скрипт, который проверяет значение температуры через nvidia-smi или sensors и отправляет уведомление, если порог превышен. Для этого используйте утилиту notify-send или интеграцию с системами оповещения типа Telegram.

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

Да, для карт AMD это часто делается через amdgpu или утилиту rocm-smi. Для NVIDIA с проприетарными драйверами управление вентиляторами доступно через nvidia-settings, но может потребовать настройки прав доступа или использования режима "Coolbits".

Влияет ли режим энергосбережения на показания температуры?

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