Translation(s): English - Español - Français - Italiano


Driver liberi

Debian ha tre driver liberi per supportare le schede NVIDIA. Il driver vesa è un driver video generico. Il driver nv solitamente dà risultati migliori. A partire da wheezy il driver nv non è più pacchettizzato. Per vedere quale è attualmente in uso, eseguire

$ grep -B2 'Module class: X.Org Video Driver' /var/log/Xorg.0.log

Per cambiare il driver libero in uso, si può semplicemente configurare X.

Nessuno dei due driver liberi gestisce l'accelerazione 3D. Solo i driver non liberi nvidia gestiscono il 3D. I driver non liberi sono più complessi ed è più probabile che X funzioni male; se ciò accade e sembra diffile far funzionare X con i driver non liberi nvidia, tenere a mente che ritornare a un driver libero dovrebbe far funzionare di nuovo X.

Nouveau

Oltre a vesa e nv, Debian will contiene, a partire da Squeeze, i driver Nouveau; questi driver sono frutto di ingegneria inversa e sono per schede NVIDIA; sono in fase sperimentale e non raccomandati, a meno che non si abbiano problemi con il driver nv e non si vogliano usare i driver nvidia.

Installazione

Per usare i driver nouveau, la versione del drm del kernel e quella di libdrm devono corrispondere. L'installazione può fondamentalmente essere fatta in questo modo:

# apt-get install xserver-xorg-video-nouveau

Poi configurare X e impostare nouveau come driver di device.

Driver non liberi

Perché usare un metodo specifico per Debian?

I driver NVIDIA possono essere installati usando l'installatore ufficiale NVIDIA o i pacchetti driver di Debian. Ciascun metodo ha i propri vantaggi, ma il metodo Debian è probabilmente più semplice. Anche quando si compila un modulo driver manualmente, il metodo Debian è più affidabile e probabilmente darà meno lavoro da fare nel corso del tempo.

L'installatore NVIDIA è documentato altrove, come ?qui.

Indipendentemente dal metodo di installazione usato, la sezione sulla risoluzione dei problemi può essere di aiuto.

Confronto fra l'installatore NVIDIA e il metodo Debian

Vantaggi del "metodo Debian":

Vantaggi dell'installatore ufficiale NVIDIA:

Installazione

Come installare i driver 3D NVIDIA, col metodo Debian.

Introduzione

I driver NVIDIA 3D sono formati da due parti: un modulo del kernel e poi una raccolta di librerie in spazio utente e un driver video per X. Le librerie e il driver per X (a volte chiamato "driver binario" o librerie GLX) sono distribuiti in forma di binari da NVIDIA e sono pacchettizzati per Debian nei pacchetti nvidia-glx. Dato che i driver 3D di NVIDIA non sono open source, per installarli sono necessarie fonti APT non libere.

Metodo DKMS

In Squeeze DKMS funziona bene e ha il vantaggio di ricompilare il driver automaticamente ad ogni installazione di un nuovo kernel. Questo è per schede che usano l'attuale versione del driver, se si necessita del driver legacy (173, 96 o 71) c'è il pacchetto adatto.

Fase 1 - installare i pacchetti necessari:

# apt-get install nvidia-kernel-dkms nvidia-glx nvidia-xconfig

Se si possiede una scheda Nvidia serie 8000 o superiore si può voler installare anche VDPAU:

# apt-get install nvidia-vdpau-driver vdpau-va-driver

Fase 2 - fare un backup del proprio xorg.conf (se esiste) e crearne uno nuovo per il driver Nvidia:

# if [ -f /etc/X11/xorg.conf ]; then mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup; fi && nvidia-xconfig

Alcune opzioni utili aggiungibili alla sezione Device del file xorg.conf:

    # Disabilita il logo Nvidia
    Option         " NoLogo" "true"
    # Aggiusta la misura dei font
    Option         "DPI" "96 x 96"
    # Impostazioni power saving per il driver Nvidia
    Option         "OnDemandVBlankInterrupts" "1"
    # Abilita overclocking
    Option         "Coolbits" "1"

Metodo con sorgente

Il modulo del kernel (cioè l'"interfaccia del kernel al driver binario") è distribuito in forma di sorgente (anche se con un componente binario) e pacchettizzato in Debian nei pacchetti nvidia-kernel-source. I numeri di versione del modulo del kernel e delle librerie in spazio utente e del driver video per X devono combaciare. Le librerie utente devono essere installate una volta soltanto, ma il modulo del kernel deve essere ricompilato ogni volta che viene cambiato il kernel. Cosa fare:

È necessario eseguire i passi 3 e 4 una sola volta, ma è necessario ripetere il passo 2 ogni volta che il kernel viene cambiato.

Passi

Scegliere una versione del driver

I driver attuali non supportano alcune schede NVIDIA datate. Al momento della stesura di questo documento i driver NVIDIA avevano abbandonato il supporto per alcune schede datate 3 volte. NVIDIA tuttavia mantiene l'ultima versione del driver rilasciata prima di quella in cui viene eliminato il supporto per qualche scheda vecchia. Ciò significa che esistono attualmente 4 serie di driver mantenute da NVIDIA. Il primo abbandono di supporto avvenne nel 2005, perciò la serie più vecchia di driver datati (71xx) dovrebbe supportare le schede rilasciate prima del 2005, ma non quelle successive al 2005. La cosa si è ripetuta nel 2006 e ha portato alla serie 96xx di driver obsoleti. Il terzo abbandono di supporto è avvenuto nel 2008 e ha portato alla serie 173.14 di driver obsoleti.

Nessuna suite di Debian contiene le 4 serie di driver disponibili, ma può essere possibile installare pacchetti non ufficiali se la propria scheda grafica richiede un driver di una serie non disponibile per la propria suite. Sia Lenny sia Squeeze contengono la serie datata più recente, la 173.14, e quella precedente, 96.43. Squeeze contiene anche la serie attuale. I driver più vecchi, 71xx, non sono attualmente in nessuna delle suite Debian (tranne unstable, ma inutilizzabili). È praticamente impossibile usare il driver nvidia su una suite Debian attuale per schede non più supportate dopo 71xx.

La versione 71xx è l'unica che gestisce RIVA TNT, RIVA TNT2/TNT2 Pro, RIVA TNT2 Ultra, Vanta/Vanta LT, RIVA TNT2 Model 64/Model 64 Pro, Aladdin TNT2, GeForce 256, GeForce DDR, Quadro, GeForce2 GTS / GeForce2 Pro, GeForce2 Ti, GeForce2 Ultra e Quadro2 Pro. Le versioni più recenti di 96.43 non gestiscono schede GeForce2 e GeForce4. È disponibile un elenco più dettagliato di schede supportate solamente dai driver obsoleti.

Debian distribuisce varie versioni dei driver usando vari pacchetti con nomi diversi. Per esempio, il driver per X e le librerie in spazio utente per la serie attuale sono nel pacchetto nvidia-glx; tuttavia, col tempo, i driver attuali diventeranno datati, perciò il pacchetto nvidia-glx in Lenny non è più aggiornato.

Se è possibile usare driver aggiornati. Si può scoprire quali schede sono gestite consultando l'Appendice A del README del driver 195.36.24 di NVIDIA.

Impostare una variabile VERSION, a cui farà riferimento il resto delle istruzioni in questo testo, al valore "-legacy-96xx", "-legacy-173xx" o ad una stringa vuota. Se si desidera installare la versione predefinita per la propria suite, non è necessario impostare VERSION alla stringa vuota. Per scoprire il nome di una scheda, si può provare ad usare lspci; per determinare quale versione si dovrebbe usare, si può eseguire questo script, che proporrà un valore da impostare per la variabile VERSION.

Installare il modulo del kernel

Kernel predefinito o personalizzato?

Alcuni dei metodi di installazione che seguono dipendono dal fatto che si stia usando un kernel predefinito, cioè un kernel precompilato dalla distribuzione Debian. Se si sa quale tipo di kernel si sta usando, si può saltare alla prossima sezione.

In modo predefinito, Debian viene fornita con un kernel prefatto. Se non si sa che tipo di kernel sia in uso, probabilmente ciò significa che si sta usando un kernel prefatto. Se non si è sicuri, eseguire

$ uname -r

e controllare che l'output abbia la forma 2.*.*-numero minore-architettura (es. 2.6.18-6-486). Se è così, quasi sicuramente si sta usando un kernel prefatto.

Metodi

Ci sono quattro metodi diversi per installare il modulo del kernel.

Usare module-assistant

Questo metodo è facile e dovrebbe funzionare per la maggior parte dei kernel predefiniti o personalizzati. Per un kernel personalizzato è necessario avere installati i suoi header Linux.

Sono necessari module-assistant e nvidia-kernel-common. Per installarli con apt-get:

# apt-get install module-assistant nvidia-kernel-common

Eseguire il seguente comando:

# m-a auto-install nvidia-kernel${VERSION}-source

ed è fatta. Se tutto è andato bene, il modulo del kernel nvidia è ora compilato e installato; si può passare al passo 3. Se non è così, proseguire la lettura di questa sezione.

Per compilare il proprio modulo del kernel nvidia si deve usare la stessa versione di gcc che è stata usata per compilare il kernel. Questo potrebbe essere un problema se si sta usando un kernel prefatto; se module-assistant fallisce, leggere il suo output nel log e cercare messaggi che suggeriscano l'uso, per esempio, di gcc-4.0 invece di gcc-4.1. Installare poi il pacchetto corrispondente e riprovare auto-install.

Si potrebbero avere problemi anche se un tentativo precedente (fallito) di compilare il modulo del kernel nvidia ha lasciato delle cose in /usr/src/modules/nvidia-kernel/

Se ciò accade, si può provare a rimuovere i vecchi file:

# rm -r /usr/src/modules/nvidia-kernel/

e ad eseguire "auto-install" un'altra volta.

Il passo auto-install è il più corposo della procedura ed è quello che ha più probabilità di dare problemi. auto-install può essere suddiviso in passi successivi più piccoli di module-assistant e la cosa può aiutare a capire il problema:

Se un # m-a get nvidia fallisce, provare ad installare il pacchetto nvidia-kernel-source package. Se APT non riesce ad installare nvidia-kernel-source, si dovrebbe tornare al passo 0 e assicurarsi di non aver dimenticato nulla.

Se non si riesce ad installare il modulo usando module-assistant, provare a installare un modulo precompilato se si usa un kernel prefatto o provare a compilarlo manualmente con un kernel personalizzato.

Installare un modulo precompilato

Questo metodo è facile se si sta usando un kernel prefatto per il quale è disponibile un modulo precompilato; se si sta usando un kernel personalizzato o Debian 6 e si necessita di un driver legacy non funzionerà per niente. Sono disponibili moduli precompilati per tutti i kernel installati in modo predefinito da Debian Lenny e per le attuali serie di driver per tutti i i kernel installati in modo predefinito da Debian Squeeze. Se il metodo module-assistant non funziona ed esistono moduli precompilati per il proprio kernel, usare questo metodo.

Se non si conosce la versione del proprio kernel, eseguire

$ uname -r

Se esiste un modulo precompilato per il proprio kernel, installare il suo pacchetto. Il nome inizia con "nvidia-kernel-"; questa parte è seguita da un'indicazione della serie dei deriver desiderata (è nulla per la serie predefinita dei driver). Il nome termina con l'identificativo della propria immagine Linux. Per esempio, usando apt-get:

# apt-get install nvidia-kernel${VERSION}-$(uname -r)

Se questo ha successo, si può ora procedere al passo 3. Se non ci sono moduli precompilati per il proprio kernel e il metodo 1 non ha successo, si può provare il metodo 4.

Compilare manualmente con un kernel personalizzato

Usare questo metodo se si sta per configurare e compilare un kernel personalizzato. La descrizione di questo metodo potrebbe essere inesatto o incompleto.

  1. Installare i sorgenti del modulo del kernel. Per esempio, con apt-get:
    # apt-get install nvidia-kernel${VERSION}-source

    Questo installa un archivio tar sorgente in /usr/src/. Spacchettarlo in /usr/src:

    $ cd /usr/src
    # tar -xf nvidia-kernel-*.tar.gz

    Questo spacchetterà i sorgenti del modulo del kernel in /usr/src/modules/nvidia-kernel[qualcosa].

  2. Configurare il proprio kernel. Questo passaggio non viene documentato qui; per imparare come fare, leggere la documentazione di kernel-package. Riassumendo, ciò che si deve fare è
    $ cd /usr/src/linux
    # make xconfig

    e poi scegliere le opzioni che si desiderano. Notare, tuttavia, che è stato segnalato che ciascuna delle seguenti opzioni causa problemi con il driver nvidia:

    • Device drivers –> Graphics Support –> nVidia Riva support (FB_RIVA)

    • Device drivers –> Graphics support –> nVidia Framebuffer Support (FB_NVIDIA)

    • Device drivers –> Graphics support –> VESA VGA graphics support (FB_VESA)

    • Processor Type and Features –> Local APIC support on uniprocessors (X86_UP_APIC) (not available if you have an SMP kernel, including hyperthreading)

    È perciò raccomandato disabilitare tutte le opzioni precedenti nella propria configurazione del kernel. Se per qualche ragione non le si disabilita e successivamente il display X non funziona con il driver nvidia, si dovrebbero sospettare queste opzioni come causa probabile del problema. Per maggiori dettagli, vedere la sezione sulla risoluzione dei problemi.

  3. Compilare il kernel e il modulo del kernel nvidia:

    # make-kpkg clean
    # make-kpkg kernel_image modules_image

    Per un'introduzione sull'uso di make-kpkg per compilare pacchetti del kernel, vedere Creating custom kernels with Debian's kernel-package system o Compiling Kernels the Debian Way. Vedere anche la pagina man di ?make-kpkg(1) per una descrizione delle altre opzioni e destinazioni che si possono usare in quel comando. Il risultato del precedente comando saranno due file di pacchetto Debian: linux-image-*.deb e nvidia-kernel-*.deb, entrambi in /usr/src or /usr/src/modules. Il primo file contiene il kernel, il secondo contiene il modulo del kernel nvidia.
    Allo stesso tempo, se si hanno i sorgenti per qualsiasi altro modulo del kernel aggiuntivo in /usr/src/modules, allora l'obiettivo "modules_image" fara sì che make-kpkg compili file di pacchetto Debian anche per essi. Per esempio, se si installa il pacchetto fuse-source, si ottiene un archivio di sorgenti /usr/src/fuse.tar.gz, che si può spacchettare per ottenere i sorgenti del modulo fuse in /usr/src/modules/fuse. Se ciò è stato fatto, allora la medesima invocazione di make-kpkg compilerà anche un file di pacchetto per il modulo fuse, /usr/src/fuse-*.deb, specifico per il proprio nuovo kernel.

  4. Installare il nuovo kernel e il nuovo modulo del kernel:
    $ cd /usr/src
    # dpkg -i /path/linux-image-*.deb /path/nvidia-kernel-*.deb

    Usare i caratteri jolly nel nome file come scritto sopra, se si preferisce, ma fare attenzione a non avere più di un'immagine Linux o file di pacchetto nvidia-kernel in giro in /usr/src; altrimenti si otterrà una sfilza di messaggi di errore. È probabilmente meglio digitare in modo esteso tutti le informazioni sulla versione che nel comando più sopra sono state indicate con *.

  5. Avviare il nuovo kernel. Prima di provare a far funzionare i driver 3D NVIDIA, assicurarsi che il nuovo kernel si avvii bene e che X parta correttamente usando un driver X libero.

Procedere con il passo 3.

Compilare manualmente, con un kernel prefatto

Usare questo metodo se si sta usando un kernel prefatto e i primi due metodi non hanno successo. module-assistant dovrebbe automatizzare questo processo. In altre parole, se il primo metodo non ha avuto successo, ma questo funziona, si dovrebbe probabilmente fare una segnalazione di bug per il pacchetto module-assistant.

La procedure descritta in seguito è riadattata dalle istruzioni in /usr/share/doc/nvidia-kernel-source/README.Debian e potrebbe essere inesatta.

  1. Salvare il numero di versione del proprio kernel (es. 2.6.18-6-686) in un paio di variabili d'ambiente:
    export KVERS=$(uname -r)
    export KSRC=/usr/src/linux-headers-$KVERS
    export KPKG_DEST_DIR=/usr/src
    Notare che queste variabili sono usate dai comandi di compilazione seguenti, perciò è davvero necessario impostarle ed esportale come mostrato con i comandi precedenti.
  2. Installare i sorgenti del modulo del kernel: eseguire
    apt-get install nvidia-kernel-source nvidia-kernel-common

    Questo fornisce un archivio tar dei sorgenti, /usr/src/nvidia-kernel-source.tar.gz. Spacchettarlo con

    cd /usr/src
    tar -zxf nvidia-kernel-source.tar.gz

    Questo spacchetta i sorgenti del modulo del kernel in /usr/src/modules/nvidia-kernel. Nel caso l'archivio non sia quello, ma /usr/src/nvidia-kernel.tar.bz2, spacchettarlo con

    cd /usr/src
    tar -jxf nvidia-kernel.tar.bz2
  3. Installare i file header per il proprio kernel:
    apt-get install linux-headers-$KVERS

    Questo fornisce i file header del kernel in /usr/src/linux-headers-$KVERS. Assicurarsi di controllare che l'immagine del kernel installata e i pacchetti di header del kernel abbiano lo stesso numero di versione: eseguire

    apt-cache policy linux-image-$KVERS linux-headers-$KVERS
    e controllare che il numero di versione elencato come "Installed" sia lo stesso per entrambi i pacchetti. Se non lo è, trovare la distribuzione che ha la versione di linux-headers di cui si ha bisogno, ad esempio testing, e ripetere l'installazione precedente aggiungendo '-t testing' (o il valore corretto).
  4. Compilare il pacchetto con il modulo del kernel:
    cd /usr/src/modules/nvidia-kernel
    debian/rules binary-modules

    Il risultato è un file di pacchetto /usr/src/nvidia-kernel-*.deb, che contiene il proprio modulo del kernel. Notare che svariati utenti hanno recentemente riportato il fatto che il loro file di pacchetto nvidia finisce in /usr/src/modules, invece che in /usr/src. L'autore non è riuscito ancora a capire perché ciò accada; in ogni caso se ciò accade modificare il prossimo comando in modo appropriato.

  5. Installare il modulo del kernel:
    dpkg -i /usr/src/nvidia-kernel-*.deb

    Usare i caratteri jolly nel nome file come scritto sopra, se si preferisce, ma fare attenzione a non avere più di un file di pacchetto nvidia-kernel in giro in /usr/src; altrimenti si otterrà una sfilza di messaggi di errore. È probabilmente meglio digitare in modo esteso tutti le informazioni sulla versione che nel comando più sopra sono state indicate con *.

Ora procedere con il passo 3 più sotto.

Installare il driver per X NVIDIA e le librerie in spazio utente

Installare il pacchetto per il driver per X e le librerie in spazio utente. Per esempio, con apt-get:

# apt-get install nvidia-glx${VERSION}

Notare che la ragione per cui questo passo deve essere fatto dopo il passo 2 è che nvidia-glx dipende da un pacchetto virtuale chiamato 'nvidia-kernel-$NVVERSION', dove $NVVERSION è la parte originale a monte della versione del pacchetto nvidia-glx. Questo pacchetto virtuale dovrebbe essere fornito dal pacchetto del modulo del kernel che è stato installato nel passo 2, perciò si deve completare prima quel passo. Se l'installazione di nvidia-glx fallisce perché il requisito su 'nvidia-kernel-$NVVERSION' non soddisfatto, si dovrebbe probabilmente controllare che il passo 2 sia stato completato con successo.

Configurare X per usare il driver nvidia

Si può usare il metodo manuale o nvidia-xconfig, che crea un xorg.conf di base e uno finale con le proprie impostazioni desiderate.

Il metodo manuale

xorg.conf può dire ad X di usare il driver nvidia. Se si ha il file, modificarlo, altrimenti deve essere creato.

Modificare un file xorg.conf esistente

Prendere in considerazione l'esecuzione di una copia di backup del proprio file di configurazione attuale:

# cp -p /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

Stare attenti agli errori di digitazione e controllare nel log di X se qualcosa va storto.

Modificare /etc/X11/xorg.conf:

Creare un file xorg.conf

Creare un file xorg.conf con il seguente contenuto:

Section "Module"
    Load        "glx"
EndSection

Section "Device"
    Identifier  "Video Card"
    Driver              "nvidia"
EndSection

Usare nvidia-xconfig

Attenzione: questo metodo non viene generalmente raccomandata a causa di un importante bug in X (504692).

Installare nvidia-xconfig. Per esempio, usando apt-get:

# apt-get install nvidia-xconfig

Ora creare un file xorg.conf di base per includere il driver NVIDIA:

# nvidia-xconfig

Riavviare X

Questo è il passo più semplice, ma probabilmente il più cruciale. Se per qualche ragione non funziona e si desidera tornare in X prima di risolvere il problema, si devono annullare gli effetti del passo 4 (scegliendo nuovamente un driver libero). Quando si pensa di aver risolto il problema, si può ripetere il passo 4 e riprovare ad avviare X. Ricordarsi che anche se tutto funziona, sarebbe bene leggere la prossima sezione per evitare problemi futuri. E se non funziona.... controllare la sezione sulla risoluzione dei problemi.

Se non si usa un display manager, chiudere semplicemente la propria sessine; questo dovrebbe portare ad una console. Se ciò non avviene, si dovrebbe stare usando un display manager (come gdm, kdm o xdm). Come prima cosa identificare quale si sta usando; se non lo si sa, probabilmente è gdm. Si può saperlo controllando se c'è in esecuzione un processo il cui nome termina in "dm". Una volta determinato quale si sta usando, chiudere la propria sessione e andare ad eseguire il corretto script init in una console. Ecco un esempio per gdm:

# invoke-rc.d gdm restart

In alternativa, si può semplicemente premere Alt+E alla schermata di login se si usa kdm. Se non si riesce a capire come riavviare X seguendo queste istruzioni, si può semplicemente riavviare il sistema. Altrimenti si dovrebbe poter fare affidamento sulla scorciatoia da tastiera Ctrl+Alt+Backspace, nonostante non sia proprio il massimo.

Controllare che abbia funzionato

Per controllare che l'accelerazione sia in uso, si può usare glxinfo. Questo programma è nel pacchetto mesa-utils. Se

$ glxinfo |grep rendering

restituisce "direct rendering: Yes", l'accelerazione sta funzionando. Se restituisce No, vedere la sezione "Accelerazione hardware, o direct rendering, non funziona". Se restituisce, l'accelerazione 3D dovrebbe funzionare (in giochi come PlanetPenguin Racer o Extreme Tux Racer e Neverball) should work.

Come gestire i cambiamenti di kernel e gli aggiornamenti dei driver

I passi 3 e 4 sono fatti una volta per tutte; in alcune situazioni si dovrà tuttavia ripetere il passo 2. Se non si realizza che una tale situazione si è presentata, l'avvio di X fallirà. Si può affrontare questo problema in due modi: ricordarsi in quali situazioni ciò accada e cercare di prevenirlo, o ricordarsi di ritornare a queste istruzioni quando l'avvio di X fallisce. In ogni modo non si è a posto per sempre. Se l'avvio di X fallisce per questo motivo, si può di nuovo annullare l'effetto del passo 4 (scegliendo ancora una volta un driver libero) e ripristinarlo quando si desidera riprovare ad usare il driver nvidia per X.

Quando

Il passo 2 installa un modulo del kernel nvidia per un kernel e una versione del driver NVIDIA specifici. Sarà necessario ripeterlo per ogni kernel e si dovrà ripeterlo per ogni nuova versione del driver. Se non si sa cosa ciò significhi, continuare a leggere.

... cambierà la versione del driver NVIDIA

Se si sta usando Debian stable, ciò non avverrà fino a quando non si farà l'aggiornamento al successivo rilascio Debian, ma allora accadrà.

In tutti i casi, ciò avverrà quando il pacchetto nvidia-glx package viene aggiornato. Tutte le versioni di nvidia-glx dipendono da un pacchetto virtuale nvidia-kernel-versione. Durante il passo 2, si è installato un pacchetto che fornisce questo pacchetto virtuale. Tuttavia, se si aggiorna nvidia-glx prima di ripetere il passo 2, APT cercherà di soddisfare le dipendenze relative al pacchetto virtuale installando fondamentalmente un modulo del kernel precompilato casuale. Si noterà l'installazione (o l'aggiornamento se è già presente) di un qualche nuovo pacchetto nvidia-kernel-qualcosa. Invece di lasciare che ciò accada, ripetere il passo 3 per ottenre un modulo del kernel appropriato. Poi, la dipendenza dal pacchetto virtuale verrà soddisfatta e si potrà aggiornare nvidia-glx in modo sicuro e senza installare pacchetti inutili.

...cambierà il kernel

Se si compilano altri moduli usando module-assistant, si deve ripetere il passo 2 ogni volta che si esegue module-assistant per gli altri moduli, cioè per ogni nuova ABI del kernel. Se non si sa cosa ciò significhi, proseguire la lettura.

Se si installa un kernel con una nuova ABI, verrà installato un nuovo pacchetto immagine di Linux. Per esempio, se Linux 2.6.18 ottiene una nuova ABI e attualmente si sta usando linux-image-2.6.18-4-486, si dovrà installare il pacchetto linux-image-2.6.18-5-486 per ottenere il nuovo kernel (le parti "-4" e "-5" dei nomi di pacchetto indicano che questi pacchetti contengono rispettivamente la quarta e quinta ABI del kernel precompilato 2.6.18 i386 di Debian). Questo può avvenire senza l'intervento manuale dell'utente quando si aggiorna il sistema, se è installato il metapacchetto linux-image-2.6-486; può anche accadere se si installa un kernel diverso. Per esempio, si può avere entrambi 2.6.26 e 2.6.32 in Lenny. Se si è eseguito il passo 2 solamente per 2.6.26, sarà necessario farlo anche per 2.6.32. Si può vedere quando un nuovo kernel verrà installato perché si vedrà l'installazione di un nuovo pacchetto linux-image-qualcosa. L'avvio di X fallirà dopo aver avviato con un nuovo kernel fino a che non si ripete il passo 2 per quel kernel.

Risoluzione dei problemi

X non si avvia

X (o tutta la macchina quando X è in esecuzione) è non stabile

L'accelerazione hardware, o direct rendering, non funziona

Nella sezione "Controllare che abbia funzionato" abbiano parlato di come controllare che l'installazione funzioni. Se ciò non accade, controllare di aver impostato la configurazione di X in modo corretto. Si può farlo controllando che

$ grep Driver /etc/X11/xorg.conf 2>&1|grep nvidia

restituisca qualcosa. Se ciò avviene ma si ottiene, quando si prova ad usare applicazioni OpenGL come glxinfo, un errore che assomiglia a questo:

Error: Could not open /dev/nvidiactl because the permissions
are too resticitive.  Please see the FREQUENTLY ASKED QUESTIONS
section of /usr/share/doc/NVIDIA_GLX-1.0/README for steps
to correct.
Fatal signal: Segmentation Fault

ci si dovrebbe assicurare che l'utente che esegue queste applicazioni sia nel gruppo video.

Problemi var con X

Guardare nel file di log di X (/var/log/Xorg.0.log). Il server X scrive moltissime informazioni in quel file sui file di configurazione che legge, sulle modalità di visualizzazione che prova ad usare e sugli errori (EE) che incontra sul suo cammino. Si possono spesso trovare indizi per capire la ragione di qualsiasi problema si possa avere.

"nvidia license taints kernel"

Se si ottiene un messaggio simile in console o nel syslog, non ci si preoccupi. Il kernel è a posto... o almeno a posto quanto può esserlo un kernel che esegue un driver 3D NVIDIA. Questo messaggio significa solamente che, dato che il proprio driver non è open source, non si otterrà alcun supporto dai manutentori di Linux se qualcosa va storto con il kernel quando il modulo è caricato. Vedere le FAQ di LKML per ulteriori dettagli.

Ultima spiaggia

Si può controllare il NVIDIA Linux Forum su nvnews.net per problemi non correlati alla pacchettizzazione per Debian. Per problemi specifici per Debian, si può guardare il sistema di tracciamento dei bug o chiedere aiuto nelle risorse di aiuto di Debian, come la mailing-list debian-user e il canale #debian su irc.debian.org. Se si continua ad avere un problema che non si riesce a risolvere, si può comunicarlo all'autore di questo documento; farà quello che può per aiutare, nei limiti delle sue conoscenze e del tempo a sua disposizione.

Ulteriori informazioni

Informazioni su questo documento

Questa pagina wiki è stata creata da Philippe Cloutier per pubblicare un aggiornamento a Andrew's Debian-nVidia HOWTO. Si può modificare liberamente questa pagina purché si accetti di lasciare il copyright dei propri cambiamenti all'autore. Per problemi, commenti o domande relativi alle informazioni in questo documento, si può scrivere al manutentore. Non è un esperto, ma farà del suo meglio per rendere utile il documento.

Ringraziamenti

Grazie a Andrew Schulman per la pubblicazione di questo HOWTO, per aver accettato di condividerne i diritti e per aver inserito un collegamento a questa pagina nell'HOWTO dato che esso non è più mantenuto.

Licenza

This document is Copyright 2005, by Andrew E. Schulman. Permission is hereby granted to freely copy, distribute, and/or modify any of the contents of this document in any way and for any purpose.

Vedere anche