Если видеокарты старые и поддреживают только старые драйвера NVIDIA вида 470.X
Нужно собрать ядро системы, которое поддерживает данные драйвера
Устанавливаем поддерживаемые ядра
dnf install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm -y
dnf --enablerepo=elrepo-kernel install kernel-lt kernel-lt-devel -y
Проверь, что новое ядро добавилось:
rpm -qa | grep kernel
Выбери его при загрузке (или сделай его по умолчанию):
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
Проверить, какой пункт загружается сейчас
grub2-editenv list
Если увидишь, например:
saved_entry=0
— это означает, что грузится первая строка из списка (index 0).
Идем в папку куда скачен драйвер и выполняем
sh NVIDIA-Linux-x86_64-470.223.02.run
Следуем шагам на экране
После перезагружаем систему
reboot
Проверяем версию драйвера
nvidia-smi
nvcc --version
Если Cuda не установлен и вы не видите вывода после
nvcc --version
Значит необходимо установить Cuda
1️⃣ Проверить, как драйвер установлен
rpm -qa | grep -i nvidia
Если видишь пакеты вроде:
- kmod-nvidia
- akmod-nvidia
- xorg-x11-drv-nvidia
- nvidia-driver
→ значит, установлен из репозитория (dnf/yum).
Если нет ничего, но драйвер явно стоит(пример вывода ниже) — значит, ты ставил .run-файл от NVIDIA вручную.
- libnvidia-ml-580.95.05-1.el8.x86_64
- libnvidia-gpucomp-580.95.05-1.el8.x86_64
- nvidia-libXNVCtrl-580.95.05-1.el8.x86_64
- libnvidia-cfg-580.95.05-1.el8.x86_64
- nvidia-persistenced-580.95.05-1.el8.x86_64
- nvidia-modprobe-580.95.05-1.el8.x86_64
- nvidia-driver-libs-580.95.05-1.el8.x86_64
- nvidia-kmod-common-580.95.05-1.el8.noarch
- kmod-nvidia-latest-dkms-580.95.05-1.el8.x86_64
- nvidia-driver-580.95.05-1.el8.x86_64
- nvidia-settings-580.95.05-1.el8.x86_64
- nvidia-driver-cuda-libs-580.95.05-1.el8.x86_64
- libnvidia-fbc-580.95.05-1.el8.x86_64
- nvidia-driver-cuda-580.95.05-1.el8.x86_64
Методы удаления Nvidia драйверов
Удаление, если установлен из репозитория (dnf/yum)
sudo dnf remove '*nvidia*' -y
️или (на старых CentOS):
sudo yum remove '*nvidia*' -y
Потом проверь:
rpm -qa | grep -i nvidia
Если пусто — всё удалено.
Очистка остаточных файлов вручную (если нужно полностью “с нуля”)
sudo rm -rf /usr/share/nvidia
sudo rm -rf /usr/lib64/nvidia
sudo rm -rf /usr/lib/nvidia
sudo rm -rf /lib/modules/$(uname -r)/kernel/drivers/video/nvidia*
sudo rm -rf /usr/local/cuda*
sudo rm -rf /etc/modprobe.d/nvidia*
sudo rm -rf /etc/X11/xorg.conf.d/00-nvidia*
sudo rm -f /etc/X11/xorg.conf
Обнови initramfs и очисти DKMS-модули
sudo dracut -f
sudo dkms status
sudo dkms remove -m nvidia -v <version> --all
(Если dkms установлен и есть старые версии модулей.)
Перезагрузка
sudo reboot
После перезагрузки можно проверить:
lsmod | grep nvidia
Удаление, если установлен через .run файл (NVIDIA-Linux-x86_64-XXX.run)
Найди оригинальный .run файл (например NVIDIA-Linux-x86_64-470.223.02.run)
Запусти:
sudo sh NVIDIA-Linux-x86_64-470.223.02.run --uninstall
Если у тебя нет старого .run файла — можно скачать ту же версию с сайта NVIDIA, и выполнить ту же команду --uninstall.
Она удалит установленные бинарники и модули ядра.
Очистка остаточных файлов вручную (если нужно полностью “с нуля”)
sudo rm -rf /usr/share/nvidia
sudo rm -rf /usr/lib64/nvidia
sudo rm -rf /usr/lib/nvidia
sudo rm -rf /lib/modules/$(uname -r)/kernel/drivers/video/nvidia*
sudo rm -rf /usr/local/cuda*
sudo rm -rf /etc/modprobe.d/nvidia*
sudo rm -rf /etc/X11/xorg.conf.d/00-nvidia*
sudo rm -f /etc/X11/xorg.conf
Обнови initramfs и очисти DKMS-модули
sudo dracut -f
sudo dkms status
sudo dkms remove -m nvidia -v <version> --all
(Если dkms установлен и есть старые версии модулей.)
Перезагрузка
sudo reboot
После перезагрузки можно проверить:
lsmod | grep nvidia