Правильная установка драйверов NVIDIA в Fedora

Пользователи видеокарт NVIDIA после установки дистрибутива Fedora часто жалуются на отсутствие полноценного 3D ускорения графики из-за использования свободных драйверов «из коробки», поэтому в данной статье мы подробно рассмотрим как следует и как не следует устанавливать проприетарные драйверы видеокарт NVIDIA для Fedora.

Введение

К написанию данной статьи меня побудила статья на другом сайте, в которой рассказывается о единственно верном с их точки зрения варианте установки посредством запуска с правами суперпользователя .run файла, скачанного с официального сайта NVIDIA.

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

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

Выбор способа установки

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

Установленные из репозиториев драйверы будут автоматически обновляться штатным для дистрибутива способом (для Fedora через dnf upgrade, либо графический менеджер пакетов на базе PackageKit).

Установка обычного драйвера

Обычный проприетарный драйвер NVIDIA доступен в репозиториях RPM Fusion, поэтому нам потребуется подключить их если они ещё не подключены (необходимы как free, так и nonfree):

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

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

Установка для современных видеокарт

Вариант для современных видеокарт NVIDIA (серии 800 (ноутбуки), 900 и 1000, 2000, 1600, 3000 и более современные):

sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs xorg-x11-drv-nvidia-power

Если используется 64-битная ОС, но требуется запускать ещё и Steam и 32-битные версии игр, то установим также 32-битный драйвер (устанавливать сразу после предыдущих):

sudo dnf install xorg-x11-drv-nvidia-libs.i686

Установка для более старых видеокарт

Для видеокарт NVIDIA серий 600 и 700:

sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia-470xx xorg-x11-drv-nvidia-470xx xorg-x11-drv-nvidia-470xx-libs xorg-x11-drv-nvidia-470xx-power

Для 64-битных ОС с необходимостью запуска 32-битных игр (устанавливать сразу после предыдущих):

sudo dnf install xorg-x11-drv-nvidia-470xx-libs.i686

Установка для устаревших видеокарт

Для устаревших видеокарт NVIDIA (300, 400, 500):

sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia-390xx xorg-x11-drv-nvidia-390xx xorg-x11-drv-nvidia-390xx-libs

Для 64-битных ОС с необходимостью запуска 32-битных игр (устанавливать сразу после предыдущих):

sudo dnf install xorg-x11-drv-nvidia-390xx-libs.i686

Действия по окончании установки

По окончании установки необходимо убедиться, что модули ядра были успешно собраны и установлены корректно:

sudo akmods --force

Если возникла ошибка, то подробный журнал можно найти в каталоге /var/cache/akmods/nvidia/.

Теперь вырежем из образа initrd драйвер nouveau и добавим NVIDIA:

sudo dracut --force

Активируем systemd-юниты для корректной работы ждущего и спящего режимов:

sudo systemctl enable nvidia-{suspend,resume,hibernate}

Удаление драйверов

Если возникли какие-то проблемы, либо драйверы NVIDIA более не требуются, то их всегда можно удалить штатным способом:

sudo dnf remove \*nvidia\*

По окончании удаления необходимо в обязательном порядке пересобрать образ initrd, чтобы вернуть в него удалённый при установке свободный драйвер nouveau:

sudo dracut --force

При возникновении чёрного экрана

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

rd.drivers.blacklist=nouveau nouveau.modeset=0

Также нужно в обязательном порядке зайти в модуль настройки UEFI компьютера или ноутбука и отключить UEFI Secure Boot (сама Fedora поддерживает работу с Secure Boot, однако модули ядра проприетарного драйвера не имеют цифровой подписи, поэтому не могут быть загружены в данном режиме и, как следствие, пользователь увидит чёрный экран), а также перевести его из режима Windows Only в Other OS.

Работа с включённым UEFI Secure Boot поддерживается начиная с Fedora 36, однако требуется настройка.

Установка драйверов для NVIDIA Optimus

Начиная с Fedora 31 и версии проприетарного драйвера 435.xx, технология NVIDIA Optimus, используемая в ноутбуках с гибридной графикой, поддерживается в полной мере «из коробки». К сожалению, старые поколения видеокарт (ниже серии 700) им не поддерживаются и поэтому работать не будут.

Подключим репозитории RPM Fusion:

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Установим стандартный драйвер NVIDIA для современных видеокарт:

sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs

Если используется 64-битная ОС, но требуется запускать ещё и Steam и 32-битные версии игр, то установим также 32-битный драйвер (устанавливать сразу после предыдущих):

sudo dnf install xorg-x11-drv-nvidia-libs.i686

Действия по окончании установки

По окончании установки необходимо убедиться, что модули ядра были успешно собраны и установлены корректно:

sudo akmods --force

Если возникла ошибка, то подробный журнал можно найти в каталоге /var/cache/akmods/nvidia/.

Теперь вырежем из образа initrd драйвер nouveau и добавим NVIDIA:

sudo dracut --force

При возникновении чёрного экрана

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

rd.drivers.blacklist=nouveau nouveau.modeset=0

Также нужно в обязательном порядке зайти в модуль настройки UEFI компьютера или ноутбука и отключить UEFI Secure Boot (сама Fedora поддерживает работу с Secure Boot, однако модули ядра проприетарного драйвера не имеют цифровой подписи, поэтому не могут быть загружены в данном режиме и, как следствие, пользователь увидит чёрный экран), а также перевести его из режима Windows Only в Other OS.

Работа с NVIDIA Optimus

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

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia application [параметры запуска приложения]

Пример запуска панели управления NVIDIA для Optimus конфигураций:

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia nvidia-settings -c :8

Пример запуска приложения app.exe через Wine на Optimus:

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia wine app.exe

Удаление драйверов

Если возникли какие-то проблемы, либо драйверы NVIDIA более не требуются, то их всегда можно удалить штатным способом:

sudo dnf remove \*nvidia\*

По окончании удаления необходимо в обязательном порядке пересобрать образ initrd, чтобы вернуть в него удалённый при установке свободный драйвер nouveau:

sudo dracut --force

Пользователям Gnome с Wayland

Если используется Gnome с GDM, то необходимо отключить поддержку Wayland ибо проприетарные драйверы NVIDIA на момент написания данной статьи работают с ним некорректно. Для этого нужно отредактировать файл /etc/gdm/custom.conf, добавив или расскомментировав строку WaylandEnable=false:

sudo vim /etc/gdm/custom.conf

Если этот шаг пропустить, то при следующей загрузки увидим серый экран с надписью «Упс, что-то пошло не так». Пользователи KDE, XFCE и других DE могут смело его пропускать ибо в Fedora используется Wayland пока только для Gnome.

113 commentaries to post

  1. Не находит akmod-nvidia, org-x11-drv-nvidia, xorg-x11-drv-nvidia-libs
    Пакета с названием akmod-nvidia не найдено.
    Пакета с названием xorg-x11-drv-nvidia не найдено.
    Пакета с названием xorg-x11-drv-nvidia-libs не найдено.
    Ошибка: Совпадений не найдено.

    1. Сначала нужно подключить репозитории RPMFusion, как сказано в статье. После этого данные пакеты смогут быть установлены.

  2. Всё установил и работает, но неправильно… У меня ноут M50Vn с графической картой GeForce 9650M GT. Я столько лет потратил на это столько раз переустанавливал Ось после неудачной установки Nvidia. Я нашёл единственный удачный драйвер для ядра 2.6. К несчастью более поздние версии не поддерживает этот драйвер. Но мне кажется в связи с экспериментами с графической картой она просто накрылась. Однако на ядре 2.6 тот драйвер работает по прежнему. Не идеально, но в игры играть можно. Я не знаю какая это версия fedora, но Suse 11.4. Это ось 10-ти летней давности и для неё давно нет поддержки. Но думаю если поставить CentOS 6, то будет. Не работает аспект. Почему-то монитор стал вместо 16:9 3:4. Все картинки искажены ужасно. Смотреть невозможно, но это лучше, чем когда у тебя система вылетала через 3 минуты из-за нестабильности. Хотя там аспект не искажался. Я не уверен, что вообще возможно нормально установить эту карту. Возможно именно моя карта такая неудачная. Но я уже зарёкся когда-либо связываться с Nvidia. Ибо хуже не придумаешь когда навороченая карта не то, что не работает, а вообще автоматом подвешивает систему. Это всё из-за брэнда… Никогда не покупайте навороченный хард для Linux, не будет работать в лучшем случае… И ни в коем случае не мелкософтовский или компании связанyой с ней. А NVidia связана. Никто не знает как она работает, пишут наугад.. Даже тот драйвер общего типа и в бинарной форме. Исходников нет… Лучше какой нибудь ATI. Эти работают железно!!!

    1. У меня ноут M50Vn с графической картой GeForce 9650M GT

      Эта карта поддерживается более старой версией драйвера — nvidia-304xx. В статье сказано о том, как его установить.

      Я столько лет потратил на это столько раз переустанавливал Ось после неудачной установки Nvidia

      Если устанавливать всё, как описано в статье, то при возникновении проблем будет достаточно просто удалить данные пакеты и пересобрать initrd образ.

      Лучше какой нибудь ATI. Эти работают железно!

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

      А вообще, лучшие видеокарты для GNU/Linux — это интегрированные в процессоры Intel. С ними нет проблем.

  3. После установки Nvidia драйверов в fedora 25\26 вместо сплеша с логотипом федоры появляется серый экран с тремя белыми точками, не подскажете можно эту мерзость вообще убрать? А то стирание опции quiet в /etc/default/grub и добавление GRUB_CMDLINE_LINUX_DEFAULT=»» не дает никаких результатов(конфиг груба конечно перегенерировал su -c ‘grub2-mkconfig -o… и т д)

    1. После установки Nvidia драйверов в fedora 25\26 вместо сплеша с логотипом федоры появляется серый экран с тремя белыми точками, не подскажете можно эту мерзость вообще убрать?

      Это известная проблема проприетарных драйверов. Другая проблема — невозможность задания родного для монитора разрешения виртуальных консолей фреймбуфера (всегда будет использоваться 800*600).

    2. Наберите в любом поисковике запрос :»Восстановление Plymouth после установки драйверов видеокарты Nvidia в Fedora». Инструкции полные, подробные и рабочие.

      P.S. Ссылки не вставляю, так как это запрещено правилами данной страницы.

      Было-бы очень здорово внести ответ на данный вопрос на неофициальный форум FQU Fedora относящиеся к этой странице.

      1. Восстановление Plymouth после установки драйверов видеокарты Nvidia в Fedora

        Если всё сделано по инструкции, то ничего восстанавливать не требуется.

        Plymouth корректно работает на всех конфигурациях по умолчанию (UEFI режим + DRM) начиная с Fedora 34 с ветками 390.xx и выше.

  4. Теперь вырежем из образа initrd драйвер nouveau и добавим NVIDIA:
    sudo dracut /boot/initramfs-$(uname -r).img $(uname -r) —force

    Начиная, вроде бы, с 26 версии федоры, этого делать не требуется.

    1. Да, этот шаг есть в скриптлетах устанавливаемых RPM пакетов с модулями ядра, но часто он отрабатывает некорректно и пользователь получает чёрный экран после загрузки, поэтому лучше ещё раз прогнать самостоятельно.

  5. EFI, делал в таком порядке:

    dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs
    dnf install xorg-x11-drv-nvidia-libs.i686
    sudo akmods —force
    sudo dracut /boot/initramfs-$(uname -r).img $(uname -r) —force
    sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

    после перезагрузки — Minimal BASH like…….

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

      fpaste --sysinfo
      lspci | fpaste

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

      1. Похоже я сам на чем-то сглупил но проблема решилась так: выполнил только одну команду
        + установил vulcan, cuda но они думаю не суть и все заработало на свежеустановленном fedore 27.

  6. Полезный материал, спасибо автору.
    Рекомендую сделать небольшое дополнение к статье, что делать при обновлении ядра.
    Я установил драйвера нвидиа, но потом (через месяц) обновил ядро, однако оно не может загрузиться. Я так понимаю, что хоть нвидиа и rpm через rpmfusion, но все равно там сборка происходит с учетом заголовочных файлов текущей версии ядра.
    Всего хорошего!

    1. Нет, такого быть не должно. При каждом обновлении ядра Fedora автоматически загружаются и соответствующие development пакеты, после чего выполняется akmods, который собирает новые kmod модули для нового ядра.

      1. После обновления ядра 4.13 на 4.14 система норм загрузилась, но дрова не подхватились.
        Пришлось снова вводить

        sudo akmods --force
        1. Обычно достаточно просто подождать несколько минут пока прямо во время загрузки будет скомпилирован и установлен необходимый модуль ядра.

  7. Большое спасибо за статью. Удалось все согласно инструкции в Fedora 27.

    Вот только sudo akmods —force завершался ошибкой и просил убедиться правильная ли версия kernel-devel установлена.

    Если у кого так будет, стоит выполнить

    sudo dnf install kernel-devel-версия_ядра_которое_не_находит

    А уже после его установки

    sudo akmods --force
    1. Да, если в системе есть более старые версии ядер (по умолчанию dnf сохраняет 2 предыдущих ядра), то нужно либо установить соответствующие development пакеты для них вручную, либо просто удалить их. Новые версии будут автоматически устанавливаться сразу с development пакетами.

  8. Сделал все, как описано в статье, драйверы встали, но теперь Гном не реагирует на кнопки мыши (нет реакции при щелчке по верхней панели Гнома, списку программ; окна нельзя переместить за заголовок окна или закрыть нажатием на крестик). Причем непосредственно в запускаемых приложениях все работает нормально. Подскажите, что можно сделать?

    1. Вы используете Gnome на Wayland или X11? Видеокарты NVIDIA с проприетарными драйверами пока не очень хорошо работают с Wayland, поэтому рекомендую попробовать в менеджере сессий GDM выбрать пункт Gnome on X11 и проверить воспроизведётся ли проблема.

      1. Как написано в конце статьи в /etc/gdm/custom conf раскомментировал строку WaylandEnable=false, так что Х11.

        1. Этого недостаточно. Данная строка лишь заставляет сам GDM использовать X11. Gnome при этом всё равно будет в Wayland запускаться. Для полного переключения на X11 нужно в списке доступных сессий выбрать пункт Gnome on X11.

          1. Странно, но у меня в списке сессий есть только GNOME и GNOME Classic. Гном запускается в X11, судя по
            $ loginctl show-session 4 -p Type
            Type=x11
            Возможно проблема из-за того, что обновился с RF25 в связи с EOL. Нужно было до 26 обновляться и на ней посидеть пару-тройку месяцев, а то что-то намучился с 27-й уже — на другой машине регулярные зависания намертво, хотя там и чистая установка.
            Ну да ладно, дрова от нвидии для меня не сильно критичны, в любом случае спасибо за ответы! 🙂

          2. Возможно проблема из-за того, что обновился с RF25 в связи с EOL.

            Это не имеет особого значения. Между Fedora 25 и 27 не было крупных изменений, поэтому обновление через один релиз проходит в штатном режиме.

  9. Все поставил как указано в инструкции. Ничего вроде не отвалилось. Но любые команды с optirun ноут почему-то упрямо игнорирует. Ноутбук asus x75v. Fedora 24

    1. Fedora 24

      У вас слишком старая версия дистрибутива. Обновитесь до Fedora 27.

  10. Помогите, пожалуйста. Всё делаю, как написано в статье, однако nouveau как был, так и остаётся на месте!

    Fedora 27, VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 730] (rev a1).

    делаю:

    dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs xorg-x11-drv-nvidia-libs.i686
    akmods --force
    dracut /boot/initramfs-$(uname -r).img $(uname -r) --force

    Никаких ошибок не было. Посоветуйте, что можно сделать?

    1. Попробуйте задать дополнительные параметры ядра:

      rd.drivers.blacklist=nouveau nouveau.modeset=0

      Это полностью отключит запуск nouveau.

      1. Простите, что пропал так на долго. Сегодня вновь всё переустановил по вашей статье.

        Указанная вами строка blаcklist=nоuveаu уже была в grub.сonf, добавил 2ю часть, и во время загрузки появились 3 маленьких квадрата (видимо, индикация), но к моему великому сожалению над ними на короткое время появляется сообщение ‘NVIDIA kernel module missing. Falling back to nouveau’. Соответственно nouveau загружается вновь.
        Что можно попробовать ещё?

        1. NVIDIA kernel module missing. Falling back to nouveau

          Данное сообщение означает, что не удалось собрать модуль ядра NVIDIA. Повторно прогоните akmods и пересоберите модуль ядра. Если во время сборки произошла ошибка, в каталоге /var/cache/akmods/nvidia вы найдёте журнал, где будет больше полезной информации.

          1. Vitaly, всё получилось. Прогонял ещё раз akmоds и dracut, смотрел лог в /var/cache/аkmods/nvidiа, смотрел что пишет lsinitrd. Всё вроде бы замечательно, перезагружаюсь — и всё ОК!

            Огромное вам спасибо за помощь, без вас бы не справился!

          2. Тоже такое сообщение выводилось. При чем утилита Nvidia X server settings не запускалась. Ошибок при установке не появлялось. Искал в чем проблема может быть. Оказалось что был включен secure boot в BIOS. Отключил и все завелось)). Fedora 33, NV T1000, lenovo thinkpad p53

  11. Репозиторий со шмелем у меня (у меня Optimus, Fedora 27) не подключается.

    1. Мы проверили — всё работает. Убедитесь, что вы верно скопировали команду подключения репозитория.

  12. Спасибо, репозиторий подключился. Теперь при выполнении шага 2 (установка проприетарных драйверов) получаю ошибку об отсутствии совпадения для аргумента bamblebee-nvidia.
    Извините, если задаю глупые вопросы. Я самый начинающий. Заранее спасибо.

    1. У вас опечатка. Нужно писать bumblebee-nvidia. Просто копируйте строки целиком и вставляйте в консоль.

      Двойной клик по строке с кодом на сайте автоматически выделит её и чтобы скопировать в буфер обмена достаточно нажать комбинацию Ctrl+C. Для вставки в эмулятор терминала из буфера — Ctrl+Shift+V.

  13. Спасибо, теперь все получилось. До этого (когда не получалось) я тоже копипастил, но получилось, почему-то, только сейчас. ))
    Единственная разница, которая, по идее не должна была бы ни на что влиять, это то, что ранее, когда не получалось, я заходил под SU и копипастил без sudo. Сейчас и под SU зашел, и вводил команды через sudo.
    Спасибо еще раз большое.

    1. На будущее — используйте что-то одно: либо su, либо sudo, ибо они делают одно и то же — запускают команды с правами суперпользователя.

      Лично я рекомендую всегда использовать только sudo от текущего пользователя (пользователь при этом должен состоять в группе wheel), т.к. он более безопасен, а все действия логируются в журнале аудита системы.

  14. У меня проблема. Следую гайду, у меня nvidia 820m, fedora 27. После всех настроек остается только интеловский чип. Когда пишу lspci то vga-intel, 3d — nvidia. Раза 3 прошел по гайду и ничего не меняется. Что с этим можно сделать?

    1. Т.к. у вас ноутбук, вы должны устанавливать Bumblebee драйверы (для NVIDIA Optimus) согласно инструкции.

  15. По инструкции поставил на ноутбук Nvidia Optimus. При запуске команды optirun -b none nvidia-settings -c :8 выдает:

    [  501.197382] [ERROR]The Bumblebee daemon has not been started yet or the socket path \var\run\bumblebee socket was incorrect.
    [  501.197434] [ERROR]Could not connect to bumblebee daemon - is it running?

    Команда lcpci | grep VGA выдает:

    00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)

    Т.е. только интегрированную карточку, а куда делась дискретная Nvidia не ясно.

    1. Поправка. lspci | fpaste выводит:

      00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
      00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
      00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
      00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
      00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
      00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
      00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
      00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
      00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
      00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
      00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
      00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
      00:1f.0 ISA bridge: Intel Corporation HM86 Express LPC Controller (rev 05)
      00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
      00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
      01:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 940M] (rev a2)
      03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter
      04:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTL8411B PCI Express Card Reader (rev 01)
      04:00.1 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 12)

      В списке есть контроллер Nvidia.

    2. 1. Ваш пользовательский аккаунт должен находиться в группе bumblebee. Если это не так, добавьте себя в неё:

      su -c "usermod -a -G bumblebee $(whoami)"

      Перезагрузите систему.

      2. Убедитесь, что технология NVIDIA Optimus включена в UEFI/BIOS вашего ноутбука если это не так, активируйте её.

      3. Если вышеизложенное не помогло, изучите это.

      1. Подскажите, после установки драйвера, при переключении в консоль, нет приглашения, а просто чёрный экран(

        1. Такое бывает если nouveau отключён, а модуль ядра проприетарного драйвера NVIDIA не установился по какой-либо причине, либо на компьютере/ноутбуке активирован режиме UEFI Secure Boot.

          Решение — загрузка в recovery режиме и пересборка пакета с модулями, а также полное отключение Secure Boot.

  16. Обновили инструкцию по установке Bumblebee драйвера для Fedora 28 и выше.

    Пользователи старых версий Fedora (F27 и ниже) перед обновлением до Fedora 28 должны сначала удалить установленный драйвер, затем установить его уже из другого источника по данной инструкции.

  17. А как нынче NVIDIA карту выключают? Что-то не вижу в этих репах bbswitch переключателя.

    1. Отключить дискретное видеорешение полностью можно только в настройках UEFI/BIOS. В остальных случаях она всё равно будет функционировать и потреблять ресурсы ноутбука.

      Сейчас в качестве основной используется интегрированная видеокарта, а для запуска приложения на дискретной применяются утилиты primusrun или optirun.

      1. Далеко не факт :после установки драйверов видеокарты NVIDIA GeForce 1660 в Fedora 32, установленных с официального сайта NVIDIA и нормальной работы, перегрузил PC и переключился в Bios на интегрированных видео карту AMD Radion Vega 8, c которой я до установки драйверов нормально работал и Fedora просто не загружается. 🤔

        P.S. Ситуация для меня не критичная, так как насколько я понимаю на сегодня у видеокарт AMD есть определённые трудности с поддержкой OpenCL в Fedora (не работает Blender и другие приложения использующие OpenCL.) 😒

        1. NVIDIA GeForce 1660 в Fedora 32

          Fedora 32 уже несколько лет не поддерживается. Минимально поддерживаемая версия — Fedora 34, но мы настоятельно рекомендуем использовать Fedora 35 ибо уже скоро выходит 36, а поддержка 34 будет прекращена.

          установленных с официального сайта NVIDIA

          После установки драйверов при помощи официального RUN файла рекомендуется переустановить систему с нуля, т.к. ряд важных файлов конфигурации и библиотек были перезаписаны патченными версиями. Штатное удаление не исправит этого.

          В следующий раз сразу устанавливайте из репозиториев RPM Fusion.

  18. После обновления драйвера до версии 396.45 у меня появился черный экран, т.к. моя видеокарта теперь не поддерживается. Что делать?

    1. Да, это известная проблема. NVIDIA прекратили поддержку многих видеокарт в этой версии, поэтому нужно либо откатиться к 390.xx, либо к ещё более старому 340.xx. Откат до версии 390.59 можно выполнить примерно так:

      Шаг 1. Удалим уже установленные kmod пакеты:

      sudo dnf remove kmod-nvidia\*

      Шаг 2. Выполним установку предыдущей версии по прямым ссылкам из RPMFusion Koji:

      sudo dnf downgrade --allowerasing http://koji.rpmfusion.org/kojifiles/packages/nvidia-kmod/390.59/1.fc28/x86_64/akmod-nvidia-390.59-1.fc28.x86_64.rpm http://koji.rpmfusion.org/kojifiles/packages/xorg-x11-drv-nvidia/390.59/1.fc28/x86_64/xorg-x11-drv-nvidia-390.59-1.fc28.x86_64.rpm http://koji.rpmfusion.org/kojifiles/packages/xorg-x11-drv-nvidia/390.59/1.fc28/x86_64/xorg-x11-drv-nvidia-kmodsrc-390.59-1.fc28.x86_64.rpm http://koji.rpmfusion.org/kojifiles/packages/xorg-x11-drv-nvidia/390.59/1.fc28/x86_64/xorg-x11-drv-nvidia-libs-390.59-1.fc28.x86_64.rpm http://koji.rpmfusion.org/kojifiles/packages/nvidia-settings/390.59/1.fc28/x86_64/nvidia-settings-390.59-1.fc28.x86_64.rpm

      Если необходима поддержка 32-битных игр, тогда к концу предыдущей команды следует добавить ещё это:

      http://koji.rpmfusion.org/kojifiles/packages/xorg-x11-drv-nvidia/390.59/1.fc28/i686/xorg-x11-drv-nvidia-libs-390.59-1.fc28.i686.rpm

      Шаг 3. Ждём 3-5 минут, затем выполняем:

      sudo akmods --force

      Шаг 4. Пересобираем initrd:

      sudo dracut -f

      Шаг 5. Перезагружаем систему и проверяем работу драйвера:

      sudo systemctl reboot

      Шаг 6. Если всё заработало снова, открываем файл /etc/dnf/dnf.conf в текстовом редакторе и добавляем в самый конец следующую строку:

      exclude=akmod-nvidia xorg-x11-drv-nvidia* nvidia-settings

      Это действие запретит драйверам обновляться снова до 396.xx версии пока не выйдет полноценный релиз 390 в виде отдельной ветки.

    1. В Fedora с KDE Plasma 5 никаких дополнительных действий производить не требуется. Всё будет работать «из коробки».

  19. Fedora28 Gnome сделал все по вашей инструкции. Но строка «WaylandEnable=false» уже была. После перезагрузки повисает серый экран GDM… Как это можно поправить?

    1. У вас ноутбук или десктоп? Такое бывает если установить на ноутбук обычный драйвер.

      1. Desktop. Но на материнской плате присутствует интегрированное видео.

        1. Видеокарта какой серии у вас используется? NVIDIA в драйверах версии 396.xx и выше убрали поддержку всех карт ниже 600-й серии.

          1. 01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 630] (rev a1)
            не работает с 396.хх

          2. В таком случае попробуйте установить версию 304 из репозитория.

  20. Ой, а у вас для карт AMD (свободные/несвободные драйвера) есть аналогичная инструкция? А то в большом FAQ нет информации.

    1. Современные карты AMD работают «из коробки», т.к. необходимый для их работы драйвер amdgpu находится в составе ядра.

      1. А «не современные карты»? К примеру HD5570 или старее?
        В бубунтах и минтах вроде как есть возможность выбрать проприетарный драйвер.
        Считаю что подобная инструкция нужна и для видеокарт AMD 😉

        1. AMD выпускает проприетарный драйвер amdgpu-pro только для Ubuntu. На других дистрибутивах он не работает, т.к. привязан к особенностям данного дистрибутива.

        2. Она (инструкция) есть уже для Fedora подробная и рабочая.

          Насколько мне известно официальные драйвера для видеокарт AMD поддерживаются только для 3 дистрибутивов: Ubuntu, Read Hat EL, SLAWS.

          С драйверами AMD установленными в Fedora есть определённые проблемы в плане поддержки OpenCL без которых не работают некоторые приложения.

          P.S. Поддерживаю Ваш вопрос по добавлению инструкций по установке драйверов видеокарт AMD на неофициальный FQU по Fedora обеими руками. 👍🤚

          1. Насколько мне известно официальные драйвера для видеокарт AMD поддерживаются только для 3 дистрибутивов: Ubuntu, Read Hat EL, SLAWS.

            Да, проприетарные драйверы amdgpu-pro поддерживают только Ubuntu и корпоративные коммерческие дистрибутивы RHEL и SLES. Во всех остальных, включая Fedora, они работать не будут из-за более новых версий X11, ядра и т.д.

            С драйверами AMD установленными в Fedora есть определённые проблемы в плане поддержки OpenCL без которых не работают некоторые приложения.

            В этом виновата не Fedora, а сами AMD ибо в открытые драйверы amdgpu включено всё, за исключением OpenCL.

            Поддерживаю Ваш вопрос по добавлению инструкций по установке драйверов видеокарт AMD на неофициальный FQU по Fedora обеими руками.

            Как я уже говорил выше, драйвер amdgpu-pro работать в актуальных версиях Fedora не будет, поэтому существует альтернативная реализация OpenCL для AMD — ROCm. В нашем FAQ уже есть соответствующая инструкция.

  21. Спасибо. Шикарная статья и сайт у вас аккуратный.
    Ещё никогда так приятно не устанавливал драйвера для своей Nvidia в Fedora 29.
    Надеюсь буду поддерживать в актуальном состоянии и для последующих версий Fedora. +

  22. Хорошая статья (инструкция) работает. Спасибо!

  23. Моя GT 440 интересуется, заведётся ли эта инструкция на Fedora 30?

  24. Спасибо за статью

    GTX 750 Ti, Fedora 29 с KDE на X11 без Wayland, все пакеты самые последние, все сделал по инструкции, никаких ошибок не возникло, в логах akmod никакого криминала нету, в конфиге grub добавилась строка о запрете загрузки модуля nouveau, сервайс nvidia-fallback я убрал из автозагрузки, но блин, все равно грузит nouveau. Инструкция за пару лет не могла устареть?

    1. Нет, инструкция поддерживается в актуальном состоянии. Для GTX 750 нужно устанавливать версию 390.

      1. 390 версия драйвера сломана с ядрами Linux 5.1 и выше, но NVIDIA на прошлой неделе выпустила исправление. Нужно устанавливать из тестовых репозиториев RPM Fusion.

        Исправленная версия xorg-x11-drv-nvidia-390xx-390.129-1.fc30.

        1. У меня стояла версия 430 драйверов, поэтому откатился на 390xx, но не из updates-testing nonfree, т.к. для fc29 там пусто, а обычных updates. В итоге ничего не поменялось.

          1. Рекомендуем как можно скорее перейти на Fedora 30 ибо 29 большинством мейнтейнеров уже не поддерживается, а пакеты в её репозиториях либо совсем не обновляются, либо с огромной задержкой.

            Ветка 390xx в RPM Fusion работает в штатном режиме. Упомянутый выше фикс уже попал в основной репозиторий.

  25. При выполнении команды с добавлением поддержки 32 битных приложений для более старых карт (GT440) dnf install xorg-x11-drv-nvidia-340xx-libs.i686 получил ошибку на Fedora 30:

    Ошибка:
    Проблема: problem with installed package xorg-x11-drv-nvidia-390xx-3:390.129-1.fc30.x86_64
    — package xorg-x11-drv-nvidia-390xx-3:390.129-1. fc30.x86_64 conflicts with xorg-x11-drv-nvidia-340xx provided by xorg-x11-drv-nvidia-340xx-1:340.107-4.fc30.x86_64
    — package xorg-x11-drv-nvidia-390xx-3:390.116-2. fc30. x86_64 conflicts with xorg-x11-drv-nvidia-340xx provided by xorg-x11-drv-nvidia-340xx-1:340.107-4.fc30.x86_64
    — package xorg-x11-drv-nvidia-340xx-libs-1:340.107-4. fc30. i686 requires xorg-x11-drv-nvidia-340xx = 1:340.107-4.fc30, but none of the providers can be installed
    — conflicting requests
    (try to add ‘—allowerasing’ to command line to replace conflicting packages or ‘—skip-broken’ to skip uninstallable packages)

    (между fc30 добавил пробелы, а то движок думает что это ссылка и не даёт опубликовать комментарий)

    Собственно в чём тут проблема? как быть?

    1. При использовании драйвера серии 340, соответствующий пакет также должен быть из этой серии:

      sudo dnf install xorg-x11-drv-nvidia-340xx-libs.i686

      Предварительно удалите установленный драйвер и все его компоненты 390 серии. Они несовместимы между собой.

  26. Ещё бы статью как избавится от тиринга на 390м драйвере в федора. Картинка рваная.
    В нете нагуглил пару решений но картинка всё равно сильно дерганная хоть и не рвёт её.
    Fedora 30 Gnome

    1. Включите принудительный VSync в файле конфигурации, а также настройках драйвера.

  27. Огромное спасибо за статью, после выполнения предложенного алгоритма установки драйвера для GeForce GT 630 в FR28 заработал второй монитор)

    1. Fedora 28 уже полгода не поддерживается. RFRemix также более не поддерживается, поэтому сначала необходимо преобразовать его в Fedora, а затем как можно скорее обновиться до Fedora 30.

  28. Спасибо за статью! Fedora 31 + GeForce GT1030 — Все заработало. Немного побился с отключением SB в BIOS.

    Первая загрузка прошла с черным экраном. Перезагрузился — завелось.

    Возможно кому-то будет полезно — вот строчка в переменную kernelopts из /boot/efi/EFI/fedora/grubenv:

    rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1

    (Точки «раздеть» от скобок — иначе здесь форма воспринимает как ссылки)

    1. RPM пакет при своей установке должен прописать параметры ядра автоматически. Для этого он использует утилиту grubby.

  29. после удаления нвидиа драйвера можно как-то убрать мерзкие 3 точки при запуске системы?

    1. У меня экран не черный, а серый. Security Boot отсутствует я так понял по умолчанию. Есть название загркзузки fedora, но уже дальше появляется просто серый экран, будто бы с разрешением экрана что-то не то

      1. Заранее предупрежу, что я чайник. И лучше сразу описать куда и что нажимать

        1. Достаточно просто следовать инструкции, ни отклоняясь от неё ни на шаг и тогда всё пройдёт в штатном режиме.

      2. Серый экран — это признак того, что GDM не смог запуститься. Какая у вас видеокарта и какую версию драйвера вы устанавливали?

        Secure Boot не должен отсутствовать если материнская плата вашего ПК выпущена после 2013 года ибо это часть стандарта UEFI и без его реализации она не пройдёт сертификацию на соответствие. Он может быть скрыт глубоко в настройках UEFI BIOS.

  30. Есть варианты установки проприетарного драйвера на fedora 32 и гибридная графика Intel + GF410? Возможности выключения какой-то из видеокарт в bios нет.

    1. GF410 — это очень старая карта. Актуальные драйверы NVIDIA с поддержкой Optimus поддерживают только 700 (плюс частично 600) серии и выше.

      1. В этом и есть вопрос, 390 драйвер не поддерживается т.к. гибрид, новый не поддерживается потому что старое видео. В итоге только опенсорс или есть какие-то схемы?

        1. Можно продолжать использовать Bumblebee в unmanaged исполнении. Пример настройки можно найти здесь (раздел 10.9), но скачивать архив для 390 драйвера.

  31. Есть вариант установки проприетарного драйвера на fedora 33 GT240 драйвер 340?

    1. К сожалению 340.xx ветка более не поддерживается самой NVIDIA.

  32. Использовал инструкцию для установки драйвера nvidia 340.108 из репо Fusion на Fedora 34 для GeForce 8600 GTS. Все ок, если судить по nvidia-settings, спасибо.

    Но изначально XOrg не хотел загружаться, получилось решить следующими дополнительными действиями:
    1. nvidia-xconfig --allow-glx-with-composite --composite (возможно, достаточно просто nvidia-xconfig);
    После чего nvidia при старте XOrg начала ругаться на glx, решил так:
    2. Заменил файл /usr/lib/xorg/modules/extensions/libglx.so на аналогичные файлы nvidia из папки /usr/lib/nvidia*/xorg. Нашел про эту проблему на форуме nvidia.

    Мерзкие точки при загрузке заменились на небольшую картинку Fedora, когда прописал в grub.cfg: set gfxpayload=keep.

    1. Ветка 340.xx более не поддерживается NVIDIA, поэтому нет никакой гарантии стабильности работы с современными версиями ядра Linux и системой X11.

      В RPM Fusion патчи совместимости с современными ядрами добавляют энтузиасты.

  33. Последний драйвер поддерживает также 600, а не только 700, но драйвер 390 только 400.

    1. Поддерживаются далеко не все модели 600, а лишь те, которые под старым индексом использовали новую архитектуру 700 серии.

      Кстати, драйвер 470.xx — это последняя версия с поддержкой серий 700 (и части 600), 800 и 900. Это LTS-ветка, а значит будет поддерживаться ещё несколько лет.

      471+ будут работать лишь с 1000, 2000 и 3000.

  34. Золотой ты человек, дай тебе Бог здоровья! Спасибо за мегастатью!

  35. Драйвер обновился до версии 495.44 и я получаю черный экран после загрузки. Карта NVIDIA GTX 780. Что делать?

    1. Из проприетарных драйверов NVIDIA версии 495.xx была удалена поддержка видеокарт серий 600 и 700, поэтому для них требуется установка ветки 470xx.

      Обновили статью, добавив информацию об этом.

  36. Не могу установить xorg-x11-drv-nvidia-470xx из-за ошибки:

    No match for argument: akmod-nvidia-470xx
    No match for argument: xorg-x11-drv-nvidia-470xx

    1. В данный момент драйверы ветки 470xx находятся в тестовом репозитории RPM Fusion. В течение текущей недели они будут перемещены в основной.

      Для установки из testing, в конец команды установки пакетов через пробел добавьте следующий параметр:

      --enablerepo=rpmfusion-nonfree-updates-testing

      1. Спасибо. Установилось нормально и работает.

  37. Ставлю 470xx. Карта quadro k2100m. Черный экран на дисплее ноутбука. Через hdmi на второй монитор изображение работает. Как вывести и на монитор ноута изображение?

    1. При использовании среды GNOME убедитесь, что Wayland запрещён в GDM, как указано в заметке, а также выбрана сессия GNOME on X11.

Обсуждение закрыто.