22.6Dynamische Konfigurationsänderungen mit RandR

Die Resize and Rotate Extension (RandR) erlaubt es, Teile der Konfiguration von X im laufenden Betrieb zu verändern, soweit der Grafiktreiber dies unterstützt. Aktuelle Desktop-Systeme passen sich automatisch an die neuen Rahmenbedingungen – beispielsweise an die geänderte Bildschirmauflösung – an und müssen nicht neu gestartet werden.

Manuelle Änderungen können Sie mit dem Kommando xrandr ausführen. Mehr Komfort bieten die entsprechenden Module der Gnome- bzw. KDE-Systemeinstellungen.

Wenn Sie xrandr ohne Parameter bzw. mit der Option -q ausführen, zeigt es den aktuellen Status von X an. Die folgende Ausgabe ist auf einem System mit zwei Monitoren entstanden. Am Signalausgang DFP1 (Display Port) war ein 4k-Monitor mit einer Auflösung von 3840×2160 Pixel angeschlossen, am Signalausgang DFP5 (HDMI) ein Monitor mit 1920×1200 Pixel. Die Namen der Signalausgänge variieren je nach Grafiktreiber und können z.B. auch VGA-0 oder DVI-I-0 lauten.

user$ xrandr Screen 0: minimum 320 x 200, current 5760 x 2160, maximum 16384 x 16384 DFP1 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 621mm x 341mm 3840x2160 30.0*+ 2560x1600 60.0 2560x1440 60.0 ... DFP5 connected 1920x1200+3840+0 (normal left inverted right x axis y axis) 519mm x 324mm 1920x1200 60.0*+ 1920x1080 60.0 59.9 60.1 60.0 1600x1200 60.0 ...

xrandr kann mit gewöhnlichen Benutzerrechten ausgeführt werden. Alle durchgeführten Änderungen gelten aber nur bis zum nächsten Logout. Das folgende Kommando reduziert die Auflösung auf 1280×1024 Punkte:

user$ xrandr --size 1280x1024

Das nächste Kommando aktiviert die Signalausgänge für DVI und VGA. Die Option --auto bewirkt, dass jeder Monitor in der für ihn optimalen Auflösung und Bildfrequenz betrieben wird.

user$ xrandr --output DVI-I-0 --auto --output VGA-0 --auto user$ xrandr --output VGA-0 --off (schaltet den VGA-Ausgang wieder ab)

Weitere xrandr-Beispiele folgen im nächsten Abschnitt zur Dual-Head-Konfiguration.

Mit xrandr können Sie nur solche Auflösungen aktivieren, die der Treiber der Grafikkarte für den angeschlossenen Monitor vorsieht (siehe das Ergebnis von xrandr). Wenn Sie eine andere Auflösung wünschen, z.B. zur Aufnahme eines Screencasts, müssen Sie diese zuerst mit xrandr --newmode definieren, beispielsweise so:

user$ xrandr --newmode 1280x720 74.18 1280 1390 1430 1650 720 725 730 750 user$ xrandr --addmode HDMI1 1280x720 user$ xrandr --size 1280x720

Beim zweiten xrandr-Kommando ist es entscheidend, dass Sie an die Option --addmode den Namen des aktiven Grafikausgangs übergeben. Falls Sie die Parameter für den gewünschten Modus nicht kennen (die Syntax ist dieselbe wie bei den XMode-Zeilen in xorg.conf), finden Sie im Internet in der Regel ein entsprechendes Beispiel. Suchen Sie z.B. nach modeline 1280x720. Alternativ können Sie die Parameter auch mit dem Kommando gtf errechnen:

root# gtf 1280 720 60 # 1280x720 @ 60.00 Hz (GTF) hsync: 44.76 kHz; pclk: 74.48 MHz Modeline "1280x720_60.00" 74.48 1280 1336 1472 1664 \ 720 721 724 746 -HSync +Vsync

Unter Gnome 3.n verändern Sie die RandR-Konfiguration mit dem Modul Bildschirme der Systemeinstellungen (siehe Abbildung 22.4).

RandR-Einstellungen unter
  Gnome verändern

Abbildung 22.4RandR-Einstellungen unter Gnome verändern

Wenn es mehr als einen Monitor gibt, wird standardmäßig auf beiden dasselbe Bild angezeigt (Bildschirme spiegeln), wobei sich die Bildgröße aus dem jeweils kleineren Wert der horizontalen und vertikalen Auflösung ergibt. Erst wenn Sie bei einem Monitor die Option Primärer Bildschirm oder Zweitbildschirm angeben, können Sie die beiden Monitore getrennt konfigurieren und ihre Position relativ zueinander verändern. Die Einstellungen werden in .config/monitors.xml gespeichert. Sie gelten nur für den aktuellen Benutzer.

Um die Bildschirmeinstellungen auch für den von gdm angezeigten Login-Bildschirm zu verändern, kopieren Sie monitors.xml in das gdm-Verzeichnis:

user$ sudo cp ~/.config/monitors.xml /var/lib/gdm/.config

Aktuelle Fedora-Versionen verwenden Wayland zur Darstellung des Login-Bildschirms. Deswegen bleibt das obige Kommando dort vorerst wirkungslos. Abhilfe: Ändern Sie außerdem die Datei /etc/gdm/custom.conf, und entfernen Sie dort das Kommentarzeichen # vor der Zeile WaylandEnable=false.

Das KDE-Gegenstück zu gnome-display-properties ist das Modul Anzeige und Monitor der Systemeinstellungen. Es bietet im Wesentlichen dieselben Funktionen, speichert seine Einstellungen aber in der Datei .local/share/kscreen/xxx, wobei xxx der ID-Code des jeweiligen Monitors ist.

Ubuntu verwendet eine modifizierte Variante des Gnome-Einstellungsmoduls. Die Syntax und der Speicherort der Konfigurationsdatei sind wie unter Gnome.

Andere Desktopsysteme stellen zum Teil eigene Benutzeroberflächen zur RandR-Konfiguration zur Verfügung oder greifen auf das Programm arandr zurück. Es ist bei vielen Distributionen in den Paketquellen enthalten bzw. kann sonst von der folgenden Webseite heruntergeladen werden:

http://christian.amsuess.com/tools/arandr