[Post postato inizialmente da Marco P ma poi scomparso perché si è ritirato dalla vita bloggeristica. Il post è stato ripescato dalla cache e ripostato con data originale]

Linux e nVidia hanno sempre avuto un rapporto travagliato, pieno di alti e bassi. Il buon Linus ha avuto spesso delle accese sfuriate dovute alla mancanza di un vero e proprio supporto da parte della casa madre per i driver delle schede video: famoso il suo middle finger all’ACE di Otanemi dello scorso anno, un episodio che racchiude in sè tutta la frustrazione di migliaia di pinguini.

Install NVIDIA Drivers in Linux


Questa guida è rivolta ai tutti i possessori di schede grafiche: per le nVidia Optimus e averne il massimo controllo i metodi sono diversi e verranno elecanti a parte.

Per poter identificare la propria scheda video digitate

lspci | grep -i VGA


Se avete due outuput state utilizzando una scheda Optimus e quindi seguite la sezione dedicata.

Fedora 19

1. RPMFusion
Innanzitutto aggiornate il kernel:

sudo yum update kernel* selinux-policy* reboot

Aggiungete i repository RPMFusion

sudo yum localinstall –nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm


Per le schede GeForce della serie GeForce 6/7/8/9/200/300/400/500/600/700:

sudo akmod-nvidia for GeForce 8/9/200/300/400/500/600/700 series cards
yum install akmod-nvidia xorg-x11-drv-nvidia-libs

Per le schede GeForce 6/7

sudo yum install akmod-nvidia-304xx xorg-x11-drv-nvidia-304xx-libs

Se avete un kernel PAE aggiungete

sudo yum install kernel-PAE-devel

Riavviate.

Se volete l’accelerazione grafica anche per i video:

sudo yum install vdpauinfo libva-vdpau-driver libva-utils


Se qualcosa andasse storto potrete ripristinare i driver Nouveau semplicemente rimuovendo quelli proprietari con:

sudo yum remove xorg-x11-drv-nvidia\* nvidia-settings nvidia-xconfig



Per schede Optimus installate BumbleBee

N.B: non è ancora possibile spegnere la scheda Intel quando usate quella nVidia, per cui il consumo della batteria sarà notevolmente aumentato. 
Prima di tutto controllate di avere le dipendenze soddisfatte

sudo yum install glibc-devel

Aggiungete il repository

sudo yum -y –nogpgcheck install http://install.linux.ncsu.edu/pub/yum/itecs/public/bumblebee-nonfree/fedora19/noarch/bumblebee-nonfree-release-1.0-1.noarch.rpm

Installate il pacchetto

sudo yum install bumblebee-nvidia

Riavviate.

Per verificare che effettivamente i driver funzionino date un

optirun glxgears -info


Per avere un ulteriore incremento prestazionale potete provare ad installare primus

sudo yum install primus


Se volete beneficiarne anche su aplicazioni a 32bit installate il relativo pacchetto

sudo yum install primus.i686


Per poter utilizzare l’applicazione sfruttando la scheda Optimus:

$ optirun –opzione <applicazione>



Per CentOS/RHEL è disponibile un repository a parte:


sudo rpm -Uvh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm

Installiamo i driver così:

sudo yum install kmod-nvidia nvidia-x11-drv


Metodo manuale: è un metodo “sporco” per installare e testare soprattutto i driver non ancora rilasciati come stabili.

Prima di tutto è meglio verificare la presenza del kit di sviluppo (anche se può non servire):


sudo yum groupinstall “Development Tools”
sudo yum install kernel-devel kernel-headers dkms

Inoltre dovete identificare il modello di scheda video che montate:

sudo lspci -nn | grep VGA


Esempio di output:

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108GL [Quadro 600] [10de:0df8] (rev a1)


Una volta che avete ottenuto il nome della vostra scheda andate sul sito ufficiale e scaricate gli ultimi driver disponibili:

http://www.nvidia.com/Download/index.aspx
Disattivate i driver Nouveau:
Da root aprite “/etc/modprobe.d/blacklist.conf” col vostro text editor preferito e aggiungete alla fine “blacklist nouveau“.


blacklist nouveau

Create un nuovo file “initramfs” e fate il backup dei file esistenti:


sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
sudo dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

Riavviate il pc

sudo reboot

Loggatevi come root nella command mode ( Alt+F4 / ALT+F5)
Una volta entrati spostatevi nella cartella nella quale avete scaricato i driver ed eseguite

./NVIDIA-Linux*.run

Dopo che l’installazione è completata create un file xorg.conf attraverso il seguente comando:

sado X -confugure


Sostituite il vecchio /etc/X11/xorg.conf col nuovo xorg.conf.new

sudo cp /root/xorg.conf.new /etc/X11/xorg.conf


Avviate l’X Window come root:

sudo init 5


Lanciate la finestra di configurazione di nVidia e settate la risoluzione manualmente. Alla fine cliccate su “Save to X Configuration File” e uscite.

Ubuntu 13.04

Il metodo riguarda l’aggiornamento dei driver proprietari esistenti. Questo presuppone che quelli stabili li abbiate già installati tramite “Sorgenti Software”

1. Xorg-edgers
Questo ppa ha sempre disponibili i driver proprietari più recenti.
Innanzitutto installate il pacchetto ppa-purge:


sudo apt-get install ppa-purge

Per installare repository e driver:

sudo add-apt-repository ppa:xorg-edgers/ppa; sudo apt-get update; sudo apt-get upgrade; sudo apt-get dist-upgrade

E riavviate.
Nel caso qualcosa dovesse andare storto e vogliate ripristinare i vecchi driver:

sudo ppa-purge ppa:xorg-edgers/ppa


Nel caso di schermata nera all’avvio, editate il GRUB prima dell’avvio di Ubuntu, premendo Maiuscolo e poi E. Cancellate le seguenti righe:

quiet,splash

E aggiungete:


xforcevesa,nomodeset

Premete Ctrl+X e avviate la procedura di ripristino sopra.

Per schede Optimus installate BumbleBee.
N.B: non è ancora possibile spegnere la scheda Intel quando usate quella nVidia, per cui il consumo della batteria sarà notevolmente aumentato.

Aggiugere il repository (non richiesto per Ubuntu 13.10 o superiori)


sudo add-apt-repository ppa:bumblebee/stable

Abilitate i repository Universe e Multiverse tramite “Sorgenti Software” Aggiornate il sistema.

sudo apt-get update


Installate il pacchetto

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

Riavviate.
Potete inoltre aggiungere il pacchetto primus come backend:

sudo apt-get install primus

Per lanciare un’applicazione sfruttando la scheda nVidia
optirun <applicazione>


3. Metodo manuale
Prima di tutto identificate la scheda video che possedete:


sudo lspci -nn | grep VGA


Esempio di output:


01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108GL [Quadro 600] [10de:0df8] (rev a1)


Aggiungete il seguente repository alla “/etc/apt/sources.list” col vostro editor di testo preferito; salvate e chiudete.

deb http://ftp.debian.org/debian/ wheezy main contrib non-free

Disattivate i driver Nouveau
Arpire con l’editor “/etc/modprobe.d/blacklist.conf” e aggiungete la riga:


blacklist nouveau

Salvate e chiudete: Ora aggiornate il sistema, installate i driver e i pacchetti per il kernel necessari:

sudo apt-get update
sudo apt-get install nvidia-kernel-dkms nvidia-glx nvidia-xconfig nvidia-settings sudo apt-get install nvidia-vdpau-driver vdpau-va-driver


Arrestate X (gdm3).

sudo service gdm3 stop

Generate un nuovo xorg.conf attraverso il seguente comando

sudo X -confugure


Sostituite il vecchio /etc/X11/xorg.conf col nuovo xorg.conf.new

sudo cp /root/xorg.conf.new /etc/X11/xorg.conf


Avviate X come root:

sudo startx


Aprite il wizard di configurazione dei driver, settate manualmente la risoluzione e alla fine cliccate to “Save to X Configuration File‘ e uscite.


Finito! Salvo spiacevoli imprevisti o sviste dovreste essere sopravvissuti ed aver installato i nuovi scintillanti driver nVidia. sono migliori dei precedenti? sì?