Non aggiornare le impostazioni dello schermo quando si disconnette il monitor esterno


8

Quando disconnetto il monitor dal mio laptop, Ubuntu sembra ancora pensare che sia collegato e non aggiorni il display. Questo problema è specifico di Ubuntu (non si verifica in Windows) e il mio monitor ha funzionato bene con un altro laptop (Ubuntu 13.04, esattamente gli stessi driver).

La correzione rapida:

  • Aperto system settings
  • clic Displays

Specifiche utili:

  • Driver grafici : nvidia-313 (il problema si verifica anche con gli altri driver proprietari)
  • Scheda grafica : Nvidia Quadro K1000M
  • Monitor : Benq ET-0019-N
  • Cavo : VGA D-sub DE15
  • Sistema operativo : Ubuntu 13.04

Vorrei che Ubuntu aggiornasse automaticamente le impostazioni di visualizzazione ogni volta che il cavo del monitor viene disconnesso. Come potrei farlo?


Che monitor è? Alcuni monitor più vecchi non inviano alcun segnale, quindi il computer non sa se è presente, ma non credo che ce ne siano molti rimasti in servizio. Inoltre quale modello esatto di scheda grafica hai e stai usando il driver proprietario o il driver gratuito?
Gilles 'SO- smetti di essere malvagio' il

Ho modificato la mia domanda per rispondere alla tua.
Joren,

1
Le impostazioni dello schermo vengono aggiornate quando si avvia il computer senza il cavo e quindi lo si collega? In caso contrario, vengono aggiornati quando si emette il comando xrandrmanualmente?
Jorge Suárez de Lis,

Non riesci a provare un altro monitor e cavo? So che funziona su Windows, forse Windows sta usando un altro metodo per il rilevamento automatico.
Jorge Suárez de Lis,

Non ho un altro monitor :(
Joren

Risposte:


2

C'è un vecchio bug su Launchpad - bug # 306735 - che è stato contrassegnato come non valido, la spiegazione è che si tratta di un problema noto ma abbastanza complesso (maggiori spiegazioni qui ).

Quindi, per quanto ne so, non esiste un metodo automatico per ciò che hai chiesto nel vero senso. Ma puoi usare autorandr(devi installare disperprima esecuzione sudo apt-get install disperdal terminale ), uno script di Stefan Tomanek . Usando questo script ( autorandr) puoi aggiungere una scorciatoia da tastiera per il autorandr --changecomando e tutto ciò che devi fare quando ti connetti o disconnetti un monitor esterno è premere quella scorciatoia da tastiera. Tutti questi sono spiegati molto bene in questa risposta (ho appena testato in Ubuntu 13.04 e tutto va bene).

Dopo aver testato lo script nel terminale, è necessario visualizzare il seguente messaggio se si desidera aggiungere una scorciatoia da tastiera personalizzata per lo script:


Avevo già installato disper ma l'installazione automatica non è stata trovata
Joren

@Joren Che cosa intendi con was'n found? È uno script al collegamento indicato nella risposta. Hai bisogno di aiuto su come usarlo o eseguirlo?
Radu Rădeanu,

Oh non importa, ho pensato che arrivasse automagicamente con la disperazione
Joren,

@Joren No, non (pensavo che la mia risposta fosse chiara). Devi creare manualmente uno script di file chiamato autorandro autodisper, inserire tutto il testo da qui esattamente come è e salvarlo nella tua ~/bindirectory. Non dimenticare di renderlo eseguibile con: chmod +x ~/bin/autorandr(o chmod +x ~/bin/autodisper) e quindi esegui autorandr --help(o autodisper --help) per ulteriore aiuto.
Radu Rădeanu,

1
Ho ancora avuto questo problema con 16.04! = / The disperè ancora in giro ma ho dovuto eseguire qualcosa di simile disper -ee tutto è tornato a funzionare, anche l'applicazione Display.
Nigini,

1

Se stai eseguendo un po 'di sapore del driver proprietario di nvidia, allora, come menzionato nella risposta di Jorge, solo l'esecuzione xrandrda sola sembra risolvere il problema.


1

Dall'appendice B nel file README del driver NVIDIA :

Option "UseHotplugEvents" "boolean"

Quando questa opzione è abilitata, il driver NVIDIA X genererà gli eventi modificati del display RandR quando i display sono collegati o scollegati da una GPU NVIDIA. Alcuni ambienti desktop ascolteranno questi eventi e riconfigureranno dinamicamente il desktop quando i display vengono aggiunti o rimossi.

La disabilitazione di questa opzione elimina la generazione di questi eventi RandR per i display non DisplayPort, ovvero quelli collegati tramite VGA, DVI o HDMI. Gli eventi hot plug non possono essere eliminati per i display collegati tramite DisplayPort.

Si noti che sondare la configurazione del display (ad es. Con le impostazioni xrandr o nvidia) può causare la generazione di eventi modificati nella visualizzazione RandR, indipendentemente dal fatto che questa opzione sia abilitata o disabilitata. Inoltre, alcune porte VGA non sono in grado di rilevare hotplug: su tali porte, l'aggiunta o la rimozione di display può essere rilevata solo riesaminando la configurazione dello schermo.

Predefinito: attivo. Il driver genererà eventi RandR quando i display vengono aggiunti o rimossi.

Quindi, supponendo che tu non abbia disabilitato questa opzione, il problema si restringe a una di queste alternative:

  • Il cavo VGA o il connettore VGA sulla scheda presentano alcuni pin DDC rotti (pin 12, pin 15 o pin 9). Collegare un altro cavo VGA e riprovare.

  • La scheda video basata su Nvidia Quadro K1000M ha un connettore che NON supporta questo rilevamento e invocando xrandro equivalenti (come l'apertura delle Impostazioni schermo) attiva questo rilevamento. In tal caso, non funzionerà mai, ma il rilevamento non dovrebbe funzionare su altri sistemi operativi. Non l'ho mai visto di persona, comunque.

  • O forse c'è qualche bug sul driver NVIDIA che impedisce a questo rilevamento di funzionare correttamente. Prova altre versioni di driver (come 304) e verifica se il problema persiste.


Grazie per la risposta, ma come ho affermato nella mia domanda: il problema non si verifica quando avvio il mio computer in Windows. Quindi possiamo escludere le prime due alternative. Ho anche provato la terza alternativa e non ha funzionato.
Joren,

Ok. Questa non è una risposta valida, ma per cercare di aiutarti: mentre aspetti una risposta, chiedi anche sul forum NVIDIA Linux .
Jorge Suárez de Lis,

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.