Как переключить драйвер nvidia с «nouveau» на проприетарный nvidia

Мне удалось исправить это с помощью следующей команды:

export LC_ALL=C

Я нашел это в аналогичном случае: https://stackoverflow.com/questions/14547631/ python-locale-error-unsupported-locale-setting

2
21.03.2017, 15:55
2 ответа

Попробовав разные вещи, это то, что сработало для меня. Я был бы признателен за любое предложение или объяснение, если что-то кажется бесполезным.

  1. загрузите проприетарный драйвер, который вы хотите использовать, с веб-сайта nvidia, в моем случае:

NVIDIA-Linux-x86_64-375.39.run

  1. перейдите в неграфический режим ( f1)
  2. Убейте ваш графический процесс (sudo service mdm stop). Если экран становится черным, вы можете использовать удаленное подключение (ssh) с другого компьютера для следующих шагов или повторить шаг 1 еще раз.
  3. отредактируйте файл grub /etc/default/grub и измените GRUB_CMD_LINE_DEFAULT на этот

GRUB_CMDLINE_LINUX_DEFAULT="nouveau.blacklist=1 тихий всплеск"

  1. очистка каждый драйвер, который у вас может быть, nouveau или nvidia (sudo apt-get purge xserver-xorg-video-nouveau libdrm-nouveau1a nvidia*)
  2. обновление ваш initramfs sudo update-initramfs -u -k all . Этот шаг действительно важен, но я его неправильно понимаю, поэтому ваши комментарии приветствуются
  3. перезагрузка
  4. вернуться в неграфический режим (ctrl-alt-f1)
  5. завершите ваш графический процесс (sudo service mdm stop). Если экран становится черным, вы можете использовать удаленное соединение (ssh) для следующих шагов или повторить шаг 1 еще раз.
  6. запустите загруженные проприетарные файлы драйверов в корневом режиме (sudo ./NVIDIA-Linux-x86_64-375.39.run) и нажмите «да» или «принять» все, что ему нужно.
  7. перезагрузитесь и наслаждайтесь

lspci -vnnn теперь должно быть таким

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF104 [GeForce GTX 460] [10de:0e22] (rev a1) (prog-if 00 [VGA controller])
    Subsystem: Gigabyte Technology Co., Ltd GF104 [GeForce GTX 460] [1458:34fc]
    Flags: bus master, fast devsel, latency 0, IRQ 126
    Memory at dc000000 (32-bit, non-prefetchable) [size=32M]
    Memory at d0000000 (64-bit, prefetchable) [size=128M]
    Memory at d8000000 (64-bit, prefetchable) [size=64M]
    I/O ports at e000 [size=128]
    [virtual] Expansion ROM at de000000 [disabled] [size=512K]
    Capabilities: [60] Power Management version 3
    Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [78] Express Endpoint, MSI 00
    Capabilities: [b4] Vendor Specific Information: Len=14 <?>
    Capabilities: [100] Virtual Channel
    Capabilities: [128] Power Budgeting <?>
    Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
    Kernel driver in use: nvidia
    Kernel modules: nvidiafb, nouveau, nvidia_375_drm, nvidia_drm, nvidia_375, nvidia

Вы можете видеть, что используемый драйвер ядра теперь ссылается на nvidia вместо nouveau

2
27.01.2020, 22:41

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

Печальное сообщение для вас заключается в том, что это проблема драйвера NVIDIA, с которой я сталкиваюсь и на многих ОС Linux. Вы не можете многое сделать с этим прямо сейчас, кроме перехода на ранее работающий метод.

-1
27.01.2020, 22:41

Теги

Похожие вопросы