Aktualisieren der Anzeigeeinstellungen beim Trennen des externen Monitors nicht

8

Wenn ich meinen Monitor von meinem Laptop trenne, scheint Ubuntu immer noch zu glauben, dass er angeschlossen ist und die Anzeige nicht aktualisiert. Dieses Problem ist Ubuntu-spezifisch (tritt nicht unter Windows auf) und mein Monitor funktionierte einwandfrei mit einem anderen Laptop (Ubuntu 13.04, genau dieselben Treiber).

Der Quickfix:

  • öffnen system settings
  • klicken Displays

Nützliche Spezifikationen:

  • Grafiktreiber : nvidia-313 (Problem tritt auch bei den anderen proprietären Treibern auf)
  • Grafikkarte : Nvidia Quadro K1000M
  • Monitor : Benq ET-0019-N
  • Kabel : VGA D-Sub DE15
  • Betriebssystem : Ubuntu 13.04

Ich möchte, dass Ubuntu die Anzeigeeinstellungen automatisch aktualisiert, wenn das Monitorkabel abgezogen wird. Wie würde ich das machen?

Joren
quelle
Welcher Monitor ist das? Einige ältere Monitore senden kein Signal, sodass der Computer nicht weiß, ob es vorhanden ist, aber ich glaube nicht, dass noch viele in Betrieb sind. Auch welches genaue Grafikkartenmodell haben Sie und verwenden Sie den proprietären Treiber oder den kostenlosen Treiber?
Gilles 'SO - hör auf böse zu sein'
Ich habe meine Frage bearbeitet, um Ihre zu beantworten.
Joren
1
Die Anzeigeeinstellungen werden aktualisiert, wenn Sie den Computer ohne Kabel starten und dann anschließen? Wenn nicht, werden sie aktualisiert, wenn Sie den Befehl xrandrmanuell ausgeben ?
Jorge Suárez de Lis
Können Sie nicht einen anderen Monitor und ein anderes Kabel ausprobieren? Ich weiß, dass es unter Windows funktioniert. Vielleicht verwendet Windows eine andere Methode zur automatischen Erkennung.
Jorge Suárez de Lis
Ich habe keinen anderen Monitor :(
Joren

Antworten:

2

Es gibt einen alten Fehler im Launchpad - Fehler # 306735 - der als ungültig markiert wurde. Die Erklärung ist, dass es sich um ein bekanntes Problem handelt, das jedoch ziemlich komplex ist (weitere Erläuterungen hier ).

Soweit ich weiß, gibt es also keine automatische Methode für das, was Sie im wahrsten Sinne des Wortes gefragt haben. Sie können jedoch ein Skript von Stefan Tomanek verwenden autorandr(Sie müssen es disperzuerst installieren - sudo apt-get install dispervom Terminal ausführen ) . Mit diesem Skript ( ) können Sie eine Tastenkombination für den Befehl hinzufügen. Wenn Sie einen externen Monitor verbinden oder trennen, müssen Sie nur diese Tastenkombination drücken. All dies wird in dieser Antwort sehr schön erklärt (ich habe gerade in Ubuntu 13.04 getestet und alles läuft gut).autorandrautorandr --change

Nachdem Sie das Skript im Terminal getestet haben, muss der folgende Beitrag angezeigt werden, wenn Sie eine benutzerdefinierte Tastenkombination für das Skript hinzufügen möchten:

Radu Rădeanu
quelle
Ich hatte Disper bereits installiert, aber Autorand wurde nicht gefunden
Joren
@Joren Was meinst du mit was'n found gefunden? Es ist ein Skript unter dem angegebenen Link in der Antwort. Benötigen Sie Hilfe bei der Verwendung oder Ausführung?
Radu Rădeanu
Oh egal, ich dachte, es kam automatisch mit Disper
Joren
@ Joren Nein, das tut es nicht (ich dachte, meine Antwort wäre klar). Sie müssen manuell ein Dateiskript mit dem Namen autorandroder erstellen autodisper, den gesamten Text von hier genau so einfügen, wie er ist, und ihn in Ihrem ~/binVerzeichnis speichern . Vergessen Sie nicht, es ausführbar zu machen mit: chmod +x ~/bin/autorandr(oder chmod +x ~/bin/autodisper) und dann einfach autorandr --help(oder autodisper --help) auszuführen, um weitere Hilfe zu erhalten.
Radu Rădeanu
1
Ich hatte immer noch dieses Problem mit 16.04! = / Das dispergibt es immer noch, aber ich musste so etwas ausführen disper -eund alles funktionierte wieder, sogar die Display-Anwendung.
Nigini
1

Wenn Sie eine Variante des proprietären Treibers von nvidia verwenden, xrandrscheint das Problem zu beheben , wie in Jorges Antwort erwähnt .

ccpizza
quelle
1

Aus Anhang B im NVIDIA-Treiber README :

Option "UseHotplugEvents" "boolean"

Wenn diese Option aktiviert ist, generiert der NVIDIA X-Treiber Ereignisse mit geänderter RandR-Anzeige, wenn Anzeigen an eine NVIDIA-GPU angeschlossen oder von dieser getrennt werden. Einige Desktop-Umgebungen warten auf diese Ereignisse und konfigurieren den Desktop dynamisch neu, wenn Anzeigen hinzugefügt oder entfernt werden.

Durch Deaktivieren dieser Option wird die Generierung dieser RandR-Ereignisse für Nicht-DisplayPort-Anzeigen unterdrückt, dh solche, die über VGA, DVI oder HDMI verbunden sind. Hotplug-Ereignisse können für über DisplayPort verbundene Anzeigen nicht unterdrückt werden.

Beachten Sie, dass das Überprüfen der Anzeigekonfiguration (z. B. mit xrandr- oder nvidia-Einstellungen) dazu führen kann, dass Ereignisse mit geänderter RandR-Anzeige generiert werden, unabhängig davon, ob diese Option aktiviert oder deaktiviert ist. Darüber hinaus sind einige VGA-Ports nicht in der Lage, Hotplugs zu erkennen: An solchen Ports kann das Hinzufügen oder Entfernen von Anzeigen nur durch erneutes Prüfen der Anzeigekonfiguration erkannt werden.

Standard ein. Der Treiber generiert RandR-Ereignisse, wenn Anzeigen hinzugefügt oder entfernt werden.

Angenommen, Sie haben diese Option nicht deaktiviert, beschränkt sich das Problem auf eine der folgenden Alternativen:

  • Das VGA-Kabel oder der VGA-Anschluss auf der Karte weisen einige gebrochene DDC-Pins auf (entweder Pin 12, Pin 15 oder Pin 9). Bitte schließen Sie ein anderes VGA-Kabel an und versuchen Sie es erneut.

  • Ihre Nvidia Quadro K1000M-basierte Grafikkarte verfügt über einen Anschluss, der diese Erkennung NICHT unterstützt, und das Aufrufen xrandroder Äquivalente (wie das Öffnen der Anzeigeeinstellungen) lösen diese Erkennung aus. Wenn dies der Fall ist, wird dies niemals funktionieren - aber die Erkennung sollte auch auf anderen Betriebssystemen nicht funktionieren. Ich habe das allerdings noch nie persönlich gesehen.

  • Oder es gibt einen Fehler im NVIDIA-Treiber, der verhindert, dass diese Erkennung ordnungsgemäß funktioniert. Probieren Sie andere Treiberversionen (z. B. 304) aus und prüfen Sie, ob das Problem weiterhin besteht.

Jorge Suárez de Lis
quelle
Vielen Dank für Ihre Antwort, aber wie ich in meiner Frage angegeben habe: Das Problem tritt nicht auf, wenn ich meinen Computer unter Windows starte. Wir können also die ersten beiden Alternativen ausschließen. Ich habe auch die dritte Alternative ausprobiert und es hat nicht funktioniert.
Joren
OK. Dies ist keine gültige Antwort, aber um Ihnen zu helfen: Fragen Sie im NVIDIA Linux-Forum, während Sie auf eine Antwort warten .
Jorge Suárez de Lis
Vielen Dank für den Vorschlag. ( devtalk.nvidia.com/default/topic/606465/linux/… )
Joren