|
![]()
Представленные в настоящей статье драйверы являются разработкой компании NVidia. Компанией ООО "РусБИТех-Астра" они не дорабатываются, и не проходят сертификацию. Компания "РусБИТех-Астра" не несет ответственности за корректное функционирование этих драйверов. Все драйверы без DKMS подписаны на ключах ООО "РусБИТех-Астра" и обеспечивают функционирование в режиме замкнутой программной среды.
Комплекты драйверов представлены архивами единого репозитория, содержащего все варианты драйверов для всех вариантов ядер, используемых в Astra Linux Special Edition, при этом:
Драйверы NVidia для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), требующие использования DKMS, доступны в составе расширенного репозитория Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7). |
Все драйверы без DKMS подписаны на ключах ООО "РусБИТех-Астра" и обеспечивают функционирование в режиме замкнутой программной среды.
При использовании драйверов без DKMS при установке нового ядра ОС необходимо переустановить драйверы:
|
Драйверы для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8) доступны в соответствующем установленному оперативному обновлению расширенном репозитории. Ограничения применимости:
Применим только для обновления БЮЛЛЕТЕНЬ № 2025-0319SE17 (оперативное обновление 1.7.7). Неприменим для других обновлений.
Поддерживаемые ядра:
|
Применим только для обновления БЮЛЛЕТЕНЬ № 2024-0830SE17 (оперативное обновление 1.7.6). Неприменим для других обновлений.
Поддерживаемые ядра:
|
Выпуск содержит два комплекта драйверов, собранных для разных обновлений. Представленные в выпуске версии драйверов:
Комплекты драйверов предназначены для следующих обновлений:
|
Применим только для обновления БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1.7.1). Неприменимо для других обновлений. Представленные версии драйверов:
Поддерживаемые ядра:
|
Заменен выпуском 22.11.2023.
Применим только для обновления БЮЛЛЕТЕНЬ № 2023-0426SE17 (оперативное обновление 1.7.4). Неприменимо для других обновлений. Представленные версии драйверов:
Поддерживаемые ядра:
|
Применим только для обновления БЮЛЛЕТЕНЬ № 2022-1110SE17 (оперативное обновление 1.7.3). Неприменимо для других обновлений. Представленные версии драйверов:
Поддерживаемые ядра:
|
В архивах представлены как драйверы с DKMS, так и драйверы без DKMS. Порядок установки описан далее. Версия 04.07.2023. Драйверы данной версии предназначены для установки исключительно с ядрами из состава обновления БЮЛЛЕТЕНЬ № 20221220SE16 (оперативное обновление 12) . Представленные версии драйверов:
Версия: 06.09.2022. Представленные версии драйверов:
Поддерживаемые ядра:
|
Описанные далее действия по установке и удалению драйверов NVidia применимы ко всем обновлениям Astra Linux на платформе x86-64. Отличаются загружаемые архивы с драйверами, иные отличия описаны в тексте. |
При работе в Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2022-0819SE17 (оперативное обновление 1.7.2) для переключения используемых графических драйверов можно использовать графический инструмент fly-admin-driver ("Пуск" - "Панель управления" - "Система" - "Управление драйверами". |
Если существует файл /etc/X11/xorg.conf, переименовать его (или просто удалить), например:
| sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.`date +%s` |
Запретить запуск драйверов Nouveau, добавив в файл /etc/modprobe.d/blacklist.conf строчки
| blacklist nouveau options nouveau modeset=0 |
и закомментировать в файле /etc/initramfs-tools/modules строчку nouveau modeset=1
| #nouveau modeset=1 |
после чего выполнить команду
| update-initramfs -u -k all |
Вышеуказанные действия можно выполнить следующим сценарием от имени суперпользователя с высоким уровнем целостности:
| echo blacklist nouveau >> /etc/modprobe.d/blacklist.conf echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist.conf sed -i -e "s/^[[:space:]]*nouveau[[:space:]]\+modeset[[:space:]]*=[[:space:]]*1/#nouveau modeset=1/" /etc/initramfs-tools/modules update-initramfs -u -k all |
Распаковать полученный архив. Далее предполагается, что архив загружен в текущий каталог и распаковывается в каталог /srv:
sudo tar xf ALSE1?-NVidia-all-*.tar.gz -C /srv |
Если предполагается устанавливать драйверы на компьютеры не используя сетевой репозиторий, то распаковать архив можно сразу на съемный носитель, и далее установку выполнять с этого носителя.
Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7):
deb file:/srv/ALSE17-NVidia-all-230607 1.7_x86-64 non-free |
или
deb file:/srv/ALSE17-NVidia-all-230227 1.7_x86-64 non-free |
Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6), Astra Linux Special Edition РУСБ.10015-16 исп. 1 и Astra Linux Common Edition:
deb file:/srv/ALSE16-NVidia-all-220906 smolensk non-free |
Допустима также форма указания репозиториев с использованием "тройной косой черты", например:
|
Помимо подключения репозитория с драйверами для установки драйверов:
В Astra Linux Common Edition на время установки драйверов изменить приоритет репозитория, например, закомментировав содержимое файла /etc/apt/preferences.d/orel (см. Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов).
После подключения репозитория обновить список пакетов:
| sudo apt update |
По необходимости установить пакет nvidia-detect и выполнить проверку оборудования. При этом независимо от используемого оборудования рекомендуется использовать пакет самой последней версии (версия 525 доступна в расширенном репозитории 1.7.4.ext1):
| sudo apt install nvidia-detect-525 |
в случае неработоспособности последней версии можно установить более старые версии:
| sudo apt install nvidia-detect-510 sudo apt install nvidia-detect-495 sudo apt install nvidia-detect-470 sudo apt install nvidia-detect-460 sudo apt install nvidia-detect-390 sudo apt install nvidia-detect-340 |
После установки пакета проверка оборудования выполняется командой:
| nvidia-detect |
Для версий 390 и выше:
| sudo apt install nvidia-driver-no-dkms-<номер_версии> |
Для версии 340
| sudo apt install nvidia-no-dkms-340 |
Драйверы с использованием DKMS:
Для версий 390 и выше:
| sudo apt install nvidia-driver-<номер_версии> |
Для версии 340:
| sudo apt install nvidia-340 |
После установки новых драйверов перезагрузить компьютер:
| sudo reboot |
| Перед удалением драйверов Nvidia во избежание утери доступа к машине рекомендуется переключить в BIOS вывод графики на интегрированную видеокарту. |
Для удаления драйверов Nvidia и восстановления работы драйверов Nouveau следует выполнить следующие действия:
Очистить и обновить файл /etc/X11/xorg.conf;
sudo rm /etc/X11/xorg.conf |
Удалить все пакеты драйверов Nvidia:
| sudo apt remove --purge --yes --force-yes nvidia* sudo apt remove --purge --yes --force-yes libnvidia* sudo apt remove --purge --yes --force-yes xserver-xorg-video-n* for nvdeb in `dpkg -l | grep nvidia`; do sudo apt remove --purge --yes --force-yes $nvdeb done |
Восстановить оригинальные версии GL библиотек mesa и символических ссылок:
| sudo apt install --reinstall --yes --force-yes xserver-xorg-core libgl1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgles2 libgles2-mesa libglew2.? libglewmx1.13 libglu1-mesa libglvnd0 libglx-mesa0 libglx0 |
Удалить модули ядра Nvidia:
| for nvdriver in `find /lib/modules -type f -name "nvidia*"`; do echo "$nvdriver" sudo mv -f $nvdriver ${nvdriver}-$$-backup done sudo depmod -a |
Удалить (или закомментировать) строки в файле /etc/modprobe.d/blacklist.conf, запрещающие запуск драйверов Nouveau:
# blacklist nouveau |
Раскомментировать в файле /etc/initramfs-tools/modules строку
| nouveau modeset=1 |
и выполнить команду
| sudo update-initramfs -u -k all |
Перезагрузить машину.
| Для удаления драйверов Nvidia можно воспользоваться утилитой деинсталляции драйверов Nvidia из пакета astra-nvidia, доступного по ссылке. |
После установки драйверов Nvidia при запуске некоторых систем CAD под Wine (см. Установка Wine на Astra Linux) может возникать ошибка "libGL error: failed to load driver: swrast". Для устранения этой ошибки удалить входящий в состав драйверов Nvidia файл /usr/lib/i386-linux-gnu/libGL.so.1:
| sudo rm /usr/lib/i386-linux-gnu/libGL.so.1 |
| Данная проблема может проявляться в ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.4/1.5). При работе с ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) проблем с расширениями OpenGL не наблюдается, и никакие действия не требуются. |
Для устранения проблемы файл /etc/X11/fly-dm/Xsetup привести к виду:
#! /bin/sh
# Xsetup - run as root before the login dialog appears
#xconsole -geometry 480x130-0-0 -notify -verbose -fn fixed -exitOnFail -file /dev/xconsole &
if [ -x /usr/sbin/pdp-flbl ]; then
find /dev/dri -type c -exec /usr/sbin/pdp-flbl :::ehole {} \;
find /dev -name nvidia* -type c -exec /usr/sbin/pdp-flbl :::ehole {} \;
/usr/sbin/pdp-flbl -R :::ehole /proc/driver/nvidia \;
fi
/usr/bin/fly-dm-set-dpi.sh |
Если требуется использовать только один видеоадаптер, то в первую очередь следует проверить настройки в BIOS ноутбука: возможно там есть опция, отключающая один из чипов.
Также можно использовать следующее решение:с
Установить драйвер Nvidia.
Узнать адрес карты Nvidia. Чтобы узнать адрес выполнить команду:
01:00.0 3D controller [0302]: NVIDIA Corporation Device [10de:139b] (rev a2) |
PCI адрес находится в начале строки, в примере выше это "01:00.0". В выводе команды lspci в качестве разделителя используется точка, в файле - двоеточие. Кроме того, в файле лидирующие нули не указываются. Т.е. соответствующая адресу "01:00.0" строка в файле будет выглядеть так:
BusID "PCI:1:0:0" |
Проприетарный драйвер не поддерживает динамическое переключение между картами, поэтому для включения карты Nvidia изменить или создать файл (если отсутствует) /etc/X11/xorg.conf со следующим содержимым:
Section "Module"
Load "modesetting"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:X:Y:Z"
Option "AllowEmptyInitialConfiguration"
EndSection |
где строчка BusID "PCI:X:Y:Z" - полученный ранее PCI адрес карты Nvidia.
Создать файл /usr/local/bin/nvidia_switch.sh :
xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto xrandr --dpi 96 |
и сделать этот файл исполняемым:
chmod +x /usr/local/bin/nvidia_switch.sh |
Добавить созданный файл в файл /etc/X11/fly-dm/Xsetup :
#! /bin/sh
# Xsetup - run as root before the login dialog appears
#xconsole -geometry 480x130-0-0 -notify -verbose -fn fixed -exitOnFail -file /dev/xconsole &
/usr/local/bin/nvidia_switch.sh
if [ -x /usr/sbin/pdp-flbl ]; then find /dev/dri -type c -exec /usr/sbin/pdp-flbl :::ehole {} \;; fi
/usr/bin/fly-dm-set-dpi.sh |
Перезагрузить компьютер.
После установки драйверов NVIDIA версии 435.17 и более поздних версий становится доступной возможность использовать PRIME Render Offload - официальный метод поддержки переключения графики Nvidia. При этом xf86-video-modesetting, xf86-video-amdgpu (450.57), и xf86-video-intel (455.38) официально поддерживаются как iGPU драйверы. Для запуска программы на видеокарте NVIDIA можно использовать следующую форму команды:
| __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME="nvidia" __VK_LAYER_NV_optimus="NVIDIA_only" <имя_программы> |