У меня была очень похожая проблема, и я провел несколько дней, пытаясь заставить мою карту работать.
У меня есть ASUS X550LN с графическим драйвером Intel на процессоре и выделенным NVIDIA GEFORCE GT 840M.
Во-первых, установка драйверов nvidia-340 приведет к сбою Unity и Gnome при запуске. Я мог бы зайти в оболочку Ctrl + Alt + F1
и удалить драйвер, sudo apt-get remove nvidia*
чтобы восстановить работу только на графическом драйвере Intel.
После некоторых исследований я обнаружил, что использование обоих этих интерфейсов сделало систему NVIDIA Optimus (что на самом деле хорошо, но пока не очень хорошо поддерживается в Linux). К счастью, есть проект под названием Bumblebee, который поможет. Более подробная информация здесь: https://wiki.ubuntu.com/Bumblebee
Вот что наконец сработало для меня:
Установить шмель
- Добавить хранилище шмелей:
add-apt-repository ppa:bumblebee/stable
- Обновить информацию о хранилище:
apt-get update
- Установить пакеты:
apt-get install bumblebee bumblebee-nvidia virtualgl linux-headers-generic
- перезагружать
Для меня в этот момент был установлен шмель, но nvidia-304
пакет был установлен, так как это то, что установлено с nvidia-current
. Посмотрев онлайн я обнаружил, что мне нужен Driver 337+. На момент написания этой статьи лучшим водителем для меня был nvidia-340
. Это, однако, не в репо по умолчанию, поэтому вам нужно будет добавить еще один.
Установите правильный драйвер nvidia
- Добавьте репозиторий xorg-edgers:
add-apt-repository ppa:xorg-edgers/ppa
- Обновить информацию о хранилище:
apt-get update
- Установите драйверы nvidia-xxx (для 840m это был nvidia-340):
apt-get install nvidia-xxx
Для меня я получил сообщение об ошибке при первом запуске apt-get install nvidia-xxx
. Тем не менее, просто запустить его снова работал нормально. Я не уверен на 100%, что случилось.
Настройте шмеля для использования последней версии драйвера
- Используя ваш любимый текстовый редактор, откройте
/etc/bumblebee/bumblebee.conf
- Найдите строку, начинающуюся с,
Driver
и измените ее наDriver=nvidia
- Найдите строку, начинающуюся с,
KernelDriver
и измените ее наKernelDriver=nvidia-xxx
- Найдите строку, начинающуюся с,
LibraryPath
и измените ее наLibraryPath=/usr/lib/nvidia-xxx:/usr/lib32/nvidia-xxx
- Найдите строку, начинающуюся с,
XorgModulePath
и измените ее наXorgModulePath=/usr/lib/nvidia-xxx/xorg,/usr/lib/xorg/modules
В основном, замените все биты nvidia драйвером nvidia, который вы установили на шаге 2.
- перезагружать
Мы надеемся, что после перезагрузки вы сможете получить доступ к Unity, Gnome или любому другому дисплею, который вы используете.
- Проверьте, что все работает
- Первый тест без использования карты NVIDIA:
glxspheres
- Второй тест с картой NVIDIA:
optirun glxspheres
Я надеюсь, что это работает для следующего человека!