Ændring af skærmopløsningen
xrandr
Understøttede kort drivere
- xserver-xorg-video-intel (siden 2.0)
- xserver-xorg-video-nouveau ( Der henvises til "the nouveau Feature Matrix")
- xserver-xorg-video-ati (siden 6.7.192)
Første skridt er bare at skrive xrandr for at se om det er understøttet, hvis xrandr ikke er understøttet så kontroller din xorg version og den anvendte driver.
For at ændre opløsningen på din primære skærm (forudsat at denne undestøtter opløsningen) med xrandr, bruger du følgende kommando (her i eksemplet er valgt opløsningen 1440x900) :
xrandr --output VGA --mode 1440x900
To skærme og xrandr
xorg.conf er forældet hvis du anvender frie drivere. Hvis du har en xorg.conf stanza i mappen /etc/X11/xorg.conf.d, fordi du anvender proprietære drivere til dit grafikort, så bør du sikkerhedskopiere den nu, inden du går videre.
xorg.conf, hvis den er til stede overhovedet, er nu modulært opbygget. For eksempel indeholder hvert modul nu alt vedrørende en enhed ("device"), som for eksempel musen, eller skærmen.
med xrandr kan du konfigurere din primære og sekundære skærm uden at genstarte X (hotplug). xrandr erstatter xinerama og mergedFB. Med xrandr 1.2 aktiveret, virker den gamle måde at konfigurere xorg.conf på muligvis ikke mere (xinerama og mergedFB).
Understøttede drivere
- xserver-xorg-video-intel (since 2.0)
- xserver-xorg-video-nouveau ( Der henvises til "the nouveau Feature Matrix")
- xserver-xorg-video-ati (since 6.7.192)
Forberedelse til permanent konfiguration af Dualhead på en PC
Bemærk: Ideelt set, hvis du anvender 2 skærme på maskinen hele tiden, så bør din xorg.conf ændres permanent til at afspejle dette.
En bærbar/ notebook bør konfigureres dynamisk (i modsætning til en desktop maskine med 2 skærme) og efter en genstart af maskinen skal du starte forfra, medmindre du konfigurerer dual-head med hvad end parametre du anvender i xrandr, og så kopierer dette i et script til ~/.kde/Autostart/.
Lær xrandr at kende
Første skridt er at taste xrandr i en skal for at blive fortrolig med xrandr's output:
xrandr Screen 0: minimum 320 x 200, current 2048 x 768, maximum 2048 x 768 VGA-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 304mm x 228mm 1024x768 60.0*+ 75.1 70.1 60.0* 59.9 832x624 74.6 800x600 72.2 75.0 60.3 56.2 640x480 75.0 72.8 66.7 60.0 720x400 70.1
Her kan du kun se vga for maskinen (se Appendix A for forklaringer på navne i output fra xrandr). Du kan se opløsningerne der er understøttet af denne skærm samt (vigtigt for dual-head) du kan se den maksimale skærmstørrelse (her er denne 2048x768).
Forbind nu din sekundære skærm og kør xrandr igen:
$ xrandr Screen 0: minimum 320 x 200, current 2048 x 768, maximum 2048 x 768 VGA-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 304mm x 228mm 1024x768 60.0*+ 75.1 70.1 60.0* 59.9 832x624 74.6 800x600 72.2 75.0 60.3 56.2 640x480 75.0 72.8 66.7 60.0 720x400 70.1 DVI-0 connected 1024x768+1024+0 (normal left inverted right x axis y axis) 310mm x 230mm 1024x768_85.00 85.0*+ 1024x768 85.0 + 84.9 74.9 75.1 70.1 60.0 43.5 832x624 74.6 800x600 84.9 72.2 75.0 60.3 56.2 640x480 84.6 75.0 72.8 66.7 60.0 720x400 87.8 70.1 S-video disconnected (normal left inverted right x axis y axis)
Her ser du at en DVI skærm tilige er forbundet, og at denne understøtter opløsninger fra 720x400 helt op til 1024x768 ved de angivne opdateringsfrekvenser.
Konfigurations eksempler
Basal syntax
xrandr --output <output> --rate <rate> --mode <mode> --left-of|--right-of|--above|--below|--same-as <output>
Hvor:
- <output> er output navn (se Appendix A)
- <rate> er opdateringsfrekvensen angivet af xrandr output (valgfri)
- <mode> er opløsningen angivet af xrandr output (valgfri)
Ændre opløsningen på den primære skærm
xrandr --output VGA --mode 1024x768
Clone
Eftersom mange eksterne skærme/ video projektorer ikke kører opløsning i 1280x800 men med for eksempel 1024x768, vælg dette som et eksempel:
xrandr --output VGA --mode 1024x768 --output LVDS --mode 1024x768
For at slukke den sekundære skærm og komme tilbage til normal opløsning på den primære, gør da følgende:
xrandr --output VGA --off --output LVDS --mode 1280x800
Multiple display desktop
Eftersom intel GMA <=945GM/GMS mister sin 3D understøttelse ved virtuelle skærmopløsninger over >2048x2048, kan du altså ikke sætte to skærme ved siden af hinanden i høj opløsning. Men begge skærme i for eksempel opløsningen 1024x768 virker fint:
xrandr --output LVDS --mode 1024x768 --output VGA --mode 1024x768 --left-of LVDS
For at deaktivere multi screen skal du bare deaktivere den sekundære skærm og ændre skærmopløsningen på den primære skærm tilbage (om nødvendigt):
xrandr --output VGA --off (--output LVDS --mode 1280x800)
En anden mulighed er at sætte den sekundære skærm over/ under den primary:
xrandr --output LVDS --mode 1280x800 --output VGA --mode 1280x1024 --above LVDS
Resultatet er en virtuel skærm opløsning på 1280x1824 som er under 2048x2048. En anden mulig løsning ville være at rotere skærmen:
xrandr --verbose --output LVDS --mode 1280x800 --output VGA --mode 1024x768 --rotate left --left-of LVDS
Bemærk: Dette virker naturligvis kun hvis du ligeledes kan rotere din fysiske skærm.
Et eksempel på en permanent konfigureret PC med to skærme med xrandr og en stump kode skrevet ind i /etc/X11/xorg.conf.d/30-screen.conf:
#30-screen.conf Section "Monitor" Identifier "DVI-0" Option "Primary" "true" EndSection Section "Monitor" Identifier "DVI-1" Option "RightOf" "DVI-0" EndSection Section "Device" Identifier "ATI Radeon HD 2600" Option "Monitor-DVI-0" "DVI-0" Option "Monitor-DVI-1" "DVI-1" EndSection
Bemærkninger
- Virtual screen er begrænset til 2048x2048 for intel, selv om det er muligt at indstille en højere virtuel opløsning, vil du miste DRI understøttelse hvis du gør det. Det er tilsyneladende ikke de samme begrænsninger på nvidia/ati.
- TV Out virker ikke med ATI
- Hvis DDC probing ikke virker korrekt med ATI (Xorg.0.log: (WW) RADEON(0): DDC2/I2C bliver ikke korrekt initialiseret), kan du muligvis ikke overide værdierne med modelines.
- Når du forsøger at konfigurere en stor opløsning (dual-head) og xrandr meddeler at opløsningen du har ønsket er større end dem xrandr understøtter, skal du anvende "Virtual" og den ønskede opløsning. (Se efter Screen Section i Apendix A)
- For ethvert video kort, pånær intel, skal den virtuelle opløsning være stor nok til begge skærmes opløsning. Eksempel: monitor1= 1024x768 og monitor2=1280x1024, så burde den virtuelle opløsning være (1024+1280)x(1024>768) -> 2304x1024
Appendix A
Intel
Output names: * LVDS: internal laptop panel * TMDS-1: external DVI port * VGA: external VGA port * TV: external TV output
ATI
Output names: * LVDS: internal laptop panel * DVI-0: first external DVI port * DVI-1: second external DVI port (if present) * VGA-0: first external VGA port * VGA-1: second external VGA port (if present) * S-video
Nvidia
nv driver supports RandR1.2 on G80 boards Output names: * LVDS: internal laptop panel * DVI0: first external DVI port * DVI1: second external DVI port (if present)
Links
http://wiki.debian.org/XStrikeForce/HowToRandR12
http://bgoglin.livejournal.com/9846.html
Dual Monitors (med binære drivere)
For proprietære drivere skal du læse dokumentationen fra din grafikkort producent.
nvidia
Anvende nvidia xorg configurator http://www.sorgonet.com/linux/nv-online/ og rediger din xorg filer som angivet.
Native ATI - radeon
BEMÆRK: Du skal bruge konfigurations informationen fra den sekundære monitor. For at få fat i denne kan du afkoble den ene monitor og boote med aptosid live-cd'en som så genererer en xorg.conf, kopier denne, og så gør du det samme med den anden monitor.