Как установить NVidia Driver в Ubuntu 13.10

У сожалению со времен Ubuntu 8.04\10.04 не многое изменилось и процедура устновки видео драйвера для графических карт NVidia по прежнему остается процедурой сложной и запутанной для новичка в Linux. У меня эта прцедура вызывает двоякие ущущения, почему нельзя сделать все красиво и просто, нажал одну кнопку, перезагрузил компьютер и все готово, даже если драйвера проприетарные. Дело с драйверами для лэптов где на борту две графические карты, нарпимер встроенная Intel и дискретная NVidia обстоит еще хуже, в таком случае необходимо ставить куча всяких непонятных пакетов и подключать пачками репозитории PPA. Именно такой случай мы рассмотрим, на примере установки видео драйвера для GeForce NVidia 640M в ноутбуке Dell XPS 15

Подготовка к установке NVidia Driver

Итак, предположим вы установили свежую версию Ubuntu 13.10 64bit на ваш ноутбук Dell XPS 15 i7. Первым делом вы хотите установить видео драйвер для вашей дискретной видео карты и протестировать его работу, в том числе с помощью Steam для Linux. Давайте начнем с того, что определимся с тем какие графические карты есть в системе.

lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107M [GeForce GT 640M] (rev ff)
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107M [GeForce GT 640M] (rev ff)

Подвох в том, что драйвер для встроенной карточки Intel скорее всего уже установлен в системе. Это легко проверить:

lspci -k
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
Subsystem: Dell Device 054f
Kernel driver in use: i915
lspci -k
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
Subsystem: Dell Device 054f
Kernel driver in use: i915

Т.е. вы сможете полноценно работать, но лэптоп будет начинать шуметь и перегреваться. Избавиться от этого поможет установка прориетарного драйвера а так же утилиты bbswitch которая не требует ручной конфигурации и является частью проекта Bumblebee 3.2.1

Bumblebee обеспечивает поддержку NVIDIA Optimus карт в новых ноутбуках. Bumblebee официально поддерживается на Ubuntu 13.10 Saucy

Установка Bumblebee в Ubuntu

Добавим официальный PPA репозиторий в систему:

sudo add-apt-repository ppa:bumblebee/stable 
sudo apt-get update 
sudo add-apt-repository ppa:bumblebee/stable 
sudo apt-get update 

Для Ubuntu 13.10:

sudo apt-get install bumblebee bumblebee-nvidia linux-headers-generic virtualgl
sudo apt-get install bumblebee bumblebee-nvidia linux-headers-generic virtualgl

Для Ubuntu 12.04 – 13.04:

sudo apt-get install bumblebee bumblebee-nvidia virtualgl linux-headers-generic 
sudo apt-get install bumblebee bumblebee-nvidia virtualgl linux-headers-generic 

Установка NVidia Driver в Ubuntu

Добавим PPA репозиторий в систему:

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update && sudo apt-get upgrade 
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update && sudo apt-get upgrade 

Установим NVidia Driver в Ubuntu:

sudo apt-get install nvidia-current nvidia-settings 
sudo reboot
sudo apt-get install nvidia-current nvidia-settings 
sudo reboot

Установка Primus для Bumblebee в Ubuntu

Primus написон специально для проекта Bumblebee и позволяет существенно улудшить производимость, а так-же избежать перегрева и как результат потери той самой производительности.

Установка Primus:

sudo apt-get install primus
sudo apt-get install primus

Возможно для 64битных систем придется доставить:

sudo apt-get install primus-libs-ia32:i386
sudo apt-get install primus-libs-ia32:i386

Тестируем встроенную графическую карту Intel® Ivybridge Mobile:
first_screen_shot

Обратите внимание на FPS:
60.727319 frames/sec – 67.771688 Mpixels/sec
59.552480 frames/sec – 66.460568 Mpixels/sec
59.741204 frames/sec – 66.671184 Mpixels/sec
59.650528 frames/sec – 66.569989 Mpixels/sec
59.656948 frames/sec – 66.577154 Mpixels/sec
59.669523 frames/sec – 66.591187 Mpixels/sec
59.667026 frames/sec – 66.588400 Mpixels/sec
59.657754 frames/sec – 66.578053 Mpixels/sec

Тестируем дискретную карту GeForce GT 640M с Bumblebee через optirun:
screen_222

Обратите внимание на FPS:
170.717201 frames/sec – 190.520397 Mpixels/sec
147.285181 frames/sec – 164.370262 Mpixels/sec
154.869751 frames/sec – 172.834642 Mpixels/sec
152.230295 frames/sec – 169.889010 Mpixels/sec
154.038432 frames/sec – 171.906891 Mpixels/sec
162.000727 frames/sec – 180.792811 Mpixels/sec
157.663439 frames/sec – 175.952398 Mpixels/sec

Уже лучше!

Тестируем дискретную карту GeForce GT 640M с Bumblebee через primusrun с использованием primus:
screeen#333

Обратите внимание на FPS:
198.429225 frames/sec – 221.447016 Mpixels/sec
194.937261 frames/sec – 217.549983 Mpixels/sec
186.392457 frames/sec – 208.013982 Mpixels/sec
201.759412 frames/sec – 225.163504 Mpixels/sec
199.207741 frames/sec – 222.315838 Mpixels/sec
203.903282 frames/sec – 227.556062 Mpixels/sec
201.983843 frames/sec – 225.413969 Mpixels/sec
198.496766 frames/sec – 221.522391 Mpixels/sec

Выполните перезагрузку.

Установка Steam в Ubuntu 13.10

Можно сделать так:

wget http://media.steampowered.com/client/installer/steam.deb
sudo apt-get install gdebi-core
sudo gdebi steam.deb
wget http://media.steampowered.com/client/installer/steam.deb
sudo apt-get install gdebi-core
sudo gdebi steam.deb

Обратите внимание, что если вы используете 64Битную версию Ubuntu то при первом запуске Steam вы увидите ошибку:
steam-error

Испровляется она так:

sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib

Перезапустите Steam. Что-бы запускать Steam и игры в нем через дискретную GeForce GT 640M можно сделать так:

primusrun steam
primusrun steam

Запуск отдельно взятых игр через primusrun:

sudo sh -c 'echo OPTIMUS_PREFIX=\"primusrun\" >> /etc/environment'
sudo sh -c 'echo OPTIMUS_PREFIX=\"primusrun\" >> /etc/environment'

После добавления новой переменной всегда нужно сделать лог-аут. Откройте Steam и правый клик на игре, свойства – опции запуска:
steammmmmmmm

Dota 2 в Ubuntu 13.10:
dota