lunedì 7 aprile 2008

Installiamo i driver NVIDIA su Debian / Ubuntu

Ecco qua un bel tasto dolente, che ogni utente con Linux si trova a fronteggiare....Parliamo dei driver della scheda video, senza i quali il bellisimo compiz non potrebbe funzionare.

  • Innanzi tutto, se state usando ubuntu, avete la possibilità di utilizzare i restricted driver, scaricabili e configurabili con un click del mouse. Se avete una NVIDIA e installate il sistema operativo, durante l'aggiornamento, ubuntu dovrebbe essere in grado di riconoscere la scheda, vi si aprirà una lista dei driver ristretti che potrete usare. Spuntate quelli della scheda video, e il gioco è pressochè fatto. Qual'ora così non fosse, o se volete utilizzare i driver forniti da nvidia, seguite i passi che indicherò per debian lenny. Esiste anche un'altra soluzione che si chiama Envy.
  • Qual'ora stiate usando la distro etch di debian, potete eseguire un'installazione con un pacchetto chiamato module assistant, e scaricare i driver inclusi nei repository ufficiali di etch. Non spiegherò tale metodo, poichè io non ho etch, ma ho installato direttamente Lenny sul mio pc, e il pacchetto di cui se ne avrà bisogno, per la mia distro non so perchè ma non si trova (per il kernel 2.6.22-amd64). I prossimi passi sono validi comunque anche per le distro precedenti di debian.
Una nota, se usate debian potete loggarvi come root e/o usare il terminale di root, in tal caso non ci sarà bisogno di specificare il comando sudo di volta in volta.
  1. Avete lenny? aggiornate il sistema : questo dipende molto dalla vostra architettura. Intanto, se avete lenny aggiornatelo, motivi di dipendenza dei pacchetti.(apt-get dist-upgrade)
  2. Se avete UBUNTU, e i driver ristretti installati, dovrete rimuovere il pacchetto nvidia-glx installato (ovviamente uno solo tra nvidia-glx/nvidia-glx-new/nvidia-glx-legacy) in questo modo:
    sudo apt-get remove --purge nvidia-glx
  3. Prima di partire con l'installazione chiariamo ancora un attimo la situazione attuale dei driver NVIDIA.

    In generale:

    - legacy driver 1.0-71XX: supportano tutte le schede video più datate, ma non hanno il supporto AIGLX (ultima versione rilasciata 71.86.04);

    - legacy driver 1.0-96XX: supportano le schede video vecchiotte, ed hanno il supporto AIGLX (ultima versione rilasciata 96.43.05).

    - latest driver 169.12: reperibili dall'archivio ufficiale dei driver NVIDIA rappresentano la versione di sviluppo e sono gli ultimi driver rilasciati in ordine temporale.

  4. Potrete reperire i driver NVIDIA a questi link : http://www.nvidia.com/object/unix.html , http://www.nvidia.com/object/linux_display_archive.html
    http://www.nvidia.com/object/linux_amd64_display_archive.html
  5. Ora partiamo con l'installazione usando l'installer NVIDIA.

    Innanzitutto, se utilizzate Ubuntu e i linux-restricted-modules, sarà necessario disabilitare il modulo nv:

    sudo gedit /etc/default/linux-restricted-modules-common

    ed inserite quanto segue:

    DISABLED_MODULES="nv nvidia_new"

    Ultimi accorgimenti sia per Debian che per Ubuntu: per procedere con l'installazione, se non li avete già installati in precedenza è necessario scaricare alcuni pacchetti per la compilazione del modulo nvidia che verrà eseguita direttamente dall'installer. Da terminal, digitiate quindi:

    sudo apt-get install build-essential xserver-xorg-dev linux-headers-$(uname -r)
  6. l'eseguire l'ultima riga del passo precedente mi ha causato diversi problemi. Tutto era collegato al fatto che il pacchetto linux-headers ha dipendenze dal pacchetto linux-kbuild-$(uname -r)(al posto di uname, il terminale ci mette la versione del vostro kernel). Per Lenny su amd64, il pacchetto del kernel 2.6.22 NON esisteva da nessuna parte. Non riuscivo a installare i driver proprio perchè mancava quel pacchetto. Mentre mi accapponivo per trovare una soluzione, nei vari riavvii del pc, avvia debian con il nuovo kernel, il 2.6.24. Ho provato allora a prendere i pacchetti linux-headers e linux-kbuild del kernel 2.6.24 invece del .22, e come per magia, quello c'era nei miei repository di lenny, e lo ha installato!
  7. Terminata l'installazione dei pacchetti necessari alla compilazione, potete ora scaricare l'installer nvidia per la versione più adatta alla vostra scheda video e alla vostra architettura, dal primo link che ho messo nella guida.
  8. Completato il download, siccome per utilizzare l'installer nvidia è necessario arrestare X ed uscire dalla modalità grafica, se non avete un altro PC da cui seguire la guida mentre la vostra Debian o Ubuntu sarà in modalità testuale, segnatevi o ricordatevi i prossimi passaggi fondamentali. Aprite un'altra console premendo ctrl+alt+f2, uscite quindi dalla modalità grafica digitando:

    sudo /etc/init.d/gdm stop

    Effettuate il login in modalità testuale, spostatevi nella directory in cui avete scaricato l'installer nvidia, e sostituendo 96.43.04 con la versione che avete scaricato, lanciate l'installer digitando:

    sudo sh NVIDIA-Linux-x86-96.43.04-pkg1.run
  9. Accettate la licenza d'uso dei driver proprietari nvidia e continuate con l'installazione. Fatto ciò, vi verranno fatte alcune domande alle quali risponderemo sempre NO.

    Alla prima domanda, vi verrà chiesto di scaricare "bla bla bla" dal sito NVIDIA. Rispondete NO e procedete.

    NOTA : dopo la licenza, se AVETE Lenny, vi sarà dato un messaggio tipo gcc Error. Non spaventativi, rispondete, come ho scritto sopra di no, altrimenti l'install verrà terminato.

  10. Dopo l'install, il programma vi chiederà se volete che sia lui in automatico a configurare il file xorg.conf. dite NO anche questa volta, meglio fare il tutto manualmente...
  11. Completata l'installazione, perchè i driver nvidia appena installati funzionino a dovere, è necessario apportare alcune semplici modifiche al file /etc/X11/xorg.conf. Siccome a questo punto della guida vi trovate ancora in modalità testuale, per apportare le modifiche necessarie ad xorg che verranno elencate successivamente, avete due alternative:

    - rimanere in modalità testuale e modificare xorg.conf tramite vi o nano digitando:

    sudo nano /etc/X11/xorg.conf 
  12. utilizzare l'editor testuale vi, può risultare abbastanza complesso. Essi sono molto potenti, ma di sicuro NON user-frendly. Per cui, qualora voleste, dopo l'install potete anche tornare alla modalità grafica, digitando:
    sudo /etc/init.d/gdm start
    Premete ora ctrl+alt+f7 per tornare alla shell grafica
  13. Per agevolare i copia e incolla, ipotizziamo di essere tornati in modalità grafica. Sostituendo gedit con il vostro editor di testo prefeirto digitate:
    sudo gedit /etc/X11/xorg.conf

    ed effettuate le modifiche che seguono.

  14. nella sezione "Module"(se non esisteva, aggiungetela), assicuratevi che siano presenti i seguenti moduli e nel caso aggiungeteli:
    Load  "dbe"
    Load "glx"

    - sempre nella sezione "Module", assicuratevi che non siano presenti i moduli "GLCore" e "dri" e nel caso eliminateli o commentateli anteponendo un #

  15. nella sezione "Device" assicuratevi di sostituire "nv" o "vesa" con "nvidia" nella riga "Driver" in questo modo:
    Driver  "nvidia"
  16. infine, se presente, eliminate la sezione "DRI" in fondo al file e sostituitela con:
    Section "Extensions"
    Option "Composite" "Enable"
    EndSection
  17. Salvate tutte le modifiche al file e chiudetolo. Finito, tutto il necessario è installato e configurato correttamente, e non rimane altro da fare che testare l'installazione. Riavviate, e se tutto è andato a buon fine, prima della schermata di login visualizzerete lo splash screen nvidia.
Potrete inoltre verificare la corretta installazione dei driver proprietari NVIDIA digitando:
cat /proc/driver/nvidia/version

che dovrebbe restituirvi:

NVRM version: NVIDIA Linux x86 Kernel Module 71.86.01 / 96.43.05 / 169.12

Buon divertimento, con la vostra scheda video!

Nessun commento:

Posta un commento