Wie speichere ich meine neue Auflösungseinstellung mit xrandr?

13

Ich habe irgendwo in einem Forum die Lösung für ein Problem gefunden, bei dem die einzigen verfügbaren Auflösungen 800x600 und 1024x768 waren. Ich habe es geschafft, 1440x900 zu bekommen, was sehr gut funktioniert. Jedes Mal, wenn ich neu starte, verschwindet es. Ich bin gezwungen, die Befehle erneut einzugeben. Wie kann ich das speichern? Ich gehe davon aus, dass es ein einfacher Befehl ist, aber ich bin der größte Noob, wenn es um Ubuntu geht. Die Befehle sind:

  • xrandr --newmode "1440x900_60.00" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
  • xrandr --addmode VGA1 1440x900_60.00
  • xrandr --output VGA1 --mode 1440x900_60.00
Jacob J.
quelle

Antworten:

20

Sie haben mehrere Möglichkeiten, aber vielleicht ist es am einfachsten, Ihren Befehl genau so zu platzieren, wie Sie ihn oben in Ihrer $HOME/.xprofileDatei angegeben haben. Von hier aus wird es jedes Mal ausgeführt, wenn Sie sich anmelden.

Standardmäßig ist diese Datei in Ubuntu nicht vorhanden und muss möglicherweise manuell erstellt und dann ausführbar gemacht werden. Die folgenden Befehle erledigen dies:

touch $HOME/.xprofile
chmod +x $HOME/.xprofile

Beachten Sie die 2 kleinen Mängel dieser Methode:

  1. .xprofile Der Zugriff erfolgt relativ spät im Startprozess, sodass möglicherweise eine Änderung der Bildschirmauflösung zu sehen ist
  2. Dies ist eine Einstellung pro Benutzer und muss möglicherweise für andere Benutzer auf Ihrem System wiederholt werden

Wenn Sie tiefer in die Materie eintauchen möchten, stehen Ihnen unter dem folgenden Referenzlink einige weitere Optionen zur Verfügung. Dies ist jedoch die sicherste und einfachste.

Verweise:

andrew.46
quelle
1
Du hast mir so viel Zeit gespart! Danke, es funktioniert einwandfrei!
Jacob J.
1
+1 Das funktioniert gut, wenn ich mich anmelde. Weiß jemand, wie man das Problem behebt, damit ich den Anmeldebildschirm sehen kann?
James Bradbury
12

Die akzeptierte Antwort wendet die gleiche Konfiguration an, unabhängig vom Status der verbundenen Anzeigen. Das hat bei mir nicht funktioniert, da ich bei der Arbeit und zu Hause mit verschiedenen Displays verbunden bin. autorandr ermöglicht automatische xrandr-Konfigurationen für verschiedene Anzeigeeinstellungen. Um autorandr zu verwenden,

  1. Installieren mit sudo apt install autorandr(getestet auf Ubuntu 18.04)
  2. Konfigurieren Sie Ihren Monitor nach Ihren Wünschen mit xrandr
  3. Speichern Sie Ihre Konfiguration mit autorandr --save work(ich speichere meine Arbeitskonfiguration, wählen Sie einen Namen, der zu Ihnen passt)
  4. Setzen Sie die Konfiguration mit fort autorandr --change work, um config zu wählen, oder autorandr --changeum Ihre Konfiguration von den angeschlossenen Monitoren abzuleiten.

XDG autostart .desktop wird ebenfalls bereitgestellt und /etc/xdg/autostart/autorandr.desktopstandardmäßig installiert .

Teodor
quelle
1

Die folgende einfache Konfiguration funktioniert für mich. Wenn der Monitor angeschlossen ist, verwendet er automatisch die richtige Auflösung, ohne dass ein manueller Eingriff erforderlich ist.

sudo nano /etc/X11/xorg.conf

Beachten Sie, dass diese Datei möglicherweise bereits vorhanden ist oder nicht. Fügen Sie Folgendes hinzu:

Section "Monitor"
    Identifier "VGA1"
    Modeline   "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync
EndSection    

Starten Sie dann neu. Wenn alles gut geht, sollten die Dinge einfach funktionieren.

Hintergrund

Ich habe einen UX32VD-Laptop und wollte 4K über HDMI haben, obwohl es in den Anzeigeeinstellungen keine 3840x2160-Option gibt.

Meine erste Aufgabe war es, die Modeline zu berechnen. Überspringen Sie diesen Schritt, wenn Sie die Modeline bereits kennen. (Die Modeline unten funktioniert möglicherweise für Sie.) Ich habe umc-0.2.tar.gz heruntergeladen , extrahiert und ausgeführt ./configureund make. Um den 25Hz Reverse Blanking Timing-Modus zu erhalten, lief ich

umc-0.2/src/umc 3840 2160 25 --rbt

welche Ausgänge

    # 3840x2160x24.99 @ 54.625kHz
    Modeline "3840x2160x24.99"  218.500000  3840 3888 3920 4000  2160 2163 2167 2186  +HSync -VSync

Als nächstes wollte ich diese Modeline testen. Als xrandrich ohne Argumente lief, sah ich, dass mein HDMI-Gerät benannt ist HDMI-1. Ich habe diesen Modus getestet, indem ich Befehle analog zu Jacob ausgeführt habe:

xrandr --newmode "3840x2160x24.99"  218.500000  3840 3888 3920 4000  2160 2163 2167 2186  +HSync -VSync
xrandr --addmode HDMI-1 "3840x2160x24.99"
xrandr --output HDMI-1 --mode "3840x2160x24.99" --preferred

Schließlich, um die Auflösung dauerhaft zu machen, habe ich /etc/X11/xorg.confmit den folgenden Inhalten erstellt:

Section "Monitor"
    Identifier "HDMI-1"
    Modeline   "3840x2160x24.99"  218.500000  3840 3888 3920 4000  2160 2163 2167 2186  +HSync -VSync
EndSection  

Starten Sie den Computer zum Testen neu.

Ich sollte beachten, dass ich nvidia-driver-390auf Ubuntu 18.04 laufe. Hoffentlich lässt sich meine Technik gut auf andere Konfigurationen übertragen. (Bitte lassen Sie es mich in den Kommentaren wissen.)

Ben Mares
quelle