Методы проверки версии драйвера NVIDIA в операционной системе Linux

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

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

Использование утилиты nvidia-smi для быстрой диагностики

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

В левом верхнем углу вывода вы увидите строку Driver Version. Именно она содержит номер установленной версии, например, 535.104.05. Обратите внимание, что справа от неё может быть указана версия CUDA, которую поддерживает данный драйвер, но это разные параметры. Не путайте их при выборе обновлений.

nvidia-smi

Если команда не найдена, это означает, что либо драйвер не установлен, либо не настроен правильный путь к исполняемым файлам. В таком случае система может использовать открытый драйвер Nouveau, который не поддерживает эту утилиту. Убедитесь, что вы используете проприетарное решение от производителя.

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

Анализ списка загружаемых модулей ядра

Для более глубокого понимания того, что именно загружено в ядро, стоит обратить внимание на список модулей. Команда lsmod в сочетании с фильтром grep позволяет найти модули, связанные с NVIDIA. Это особенно полезно, если графический интерфейс не загружается, но вы можете получить доступ через TTY.

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

lsmod | grep nvidia

Параметры ядра также содержат информацию о версии, если посмотреть на содержимое файла /proc/driver/nvidia/version. Этот файл является текстовым и содержит полную строку версии сборки драйвера, включая дату компиляции и номер ядра, под которым он был собран. Это надежный метод для серверных конфигураций.

☑️ Проверка загрузки модулей

Выполнено: 0 / 4
Что делать, если модуль не загружается?

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

Проверка через графический интерфейс и системные настройки

Не все пользователи Linux предпочитают работать в терминале. Современные дистрибутивы, такие как Ubuntu, Fedora или Linux Mint, предлагают удобные графические инструменты. В разделе Дополнительные драйверы (Additional Drivers) или Настройки системы (System Settings) часто отображается текущая версия.

В частности, утилита nvidia-settings, которую можно установить из репозитория, является мощным инструментом не только для настройки, но и для диагностики. При запуске приложения в заголовке окна или на главной вкладке GPU будет явно указан номер драйвера. Это самый наглядный способ для новичков.

  • Откройте меню приложений и найдите NVIDIA X Server Settings.
  • Перейдите во вкладку Information или GPU 0.
  • Обратите внимание на строку Driver Version в левой панели.

Если утилита не установлена, её можно получить через пакетный менеджер. Например, на Debian-подобных системах команда sudo apt install nvidia-settings сделает всё необходимое. После установки вы получите доступ к детальной информации о Video BIOS и памяти.

📊 Какой способ проверки версии драйвера вы используете чаще?
Командная строка (nvidia-smi)
Графический интерфейс (nvidia-settings)
Утилиты дистрибутива (Драйверы)
Другой

Использование команды lspci для аппаратной идентификации

Команда lspci является стандартным инструментом для просмотра списка Peripheral Component Interconnect устройств. Она отлично подходит для подтверждения того, что система видит видеокарту на аппаратном уровне. Однако, сама по себе она не всегда показывает версию драйвера, а скорее идентифицирует устройство.

Для получения более подробной информации используйте флаг -v или -vv. Это покажет драйвер, который в данный момент привязан к устройству (Kernel driver in use). Если там написано nvidia, значит драйвер активен, но версию придется искать другими методами.

lspci -v | grep -A 12 "VGA compatible controller"

Ключевое преимущество этого метода — независимость от загрузки графического сервера. Даже в режиме восстановления (recovery mode) или при загрузке в консольном режиме эта команда покажет, какой драйвер ядро пытается использовать. Это критично для диагностики проблем с загрузкой графической среды.

Метод Точность Требуется GUI Сложность
nvidia-smi Высокая Нет Низкая
nvidia-settings Высокая Да Низкая
lsmod Средняя Нет Средняя
lspci Низкая (аппаратная) Нет Низкая
⚠️ Внимание: Версия, показанная в lspci, может отличаться от реальной, если модуль ядра перекомпилирован после обновления. Всегда сверяйтесь с nvidia-smi.

Управление версиями через пакетные менеджеры

В дистрибутивах Linux, использующих пакетные системы, версия драйвера часто привязана к названию пакета. Вы можете узнать версию, запросив информацию об установленном пакете nvidia-driver или nvidia-utils. Это особенно актуально для систем с автоматическим обновлением.

Для Debian/Ubuntu используйте команду dpkg -l | grep nvidia, а для RHEL/Fedorarpm -qa | grep nvidia. В выводе будет указано полное имя пакета, включающее номер версии, например, nvidia-driver-535-535.104.05. Это позволяет точно идентифицировать, какой именно релиз установлен в системе.

Если вы используете Arch Linux, команда pacman -Qi nvidia покажет подробную информацию, включая версию и дату установки. Такой подход удобен для администраторов, управляющих множеством серверов, так как позволяет скриптами собирать данные о конфигурации парка машин.

Иногда пакетная версия не совпадает с версией, которую видит nvidia-smi. Это может происходить из-за того, что драйвер был установлен вручную (через .run файл), минуя репозиторий. В таких случаях пакетный менеджер не отражает реальную картину.

Открытый драйвер Nouveau и его ограничения

Если вы используете открытый драйвер Nouveau, методы с nvidia-smi не сработают, так как он не предоставляет этот интерфейс. В этом случае система полагается на общие методы управления ядром. Узнать версию можно, проверив модуль nouveau через modinfo nouveau.

Однако, команда modinfo покажет версию модуля ядра, а не версию драйвера в привычном понимании. Это важный нюанс, так как Nouveau развивается иначе, чем проприетарный драйвер. Совместимость с новыми картами серии RTX 4000 может быть ограничена или отсутствовать.

  • Установите драйвер Nouveau через репозиторий системы.
  • Используйте modinfo nouveau для просмотра метаданных модуля.
  • Помните, что производительность в Gaming и Compute задачах будет ниже.

Для большинства профессиональных задач и игр настоятельно рекомендуется переход на проприетарный драйвер. Только он обеспечивает полную поддержку функций, таких как Ray Tracing и DLSS, а также корректную работу с CUDA.

⚠️ Внимание: Драйвер Nouveau не поддерживает аппаратное ускорение видео на картах Turing и новее в полном объеме. Для работы с видео обязательно переключайтесь на официальный драйвер.

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

Иногда после обновления системы версия драйвера "слетает" или система начинает использовать базовый драйвер modesetting. Это происходит, если новый kernel не имеет скомпилированного модуля NVIDIA. В этом случае команда nvidia-smi вернет ошибку, указывающую на то, что модуль не найден.

Решение заключается в переустановке драйвера или запуске процесса пересборки модулей. На Ubuntu это может потребовать запуска команды sudo ubuntu-drivers autoinstall. Важно следить за тем, чтобы версия драйвера соответствовала требованиям вашего дистрибутива.

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

Заключение и рекомендации по выбору версии

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

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

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

Как узнать версию драйвера, если экран черный?

Если экран черный, попробуйте переключиться в консоль (Ctrl+Alt+F3), войти в систему и выполнить команду cat /proc/driver/nvidia/version. Это покажет версию, даже если GUI не работает.

Почему nvidia-smi не работает?

Вероятно, у вас установлен открытый драйвер Nouveau или проприетарный драйвер поврежден. Проверьте наличие модуля через lsmod | grep nvidia. Если модулей нет, драйвер не загружен.

Можно ли использовать несколько версий драйвера?

Технически можно, но не рекомендуется. Обычно в системе активна только одна версия драйвера. Переключение между версиями требует пересборки модулей ядра для каждой версии.

Где скачать драйвер для Linux?

Официальные драйверы доступны на сайте NVIDIA в разделе Drivers. Выберите вашу серию карт, операционную систему (Linux 64-bit) и тип дистрибутива.

⚠️ Внимание: Убедитесь, что скачиваемый драйвер поддерживает ваше конкретное поколение видеокарт (например, Kepler, Maxwell, Pascal), так как старые карты могут не поддерживаться новыми версиями ПО.