I driver NVIDIA non funzionano dopo l'aggiornamento. Perché posso vedere solo il terminale?


34

Stasera sono passato all'11.04. I problemi. Una volta terminato l'aggiornamento, ho riavviato il computer come indicato anche da me. Quando ho superato Ubuntu 11.04 (punti viola con sfondo arancione), è andato semplicemente al terminale e mi ha chiesto di accedere. Ho provato a riavviare il server X con "sudo service gdm restart" ma non è apparso alcun display. Mi è capitato di avere anche alcuni driver NVIDIA nel mio file di download, quindi ho provato questi, ma lo "script di installazione" non è riuscito.

Dopo tutto ciò ho avviato Ubuntu in modalità grafica fail-safe. Ho quindi deciso di vedere cosa sarebbe successo se avessi rimosso il driver proprietario. Dopo aver fatto questo e riavviato il mio Ubuntu avviato in modalità grafica "yay!". Quindi senza i driver Nvidia posso finalmente vedere qualcosa di diverso dal terminale, ma per il mio lavoro ho bisogno di quei driver NVIDIA. Quindi cosa posso fare? Ho provato a installare i nuovi driver Linux NVIDIA dal sito Web NVIDIA e ho provato a installare il driver raccomandato tramite "driver aggiuntivi", ma entrambi mi hanno fatto rimanere bloccato nel terminale.

Se puoi aiutarmi o darmi qualche consiglio, PER FAVORE! Sono davvero in una brutta situazione ...


2
Hai rimosso prima il file /etc/X11/xorg.conf, quindi riavviato, quindi hai provato ad attivare la versione di driver aggiuntivi del driver NVIDIA?
Fossfreedom

1
Sto riscontrando lo stesso problema. Attivo il driver, mi disconnetto e vedo "Nessun dispositivo trovato" nel registro X. Se rimuovo xorg.conf, X si avvia senza il supporto GLX. Modprobe dice che il nvidiadriver è caricato.
vissi,

No, non ho rimosso il file Xorg.conf. Sto avendo lo stesso problema con cui parli. È terribile.
Sixthlaw,

Consiglia a leggere questa guida: askubuntu.com/questions/61396/…
Luis Alvarado

Risposte:


30

Dovrai avviare la modalità di ripristino, quindi rilasciarlo apt-get remove --purge nvidia-currentsul terminale di root, seguito da apt-get install nvidia-current- per ricostruire il driver nvidia per il nuovo kernel. Ho avuto questo problema anche quando ho aggiornato.

Si prega di non installare i driver dal sito Web di nVidia tra l'altro! Potresti causare seri problemi se successivamente provi a installare il driver consigliato senza rimuovere in modo pulito quello precedente.

Modifica: sarà necessario eseguire questi comandi da un terminale. Non posso garantire un risultato perfetto, dal momento che vado basato su ciò che ho trovato via Internet e dalla memoria.

Il problema che stai riscontrando è causato dall'avere diversi componenti della modalità utente e moduli del kernel. Per risolverlo, il modulo del kernel nvidia deve essere ricostruito. Questo dovrebbe succedere al riavvio, ma spesso non lo è.

Per prima cosa devi installare le intestazioni del kernel linux:

  • sudo apt-get install linux-headers-generic

Quindi dovrai eseguire dkms per rimuovere il vecchio modulo del kernel nvidia:

  • sudo dkms remove nvidia

Quindi eseguire:

  • sudo apt-get install nvidia-current
  • questo dovrebbe farlo installare correttamente, quindi tutto ciò che devi fare è eseguire sudo nvidia-xconfig and reboot.
  • Se ricevi ancora un errore sulla versione del modulo, esegui: sudo dkms build nvidia

Questo dovrebbe risolvere il problema.

Scusate se le cose sono un po 'confuse, ho provato a rimettere insieme il processo che ho dovuto usare al meglio della mia memoria :)! Se riscontri problemi, non esitare a farmelo sapere (e se qualcuno rileva qualche problema con le istruzioni, fammi sapere al più presto) !!!!


Aggiornare:

Ho trovato un'altra possibile causa. Nouveau potrebbe non essere stato inserito nella blacklist e nvidia-current potrebbe non essersi inserito nel file .conf utilizzato per scegliere il driver dello schermo. Ecco come risolverlo:

NB:

Prima di continuare, assicurarsi di disporre del driver nvidia-corrente dai repository. Il download del driver dal sito Web di NVIDIA può causare problemi in un secondo momento, poiché non utilizza il formato del pacchetto debian e lascia cose che potrebbero essere in conflitto con installazioni successive. Quindi assicurati di cancellarne prima tutte le tracce, quindi installa il driver standard dai repository di Ubuntu. In caso contrario, si verificherà una mancata corrispondenza del driver e questa correzione sarà inutile.

  • Se sei bloccato sulla console, accedi e installa il driver nouveau X.org: sudo apt-get install xserver-xorg-video-nouveau
  • Riavvia il computer (avrai grafica funzionante, yay! Ma questo è temporaneo).
  • Aprire gedit come root: gksu gedit.
  • Da gedit aperto /etc/modprobe.d/blacklist.conf.
  • Aggiungere questa riga in basso: blacklist nouveau.
  • Salvare il file e aprirlo /etc/modprobe.d/nvidia-graphics-drivers.conf.
    • Aggiungi queste righe:

      lista nera nouveau
      lista nera lbm-nouveau
      lista nera nvidia-173
      lista nera nvidia-96
      alias nvidia nvidia-current

  • Ora salva questo file e chiudi gedit.
  • Correre:
    • sudo nvidia-xconfig,
    • e poi:
    • sudo apt-get remove xserver-xorg-video-nouveau,
    • seguito da:
    • sudo shutdown -r now.
  • Al riavvio del sistema, è necessario disporre di driver nvidia funzionanti.
A proposito, questo problema di non inserire la black list in nouveau sembra esistere nei driver più recenti (nvidia-current), quindi suggerirei, dopo aver risolto il problema, di attendere un aggiornamento su questo bug (lo segnalerò presto ).

Soluzione alternativa: se hai installato i driver NVIDIA dal loro sito Web, devi eseguire l'avvio in un terminale di testo (tieni premuto all'avvio per visualizzare il menu di grub e selezionare la modalità "ripristino" della versione del kernel che ha funzionato per l'ultima volta con i driver NVIDIA, e seleziona la riga di comando come opzione root)

Quindi eseguire lo script shell di installazione NVIDIA originale eseguito per installare i driver NVIDIA dal loro sito Web. es sudo ./NVIDIA-Linux-x86-290.10.run --uninstall. (La tua versione potrebbe differire.)

Non sarà necessario eseguire il comando "sudo dkms remove nvidia", poiché ciò non si applica al tuo caso.


Ho provato questo, ma quando ho riavviato, ancora una volta ha mostrato solo il terminale. Ho provato sudo startx nel terminale e ho ricevuto questi messaggi tra gli altri: ERRORE: mancata corrispondenza API: il modulo del kernel NVIDIA ha la versione 260.19.36, il componente del driver NVIDIA ha la versione 270.41.06. Assicurarsi che il modulo del kernel e tutti i componenti del driver nvidia abbiano la stessa versione.
Sixthlaw,

Ho anche ottenuto questo: errore irreversibile del server nessuna schermata trovata.
Sixthlaw,

1
@Sixthlaw: ahhh - tieni duro, è un problema di dkms ed è lo stesso che ho avuto. Dovrai emettere la build di dkms dalla riga di comando (ho dimenticato il comando, quindi attendi fino a quando non lo avrò e aggiornerò la mia risposta).
RolandiXor

1
sudo apt-get install nvidia current->sudo apt-get install nvidia-current
IanVaughan,

1
Si noti che l'invocazione data di dkmsè supportata solo in 11.10 o versioni successive. A partire dalla versione 11.04 o successiva è necessario fornire le versioni del modulo e del kernel ( man dkms).
kynan,

12

Questo è il motivo per cui consiglio sempre di installare Ubuntu come installazione pulita invece di fare un aggiornamento. Questa è solo la mia opinione, ma ho sempre avuto qualche problema o altro durante gli aggiornamenti. Nessun problema quando si esegue un'installazione pulita.

Per quello che ho letto sulle altre risposte hai installato il driver Nvidia dal sito Nvidia. Anche se funziona bene ed ecc. NON FARLO !. Quello che arriva nei repository Ubuntu è stato testato ed è quello raccomandato.

Nel tuo caso dovrai fare diverse cose.

Passaggio 1 : disinstallare il driver nvidia che si installa e non installarlo mai più. Ti salverà dall'avere QUELLO problema specifico che ... ehem .... qualcuno lo aveva anche (Me;)) devi anche rimuovere i moduli da esso e qualunque file di configurazione lasci. Se non sbaglio, i driver nvidia dal sito Web Nvidia hanno un file binario di disinstallazione. Eseguilo e assicurati che non ci siano altri file nvidia lasciati indietro.

AGGIORNATO - Per disinstallare un driver Nvidia installato dal sito Nvidia potresti avere una delle diverse opzioni:

  • Alcuni suggeriscono di disinstallare utilizzando lo stesso programma di installazione.
    Esempio: NVIDIA-Linux-x86-1.0-8178.run --uninstall
  • Altri suggeriscono di usare Nvidia Installer.
    Esempio: nvidia-installer --uninstall

SUGGERIMENTO: prova a digitare --help alla fine dell'eseguibile binario di Nvidia per vedere se mostra qualche aiuto. Pagine come https://help.ubuntu.com/community/NvidiaManual e http://www.nvnews.net/vbulletin/showthread.php?t=83678 danno un'idea di come disinstallare il driver Nvidia dal sito Nvidia.

Passaggio 2 : riavviare e verificare che NIENTE sia rimasto da nvidia. Eliminare il file xorg.conf poiché ne verrà creato uno nuovo abbastanza presto. Reboot.

Passaggio 3 : installare i driver Nvidia consigliati. sudo apt-get install nvidia-currentoppure sudo apt-get reinstall nvidia-current(Se l'hai già installato. Consiglierei di disinstallare e installarlo di nuovo.)

Passaggio 4 : CREARE il file xorg.conf per il driver consigliato da Nvidia. nvidia-xconfig. Questo creerà il file xorg.con con le opzioni necessarie per la tua scheda video nvidia. Riavvia di nuovo.

Fino a questo punto avrei bisogno di feedback in caso di problemi. Per una soluzione più generale, non esitate a leggere questa guida: come installo i driver Nvidia?


1
Mi scuso, ma non so esattamente come eseguire il passaggio 1. Non riesco a trovare lo script di disinstallazione di cui parli.
Sixthlaw,

1
Nessun problema Sixthlaw. Fammi trovare. Dammi un paio di minuti
Luis Alvarado,

1
Aggiornato per includere un piccolo aiuto su come rimuoverlo. Per favore fatemi sapere se aiuta e quale aiuto ha fatto il trucco.
Luis Alvarado,

1
Questa non è una soluzione, se voglio installare un determinato driver, la soluzione non è quella di installare qualcos'altro. È come risolvere il problema Java dicendo di non usare Java, usa Python. Ho lo stesso problema (mancata corrispondenza della versione del modulo del kernel) ma ho sicuramente bisogno di questo devdriver NVIDIA CUDA.
skrat,

1
Non sto dicendo di installare qualcos'altro. Sto dicendo che il più compatibile in questo caso è quello fornito con Ubuntu. Questo è stato dimostrato più volte che dà meno problemi, è più amichevole quando si esegue un aggiornamento / aggiornamento e si dispone di più documentazione e feedback della comunità per questo. Se dovessi parlare di Java, consiglierei openjdk per molte ragioni, per Python quello che viene predefinito perché è già stato testato e così via e così via. Ottieni il mio punto qui suppongo.
Luis Alvarado,

7

Ho anche avuto un problema con i driver nvidia e ho fatto tutto ciò che potevo trovare (anche nelle altre risposte):

  • rimuovere i driver precedentemente installati e reinstallarli
  • l'avvio failsafeXe l'attivazione del driver
  • utilizzando il driver precedente ( 173)
  • Ho aggiunto UNITY_FORCE_START=1a /etc/environmentcome detto qui (come sono nella lista nera GeForce 7300/7400, ma ho un GeForce Go 7100)

Ma tutto ha continuato a fallire. Quindi, ultima risorsa (avrei dovuto pensarci prima), ho studiato i file X-log. All'interno del mio /var/log/Xorg.0.logho scoperto che nvidia ha avuto problemi nell'allocare la memoria:

[    14.055] (EE) NVIDIA(0): Failed to allocate primary buffer: out of memory.
[    14.055] (EE) NVIDIA(0):  *** Aborting ***

Apparentemente si tratta di un bug noto e ho dovuto fare quanto segue per risolvere il problema:

  • modificare /etc/default/grub
  • trova l'opzione GRUB_CMDLINE_LINUXe aggiungi nopat, quindi per me questo sembrava

    GRUB_CMDLINE_LINUX="nopat"

  • correre sudo update-grub

E poi, finalmente, tutto ha funzionato bene per me :) Spero che questo aiuti.


Questo ha funzionato perfettamente, grazie mille! (Nvidia GeForce 9400 su Natty 64 bit con driver "attuali")
dandelionmood

2

Si noti che il kernel in basso punta a una versione precedente di Ubuntu. Il nuovo kernel con Ubuntu 11.10 è 3.0.0.12. Ho avuto lo stesso problema con l'essere stato messo in modalità comando e Xserver fallito mentre non riuscivo a trovare il driver nvidia_173. Ho quindi capito che l'aggiornamento non ha aggiornato il mio MBR per puntare a 3.0.0.12. Ho usato EasyBCD per aggiornare il file, riavviato e tutto andava bene. Questi tipi di guasti ai driver possono verificarsi quando sono a livelli misti, ovviamente. Il mio consiglio, dopo l'aggiornamento, assicurati di eseguire il nuovo kernel, initrd, vmlinuz, ... che cosa hai.

DKMS make.log for nvidia-current-270.41.06 for kernel 2.6.38-8-generic (x86_64)
Sat May 14 20:48:39 EDT 2011

The C compiler 'cc' does not appear to be able to
create executables.  Please make sure you have 
your Linux distribution's gcc and libc development
packages installed.

*** Failed CC sanity check. Bailing out! ***

make: *** [select_makefile] Error 1

Ho capito che il cc (alias per gcc) usato nel mio / usr / bin non era la stessa versione del gcc trovato nella stessa directory, indipendentemente da tutti i pacchetti di sviluppo che erano già installati sul mio computer. Ho dovuto creare un collegamento simbolico per puntare al file gcc.

sudo mv /usr/bin/cc /usr/bin/cc.old
sudo ln -s /usr/bin/gcc /usr/bin/cc

Dopodiché, reinstallare il pacchetto nvidia-current ha funzionato per me.

Saluti


2

Anche il mio aggiornamento 11.04 si è avviato solo su una finestra del terminale. Poi ho trovato questo sito. Ho iniziato a fare ciò che Roland Taylor mi ha raccomandato, prima di tutto

sudo apt-get install linux-headers-generic

Quindi ho provato a fare:

sudo dkms remove nvidia 

Ma non è riuscito lamentava che il comando era non era completa, che avevo bisogno -med -ve la versione

Stavo per riprovare ma ho notato che lo schermo aveva le informazioni di registro dal primo comando notando che era stato installato nvidia-currentquando ho installato le intestazioni generiche, quindi ho pensato, mi chiedo cosa farà se riavvio ora? Così ho fatto e il desktop X è arrivato bene. Quindi solo un comando ha risolto il mio problema di installazione.


0

Questo ha funzionato per me.

1) Passa al terminale F1, premendo Ctrl + Alt + F1.

2) Eseguire i seguenti comandi.

sudo /etc/gdm stop
sudo apt-get install linux-headers-$(uname -r) linux-image-$(uname -r)
wget -O /tmp/nvidia.run http://us.download.nvidia.com/XFree86/Linux-x86/280.13/NVIDIA-Linux-x86-280.13.run
# Make sure to allow the script to uninstall all existing drivers.
sudo sh /tmp/nvidia.run
sudo /etc/gdm start

0

Per chiunque abbia anche questo problema, assicurarsi che Optimus (la tecnologia di commutazione della scheda grafica di Nvidia) sia disabilitata nel BIOS.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.