SDB:Configurazione schede video

Configurare openSUSE X Window Graphics edit


Sintomi

Al momento dell'installazione di openSUSE, il sistema automatico di configurazione di X potrebbe non essere riuscito a configurare correttamente le impostazioni grafiche. Di solito questo evento si rispecchia in uno schermo nero dopo il riavvio, o in una risoluzione sbagliata visualizzata dal monitor.

Questa guida si applica a tutte le versioni di openSUSE correntemente supportate, openSUSE 12.3 inclusa.


Cause

Di solito la causa di questo malfunzionamento è che la scheda video non è configurata correttamente, e la ragione di ciò può variare a seconda della versione di openSUSE.


Soluzioni

Queste sezione mette a disposizione del lettore alcune linee guida da seguire per risolvere i problemi video. Prima di procedere alla risoluzione del suo problema, è fortemente consigliato che il lettore risalga alla versione di openSUSE che sta usando e acquisisca una certa dimestichezza con alcuni aspetti di conoscenza pratica relativi a schede grafiche e ad alcuni aspetti del sistema video.

Determinare la propria versione di openSUSE

È molto importante sapere quale versione di openSUSE si sta usando. Farlo è assai semplice. Puoi leggere la versione aprendo le Note di rilascio dal centro di controllo YaST, oppure semplicemente aprire un terminale e lanciare il comando:

cat /etc/SuSE-release

Hai bisogno di sapere quale versione di openSUSE stai usando per scegliere la soluzione migliore per il tuo problema.

Determinare la versione della propria scheda video

È inoltre importante determinare quale scheda video, o chip grafico, siano montati nel proprio computer e quale driver grafico sia in uso per quel tipo di hardware. Cerca di avere accesso ad un terminale o console, o aprendo una shell bash (gnome terminal, konsole, xter o altro) se hai a disposizione una qualche interfaccia grafica, oppure, se ti viene mostrato soltanto uno schermo totalmente nero, prova a premere la combinazione di tasti <CTRL><ALT><F2> grazie alla quale dovresti accedere ad una schermata soltanto in modalità testo con una riga di invito (o prompt) per eseguire il login (in tal caso esegui l'accesso come utente normale). Dopo di ché, in entrambi i casi (shell della bash o schermo intero), digita il seguente comando, sempre con i permessi di un utente normale:

/sbin/lspci -nnk | grep VGA -A2

tenendo presente, mentre scrivi il comando da tastiera, che GNU/Linux distingue tra lettere minuscole e lettere maiuscole. Con quel comando dovresti venire a conoscenza del modello di acceleratore grafico installato sul tuo computer. Per esempio su un PC con i driver video proprietari di nVidia, si potrebbe ottenere un risultato simile a questo:

 02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT200 [GeForce GTX 260] [10de:05e2] (rev a1)
         Subsystem: ASUSTeK Computer Inc. Device [1043:82cf]
         Kernel driver in use: nvidia

Oppure su un PC con i driver video proprietari AMD/ATI, si potrebbe ottenere un risultato simile a questo:

 01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI RV620 [Mobility Radeon HD 3400 Series [1002:95c4]
       Subsystem: ASUSTeK Computer Inc. Device [1043:19d3]
       Kernel driver in use: radeon

Dato che probabilmente avrai problemi con la scheda video, il risultato del comando lanciato sul tuo PC potrebbe mostrare soltanto le prime due righe, senza la riga per il driver del kernel. Nel caso in cui il tuo computer disponga di un sistema grafico ibrido, potrebbe anche essere riportata la presenza di due schede grafiche distinte.

Una volta che sono state determinate

  • la tua versione di openSUSE,
  • la tua scheda video e
  • i driver grafici in uso [sia che funzionino oppure no],

puoi procedere al prossimo passo di questa guida.

Gli utenti Linux sufficientemente esperti dovrebbero aver notato che, nella maggioranza dai casi, il file /etc/X11/xorg.conf non è più necessario con tutte le versioni di openSUSE successive alla 11.1.

Cose da provare per risolvere il problema

Versione: 11.3 e successiveDa openSUSE 11.3, l'ormai obsoleta utilità di configurazione guidata per i driver grafici, vale a dire sax2, non viene più inclusa nella distribuzione. Di conseguenza questa sezione fornisce vari suggerimenti su come ripristinare la funzionalità video, in caso di problemi, da openSUSE-11.3 in avanti. Si tenga inoltre presente che le versioni di openSUSE più vecchie della 12.2 non sono più supportate ufficialmente.

Prima cosa da provare (nomodeset)

Seconda cosa da provare (avviare con failsafe/configurazione-sicura)

  • La seconda cosa da provare (se le istruzioni soprastanti non hanno funzionato) è avviare il sistema da GRUB con una configurazione più sicura. Le possibili vie da percorrere sono:
    F5 - selezione di "Safe Settings"
    1. nel caso l'installazione non sia andata a buon fine, procedendo con l'opzione safesettings (da selezionare con F5, voce "kernel default" del menu di grub);
    2. se da un sistema installato con il vecchio grub legacy, prova l'opzione di avvio failsafe. Questo, si spera, dovrebbe permetterti di avviare il sistema e avere un desktop funzionante.
    3. se da un sistema installato con il nuovo grub2, scegli nel menu di avvio di grub2 la voce Advanced options for openSUSE 12.3 (o comunque per la tua versione di openSUSE).

Se questa procedura funziona, potresti volerti fermare qui. In realtà, per gli utenti che si ritrovano con il sistema installato, sia che questa procedura abbia funzionato o meno, sarebbe utile continuare a leggere più sotto per ottimizzare al meglio il loro sistema.

Terza cosa da provare (usare il file conf di installazione)

  • Avvio nel run-level 3
    La terza cosa da provare è avviare il sistema con il livello di avvio (run level) 3 (ovvero in modalità testuale a schermo intero) e provare ad usare il file di configurazione grafica xorg.conf.install, usato durante l'installazione del sistema, come misura temporanea.
    1. Usando grub legacy: puoi fare ciò digitando 3 alla schermata iniziale di avvio di openSUSE (quella con il menu di scelta). Ti comparirà proprio nella barra delle opzioni in basso.
    2. Usando grub2: segui le istruzioni contenute in questo articolo di blog per avviare con il run level 3.
    3. Per entrambi i casi: dopo aver seguito la voce (1) o la voce (2) qui sopra, il tuo PC si dovrebbe avviare in modalità testuale a schermo intero con una richiesta di login. A quel punto ti troverai nel livello di avvio 3. Effettua il login come utente normale e poi digita:
      su -c 'cp /etc/X11/xorg.conf.install /etc/X11/xorg.conf'

      e inserisci la password dell'utente root (utente amministratore) quando richiesto.

      I nuovi utenti notino che Linux è case-sensitive, cioè tratta in maniera diversa i caratteri maiuscoli e quelli minuscoli ("X11" è diverso da "x11"): siate quindi accurati durante la scrittura.

    Di solito il file di configurazione dell'installazione usa il driver grafico fbdev. In alcuni casi il file xorg.conf.install non sarà presente e, in tal caso, ovviamente, questa procedura non funzionerà. Dopo aver completato quanto detto, per verificarne l'efficacia, puoi riavviare il sistema digitando:

    su -c 'shutdown -r now'
    Se tutto va bene, questo dovrebbe far avviare il sistema grafico Xorg usando il driver fbdev, e potresti volerti fermare qui. Comunque, questo driver ha una resa grafica scadente e potresti aver bisogno di continuare con il prossimo passo, anche se questa procedura è andata a buon fine.

Quarta cosa da provare (modificare la directory /etc/X11/xorg.conf.d/ )

  • La quarta cosa da provare è modificare il file di configurazione di X window relativo al comparto grafico, per forzare il sistema ad avviarsi con uno specifico driver grafico. Se non hai letto la guida di teoria applicata segnalata sopra, per favore FALLO ORA, altrimenti questa procedura sarà difficile da comprendere.

Di nuovo, avvia il sistema con il livello di avvio 3 seguendo il passo 3 di sopra. Controlla la presenza del file /etc/X11/xorg.conf, se esiste dovrai rinominarlo in maniera tale che non interferisca con la configurazione che andrai a creare. Per fare ciò si può lanciare il comando seguente (con i dovuti cambiamenti all'estensione o al nome del file):

su -c 'mv /etc/X11/xorg.conf /etc/X11/xorg.conf.myoldbackup'
Per i nuovi utenti: come sempre fate attenzione che Linux è case-sensitive, quindi siate accurati quando scrivete lettere maiuscole o minuscole, dato che verranno trattate in maniera differente. "X11" è diverso da "x11".

A questo punto modifica il file /etc/X11/xorg.conf.d/50-device.conf, aggiungendo una voce per il driver grafico scelto. Avrai bisogno per le modifiche di un editor di testo (come mc-editor (raccomandato - vedere il link per i dettagli riguardanti l'installazione e l'uso) o l'editor vi o nano o ancora joe ... e ce ne sono molti altri) con i permessi di root (utente amministratore).

Per esempio, per fare le modifiche, se è installato mc-editor , digita:

su -c 'mcedit /etc/X11/xorg.conf.d/50-device.conf'
inserisci la password di root quando richiesto e applica le modifiche necessarie, dopodiché esci da mc-editor, prestando particolare cautela dato che si sta usando tale editor/file-manager con i permessi di root.

Suggerimento: Prima di fare quanto detto sopra, per vedere quali driver grafici si possono usare sulla propria openSUSE, c'è una guida in cima all'Elenco di compatibilità hardware (HCL) video di openSUSE

Per esempio, potresti modificare quel file col seguente risultato:

Section "Device"
  Identifier "Default Device"
   
  #Driver "radeon"
  Driver "nv"
 
  ## Required magic for radeon/radeonhd drivers; output name
  ## (here: "DVI-0") can be figured out via 'xrandr -q'
  #Option "monitor-DVI-0" "Default Monitor"
   
EndSection

dove nell'esempio precedente la linea Driver nv è stata aggiunta per cercare di forzare il caricamento del driver grafico open source per schede nvidia "nv". È importante leggere la guida di teoria applicata citata sopra per capire quali driver grafici si hanno a disposizione.

Icon-warning.png
Attenzione! Gli utenti di schede grafiche Nvidia che avessero riscontrato che il driver "nouveau" non ha funzionato nel loro caso, dovranno prestare attenzione alle note di rilascio di openSUSE-12.1 e opportunamente mettere in blacklist il driver "nouveau" nel file /etc/modprobe.d/50-blacklist.conf. Ciò può essere fatto scrivendo, con i permessi di root:
        echo "blacklist nouveau" >> /etc/modprobe.d/50-blacklist.conf
Potrebbe anche essere necessario lanciare "yast" (puoi eseguire yast in modalità testo con i permessi di root, se X window non sia disponibile) e andare a yast > Sistema > Editor per file /etc/sysconfig > System > Kernel > NO_KMS_IN_INITRD e modificarlo in "yes". Questo può richiedere da uno a due minuti per essere salvato, dopo che la modifica è stata applicata. (vedi sotto le immagini di esempio).

Per gli utenti che stiano cercando di mettere in blacklist il driver "nouveau" sono disponibili esempi su come specificare NO_KMS_IN_INITRD da yast in modalità testo nella sequenza illustrata qui sotto (nota che devi anche inserire in blacklist il driver nouveau come descritto sopra). In breve per modificare /etc/sysconfig avvia yast, da una sessione in modalità testo, scrivendo:

su -c yast

Usa i caratteri di Barra spaziatrice, Tab, Invio e le frecce, per navigare in yast in modalità testo e poi segui le schermate di esempio.

Entra in Editor file /etc/sysconfig
Trova system in Editor sysconfig
Imposta NO_KMS_IN_INITRD a YES

Se fossero necessarie delle modifiche più complesse (ma si spera di no), allora un altro esempio di modifica nella directory /etc/X11/xorg.conf.d/ (ma questa volta per configurare un monitor invece di specificare un driver grafico) è un esempio dal forum di openSUSE di personalizzazione del file 50-monitor.conf. Notare che potrebbe essere necessario fare click due volte su quel link per connettersi alla pagina opportuna.

E infine dopo aver fatto qualsivoglia di tali modifiche ai file e cambiamenti, riavvia di nuovo come utente normale, come prima con il comando

su -c 'shutdown -r now'

e sperabilmente il tuo PC si avvierà col desktop grafico X window e se questo funziona, "potresti" volerti fermare qui.

Quinta cosa da provare (creazione del file xorg.conf tramite Xorg -configure)

  • La quinta cosa da provare è tentare di creare la tua versione personale del file di configurazione xorg.conf "classic/legacy" per il sistema grafico. Questo è più noto precisamente come il file /etc/X11/xorg.conf. Questo passaggio infatti fa in parte ciò che il vecchio wizard di configurazione sax2 svolgeva per openSUSE (ma con meno funzionalità di quello). Alcuni utenti potrebbero anche avere una copia del loro vecchio xorg.conf, da una precedente installazione di Linux, che potrebbero provare (benché potrebbe non funzionare con openSUSE-11.3). Di nuovo, se non hai letto la guida pratica e teorica menzionata prima, FALLO ora, o questo passaggio sarà difficile da capire.

Per questo passaggio, avvia il sistema con il livello di avvio 3, come al terzo passo di prima. Ma questa volta crea lo scheletro del file xorg.conf, scrivendo:

su -c 'Xorg -configure'

Ciò genererà il file /root/xorg.conf.new.

Nuovi utenti, notate che Linux è case-sensitive, siate quindi accurati quando scrivete i caratteri maiuscoli o minuscoli, dato che sono trattati diversamente. Xorg nel comando NON è lo stesso xorg del nome del file xorg.conf.new che viene dopo.

Ora è necessario che sposti quel file nella posizione opportuna per essere usato da X all'avvio, e che lo rinomini. Puoi farlo scrivendo:

su -c 'mv /root/xorg.conf.new /etc/X11/xorg.conf'

Con un po' di fortuna sarai in grado di riavviare (come descritto sopra) scrivendo su -c 'shutdown -r now' e, probabilmente, di lanciare un desktop di X window. Tuttavia è anche possibile che sia necessario cambiare il driver nel file /etc/X11/xorg.conf in questione, e per farlo avrai bisogno di aprirlo con un editor di testi (come l'mc-editor(raccomandato - vedi il precedente quarto passo per un esempio di come usarlo) o l'editor vi o l'editor nano o l'editor joe ... e ce ne sono molti altri) con i permessi di root e sostituisci il tipo di driver. Per esempio, potresti dover modificare "nouveau" in "nv" nella sezione device del file, così che il driver "nv" sia usato al posto del driver "nouveau".

Di nuovo, come da passo n.4 di sopra, per gli utenti di schede grafiche nVidia potrà essere necessario mettere in black list il driver "nouveau" e cambiare NO_KMS_IN_INITRD a "yes" con l'editor di sysconfig (vedi passo n.4 sopra).

E infine, fatte le modifiche ai file ed i cambiamenti, riavvia di nuovo come utente normale, come prima con il comando

su -c 'shutdown -r now'

e sperabilmente il tuo PC si avvierà col desktop grafico X window e se questo funziona, "potresti" volerti fermare qui.

Sesta cosa da provare (driver grafici proprietari)

  • La sesta cosa da provare è l'installazione di un driver grafico proprietario (tipicamente NVIDIA o AMD):

Ancora, dal passo numero 4 in poi, gli utenti nVidia dovrebbero mettere in blacklist il driver nouveau nel file /etc/modprobe.d/50-blacklist.conf, per esempio, con i permessi di root basta lanciare il comando:

        echo "blacklist nouveau" >> /etc/modprobe.d/50-blacklist.conf

e cambiare anche NO_KMS_IN_INITRD su yes con l'editor sysconfig (vedere il passo 4 sopra).

Se, invece, il tuo PC ha una scheda video Intel o VIA, allora hai bisogno di consultare nuovamente la guida teorica e pratica sulle schede video per determinare di quali opzioni hai bisogno per i dispositivi VIA e Intel.

Settima cosa da provare (modifiche di udev - solo per esperti)

  • La settima cosa da provare - Prova a modificare Udev come ultima risorsa.
Icon-warning.png
Attenzione! Questa sezione dedicata a UDEV è ancora in sviluppo e non è in uno stato tale da renderla utilizzabile per risolvere questo tipo di problemi. Vista la complessità, qui per un po' di tempo saranno elencate alcune considerazioni e riferimenti (almeno finché la sezione non sarà riscritta in maniera più completa). Inoltre, questa sezione è e sarà scritta solo per utenti Linux esperti e non per utenti nuovi o "domestici".
/sbin/udevd -V
udevadm test /class/input/eventX
udevadm info -e | grep ID_INPUT (KEYBOARD, MOUSE, KEY, TOUCHPAD, ...)

Collegando nuovamente i dispositivi di input, questi vengono rilevati? Se non possono essere rimossi/connessi, prova:

udevadm trigger -v --subsystem-match=input
LA SEZIONE SOPRASTANTE RIGUARDANTE UDEV NECESSITA DI ALTRO LAVORO ...

Vedi anche

Questo articolo del wiki è stato creato per dare una risposta alla segnalazione bug n. 608237 di openSUSE. Un altro problema sempre correlato a questo articolo è presente nel tracker delle caratteristiche di openSUSE: openFATE #308357: Sostituzione di Sax2 in 11.3.


Riferimenti

Qui sotto sono riportati alcuni riferimenti ad altri wiki che forniscono informazioni utili per la configurazione della propria scheda grafica in openSUSE.

  • Configuring graphics in Dual Head mode for openSUSE-11.2 and earlier, although likely applicable to openSUSE-11.3 (link to this reference wiki location to be updated eventually as part of wiki transistion process)
  • Multiple Screens Using XRandR for openSUSE-11.2 and earlier, although likely applicable to openSUSE-11.3 (link to this reference wiki location to be updated eventually as part of wiki transistion process)
  • Configurare schede grafiche in openSUSE è un wiki più vecchio sullo stesso argomento, ma dal contenuto meno tecnico (per le diverse opzioni/passaggi forniti).
  • Configuring graphic cards through the command line interface is an older wiki for openSUSE-11.2 and earlier (likely applicable in part to 11.3) (link to this reference wiki location to be updated eventually as part of wiki transistion process)
  • [[SDB:Configurare scheda grafica e impostazioni del monitor Impostazioni del monitor], è una raccolta di note (con alcuni dettagli) sulle impostazioni personali da applicare al monitor.
  • 3D Acceleration is a simple guide on how to enable 3D acceleration on Gnome and KDE4 (link to this reference wiki location to be updated eventually as part of wiki transistion process)
  • Graphic card troubleshooting was written with openSUSE-11.1 and 11.2 in mind and has not been updated to reflect changes as of openSUSE-11.3 (especially wrt the nouveau driver requiring blacklisting). Hence care must be applied when following that guide (link to this reference wiki location to be updated eventually as part of wiki transistion process)
  • Elenco di Compatibilità Hardware openSUSE (HCL) per schede Video fornisce un link ai dati forniti dagli utenti sulla compatibilità delle loro schede video con openSUSE Linux.