Internet Info, s.r.o. Lupa Root Měšec Podnikatel DigiZone Slunečnice Vitalianew Bomba Navrcholu Weblogy Jagg Woko Dobrý web Computer.cz SK: MojeLinky

Hlavní navigace

Klonování obrazu a dva monitory v Linuxu

Pomalu každý dnešní počítač má víc než jeden výstup na monitor. Dnešní Linux umí stejně jako konkurenční systémy tohoto druhého výstupu využít pro připojení dalšího monitoru, ať už za účelem zvětšení pracovní plochy nebo třeba připojení projektoru k prezentaci. Pro práci s těmito možnostmi X serveru slouží protokol RandR.

Před příchodem RandRu se musel při změně parametrů obrazu restartovat X server. Existovaly možnosti jako klávesové zkratky Ctrl + Alt + +/-, které přepínaly rozlišení monitoru, ale tam možnosti „online“ konfigurace končily. Tento nedostatek začal být řešen vývojáři X.orgu a výsledkem je jednoduchý protokol, přes který se dá komunikovat s X serverem a dělat na něm změny, aniž bychom ho museli restartovat.

RandR tak přinesl potřebnou pružnost konfigurace, která je u konkurenčních systémů již delší dobu a umožnil pohodlně používat převážně notebooky a jiná mobilní zařízení tak, jak si to všichni přejeme.

Stále sice existují problémy závislé především na kvalitě ovladače. Ne všechny ovladače RandR podporují a ne všude jede bez problémů. Naštěstí klonování obrazu a spojení dvou monitorů do jedné plochy je většinou bezproblémové.

Kontrolu nad možnostmi RandRu nám umožní více nástrojů. My se dnes podíváme na dva z nich. Jeden je součástí balíku X.org a druhý je klikací. Oba dva se ovládají pohodlně a jde tedy pouze o preferenci uživatelů, případně potřeb. Konzolové „nastavovátko“ se nám bude hodit například u konfigurace multimediálních tlačítek přístupných přes acpid. Klikací nástroj oceníme, když potřebujeme rychle přepnout do nějaké nezvyklé monitorové konfigurace. Různé distribuce také disponují vlastními nástroji na správu X serveru, ale není v silách tohoto článku se jim věnovat. Uvidíte, že pro naše potřeby bude stačit nakonfigurovat pár klávesových zkratek, protože RandR disponuje vcelku solidní autokonfigurací.

Začínáme u xorg.conf

První překážka, která by nás mohla odradit od dalšího počínání, se skrývá hned při startu X serveru. Problém je ve velikosti plochy. Ta se nastavuje podle maximální hodnoty aktuálně připojeného monitoru a nebere ohled na monitory, které třeba připojíme později. To se stává často u notebooků při cestování mezi různými pracovišti apod.

Cesta ven vede přes úpravu souboru xorg.conf:

Section "Screen"
    Identifier "Screen1"
    Device     "Device1"
    DefaultDepth     24

    SubSection "Display"
        Depth     16
        Virtual 1920 1080
    EndSubSection
    SubSection "Display"
        Depth     24
        Virtual 1920 1080
    EndSubSection
EndSection 

V našem konfiguračním souboru xorg.conf najdeme sekci „Screen“ a přidáme do ní řádky začínající na „Virtual“. Pokud jsou již na místě, pouze upravíme na námi požadované hodnoty. V tomto případě se jedná o Asus Eee a připojuji ho pouze k LCD televizi, takže není potřeba nastavovat vyšší rozlišení. Pokud ale přemýšlíte o propojení dvou monitorů pro získání velké plochy, upravte si hodnoty tak, aby se do nich oba monitory vešly.

Některé distribuce tuto hodnotu nastavují při konfiguraci během instalace a dále nepočítají se změnou. Pokud tedy nechcete mít problémy s ruční konfigurací, tak připojte monitory/tele­vize/projekto­ry na výstupy již při instalaci.

Hodnoty také nemusíte upravovat, jsou-li oba monitory na místě při startu X serveru.

xrandr

Pro práci s RandR z příkazové řádky můžeme použít nástroj xrandr, který máte pravděpodobně již v systému. Dává nám plnou kontrolu na možnostmi RandR a zobrazuje o aktuálním stavu všechny důležité informace.

Screen 0: minimum 320 x 200, current 1024 x 600, maximum 1920 x 1080
VGA connected (normal left inverted right x axis y axis)
   1280x1024      59.9
   1280x960       59.9
   1152x864       74.8
   1024x768       75.1     70.1     60.0     43.5
   1024x600       60.0
   800x600        72.2     75.0     60.3     56.2
   800x480        60.0
   640x480        75.0     72.8     60.0     59.9
   720x400        87.8     70.1
   640x400        76.5     85.1     70.1
   640x350        70.1
LVDS connected 1024x600+0+0 (normal left inverted right x axis y axis) 220mm x 129mm
   1024x600       60.0*+   65.0     60.0
   800x600        60.3
   800x480        60.0
   640x480        59.9 

Monitory po připojení konektoru dávají většinou správné informace o svých možnostech. Díky tomu nemusíte pokaždé nastavovat ručně módy definující rozlišení, frekvenci a další hodnoty. Na prvním řádku vidíme informace o aktuální pracovní ploše. Těch může být i více a je to závislé na konfiguraci vašeho X serveru. Vidíme, že minimální rozlišení může být 320×200 a maximální na 1920×1080. Maximální hodnotu jsme si nastavili výše pomocí parametru Virtual. Konkrétně u tohoto Eee je maximální hodnota ve výchozím stavu nastavena na 1024×768, což je maximální rozlišení, které můžeme s LVDS použít, i když ho integrovaný monitor nezobrazí.

Další řádky už ukazují jednotlivé monitory připojené ke Screen0. U každého z nich se objeví seznám módů, které na něm mohou být nastaveny a aktuálně vybraný mód. Módy lze během provozu přepínat.

První krůčky

Než začneme s prvními pokusy, zkusíme si spustit xrandr s parametrem –auto:

xrandr --auto 

Tím vyzkoušíme, co pro nás X server vybral za jeho optimální nastavení. V mnoha případech zde další konfigurace končí.

Více informací o dostupných módech a připojených monitorech získáme pomocí:

xrandr --dryrun 

Otáčení obrazu se provádí přes:

xrandr -o normal|inverted|left|right 

To se hodí například při čtení formátu A4 a možností natočit si monitor.

Rychlou změnu velikosti plochy můžeme provést také:

xrandr --fb 1024x768 

Tímto neodpadá nastavení xorg.conf, ale měníme pouze hodnotu current, kterou můžeme najít na výpisu výše. Za hodnotu maximum se nedostaneme.

cx@godie ~ $ xrandr --fb 2000x2000
xrandr: screen cannot be larger than 1920x1080 (desired size 2000x2000) 

Xrandr disponuje opravdu vším možným pro práci s obrazem, ale ne všechno je podporováno ovladači.

Přepínání monitorů

Pro práci s jednotlivými výstupy se používá přepínač –output, za který dáme název výstupu. Ten je pojmenovaný často podle typu konektoru, tedy LVDS, DVI, VGA,S-VIDEO apod. Dále následují přepínače popisující, co se má s obrazem na daném výstupu udělat. Tou nejčastější možností je jejich vypínání a zapínání.

xrandr --output LVDS --off
xrandr --output VGA --auto 

Xrandr umožňuje několik akcí spojovat do jednoho volání. Můžeme tedy realizovat přepnutí výstupu i takto:

xrandr --output LVDS --off --output VGA --auto

a zpět

xrandr --output LVDS --auto --output VGA --off 

X server vybírá jako výchozí tzv. preferovaný mód. To je ten, který se nejvíce blíží hodnotě DPI 96 pixelů. Nemusí tak nutně být vybráno rozlišení nejvyšší nebo výrobcem doporučované. V takovém případě není nic jednoduššího než mód změnit:

xrandr --output LVDS --mode 800x600 

Název módu se vytváří z rozlišení, ale pokud si vytvoříte mód svůj, tak ten se může jmenovat i jinak.

Dva monitory vedle sebe – klonování obrazu

Pokud na jednom screenu spustíme dva monitory najednou, budeme mít stejný obraz na obou dvou. Tomu říkáme klonování a svoje místo si najde na většině prezentací.

xrandr --output VGA --output LVDS --auto 

Pokud nejsou monitory stejné, resp. nemají stejné rozlišené, musíme nastavit nový mód.

Dva monitory vedle sebe – větší plocha

Taktéž častým použitím více monitorů je vytvoření velké virtuální plochy.

xrandr --output VGA --right-of LVDS 

Umístění monitorů můžeme měnit pomocí –left-of (v levo), –right-of (v pravo), –above (nahoře) a –below (dole). Za tento parametr přidáme název výstupu, který chceme změnit.

Cesta zpět ke klonovanému výstupu vede přes parametr –same-as:

xrandr --output VGA --same-as LVDS 

Změna a vytváření módů

U nastavování jednotlivých výstupu ještě zůstaneme. Pokud se stane, že potřebujeme nějaké méně standardní rozlišení, můžeme přidat k výstupu vlastní mód. Nejprve si ho vytvoříme. Může to být prakticky jakékoli rozlišení. K tomu použijeme utilitku gtf:

gtf 850 438 60

  # 848x438 @ 60.00 Hz (GTF) hsync: 27.24 kHz; pclk: 28.33 MHz
    Modeline "848x438_60.00"  28.33  848 864 944 1040  438 439 442 454  -HSync +Vsync 

První parametr je šířka obrazu, druhý výška a poslední obnovovací frekvence.

Máme-li mód vygenerovaný, přidáme ho do ringu s ostatními:

xrandr --newmode "848x438_60.00" 28.33 848 864 944 1040 438 439 442 454 -HSync +Vsync 

Takto přidaný mód ještě musíme přiřadit výstupu:

xrandr --addmode LVDS 848x438_60.00 

Je-li vše na svém místě, můžeme si nechat vypsat seznam módů:

xrandr
[...]
LVDS connected 1024x600+0+0 (normal left inverted right x axis y axis) 220mm x 129
    [...]
    848x438_60.00   60.0 

Případně výstup rovnou přepnout:

xrandr --output LVDS --mode 848x438_60.00 

Pokud nejsme s výsledkem spokojeni, není nic lehčího než se vrátit k preferovanému módu:

xrandr --output LVDS --prefer 

grandr

Manipulaci s výstupy můžeme provádět i pomocí klikátka grandr. To sice nedisponuje takovou řadou možností jako xrandr, ale zase umožní provádět změny rychleji.

grandr

Grandr obsahuje 4 záložky umožňující:

  • Změnu módů
  • Změnu rotace
  • Změnu polohy monitorů
  • Nastavit klávesové zkratky

Bohužel, jakákoli změna přes grandr na mojí grafické kartě Intel spolehlivě shodí X server na lopatky a logy mlčí, takže nemohu naplno vyzkoušet, jak funguje. Kolega používající Debian nemá žádné problémy při používání a grandr si chválí. Osobně preferuji xrandr v kombinaci s klávesovými zkratkami. Největší výhodu grandr vidím v možnosti vizuálně rozložit monitory pomocí drag&drop. Nechybí ani volba nastavit monitory tak, aby rozšiřovaly plochu nebo oba zobrazovaly to samé.

Závěr

Xka nejsou vždy nakloněny nějakým změnám a i na dvou různých grafických kartách od Intelu můžeme čekat různé chování. Na mém starém notebooku s jednou z těchto grafických karet mi nastavení volby Virtual v xorg.conf vypnulo 3D akceleraci, někdy se zas špatně nadetekuje dpi apod.

Někteří výrobci se zase rozhodli RandR nepodporovat a mají na podobné nastavování vlastní utilitky. Dnes je naštěstí podpora na dobré úrovni a na většině strojů lze s RandR více či méně pracovat.

Adam Štrauch

Adam Štrauch

Adam Štrauch je redaktorem serveru Root.cz a svobodný software nasazuje jak na desktopech tak i na routerech a serverech. Ve svém volném čase se stará o komunitní síť, ve které je již přes 100 členů.

Školení: SQL pro začátečníky

Akademie Root
  • k čemu nám slouží databáze
  • organizace dat v tabulkách
  • základní příkazy pro obsluhu databáze
  • využití příkladů v praktických ukázkách

Detailní informace o kurzu...

Ohodnoťte jako ve škole:
Průměrná známka 2,78

Přehled názorů

Klikátko v GNOME
Jirka 11. 12. 2008 00:33
└ 
Re: Klikátko v GNOME
mirozbiro 11. 12. 2008 09:01
 
└ 
Re: Klikátko v GNOME
freshmouse 11. 12. 2008 13:51
KDE
Sten 11. 12. 2008 00:37
vypnutie 3d - intel
kain 11. 12. 2008 00:40
└ 
Re: vypnutie 3d - intel
Adam Štrauch 11. 12. 2008 01:10
Neni to tak slozite jak by se mohlo zdat
benzin 11. 12. 2008 07:35
├ 
Re: Neni to tak slozite jak by se mohlo zdat
marek 11. 12. 2008 07:45
│
└ 
Re: Neni to tak slozite jak by se mohlo zdat
milos 11. 12. 2008 08:30
│
 
├ 
Re: Neni to tak slozite jak by se mohlo zdat
mirozbiro 11. 12. 2008 09:05
│
 
└ 
Re: Neni to tak slozite jak by se mohlo zdat
marek 11. 12. 2008 14:14
├ 
Re: Neni to tak slozite jak by se mohlo zdat
michal 11. 12. 2008 09:49
└ 
Re: Neni to tak slozite jak by se mohlo zdat
Michal S 11. 12. 2008 15:09
Prave vcas
oxygen 11. 12. 2008 08:36
└ 
Re: Prave vcas
mirozbiro 11. 12. 2008 09:13
 
└ 
Re: Prave vcas
oxygen 12. 12. 2008 07:54
 
 
└ 
Re: Prave vcas
mirozbiro 12. 12. 2008 12:14
Chybka v clanku:-
mirozbiro 11. 12. 2008 08:53
└ 
Re: Chybka v clanku:-
Adam Štrauch 11. 12. 2008 15:31
Problem s VGA detekci, F9
mirozbiro 11. 12. 2008 09:27
16:9 monitor
Clock 11. 12. 2008 09:41
└ 
Re: 16:9 monitor
mirozbiro 11. 12. 2008 09:49
Druhý díl ?
Pet 11. 12. 2008 09:46
├ 
Re: Druhý díl ?
yak 11. 12. 2008 10:20
│
└ 
Re: Druhý díl ?
dracul 11. 12. 2008 18:26
└ 
Re: Druhý díl ?
Adam Štrauch 11. 12. 2008 15:46
 
└ 
Re: Druhý díl ?
peter 11. 12. 2008 18:00
 
 
├ 
Re: Druhý díl ?
Yokotashi 12. 12. 2008 12:11
 
 
│
└ 
Re: Druhý díl ?
Sten 15. 12. 2008 13:27
 
 
└ 
Re: Druhý díl ?
white 21. 12. 2009 08:53
xrandr vs. xinerama vs. siroka plocha
Eduard DRUSA 11. 12. 2008 10:52
└ 
Re: xrandr vs. xinerama vs. siroka plocha
Sten 11. 12. 2008 16:51
Chodi to nekomu na 3 monitory s radeonhd?
Yokotashi 11. 12. 2008 12:00
└ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
pan anonym 11. 12. 2008 13:23
 
└ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
Yokotashi 11. 12. 2008 14:43
 
 
└ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
michal6103 11. 12. 2008 15:14
 
 
 
├ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
Yokotashi 11. 12. 2008 15:15
 
 
 
└ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
pet 12. 12. 2008 09:24
 
 
 
 
└ 
Re: Chodi to nekomu na 3 monitory s radeonhd?
Yokotashi 12. 12. 2008 11:15
klonovani u nvidie monitory s ruznym rozlisenim
quandasim 11. 12. 2008 12:28
├ 
Re: klonovani u nvidie monitory s ruznym rozlisenim
dustin 11. 12. 2008 13:35
├ 
Re: klonovani u nvidie monitory s ruznym rozlisenim
Petr 11. 12. 2008 13:36
└ 
Re: klonovani u nvidie monitory s ruznym rozlisenim
Sten 11. 12. 2008 16:54
 
└ 
Re: klonovani u nvidie monitory s ruznym rozlisenim
quandasim 13. 12. 2008 14:30
 
 
└ 
Re: klonovani u nvidie monitory s ruznym rozlisenim
Sten 15. 12. 2008 13:28
dotaz
anonymní uživatel 11. 12. 2008 13:33
├ 
Re: dotaz
Adam Štrauch 11. 12. 2008 15:37
│
├ 
Re: dotaz
anonymní uživatel 11. 12. 2008 16:02
│
└ 
Re: dotaz
sid 11. 12. 2008 17:10
└ 
Re: dotaz
Sten 11. 12. 2008 16:56
 
└ 
Re: dotaz
anonymní uživatel 13. 12. 2008 11:21
Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
anonymní uživatel 11. 12. 2008 14:06
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Yokotashi 11. 12. 2008 14:38
│
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 15:28
│
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Yokotashi 11. 12. 2008 15:39
│
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 15:55
│
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Yokotashi 11. 12. 2008 16:19
│
 
 
 
 
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
anonymní uživatel 11. 12. 2008 17:08
│
 
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 17:11
│
 
 
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Yokotashi 11. 12. 2008 21:28
│
 
 
 
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 22:10
│
 
 
 
 
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Yokotashi 12. 12. 2008 11:12
│
 
 
 
 
 
 
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
ppp 17. 12. 2008 20:14
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Milan Keršláger 11. 12. 2008 14:46
│
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 15:29
│
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
stoural 11. 12. 2008 23:28
│
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
syslicex 12. 12. 2008 12:01
│
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
jyrki 13. 12. 2008 19:41
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
ms 11. 12. 2008 16:32
│
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 17:08
│
 
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
anonymní uživatel 11. 12. 2008 17:12
│
 
│
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
pan anonym 11. 12. 2008 18:02
│
 
│
 
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
mirozbiro 11. 12. 2008 18:52
│
 
│
 
│
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
samuel 11. 12. 2008 22:19
│
 
│
 
│
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
mirozbiro 12. 12. 2008 11:55
│
 
│
 
│
 
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
petr 13. 7. 2009 16:47
│
 
│
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
anonymní uživatel 12. 12. 2008 14:49
│
 
└ 
Úžasné!
ms 12. 12. 2008 13:01
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
mirozbiro 11. 12. 2008 18:47
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
lmanik 11. 12. 2008 20:22
├ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
xx 11. 12. 2008 20:50
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
Foton 11. 12. 2008 21:42
 
└ 
Re: Co to tady řeší sáhodlouhá diskuse, WIndows už dávno umí
mirozbiro 12. 12. 2008 11:58
RE: Klonování obrazu a dva monitory v Linuxu
Jiří Dobrý 11. 12. 2008 15:39
xr&r auto switch
enarki 11. 12. 2008 17:16
└ 
Re: xr&r auto switch
Sten 11. 12. 2008 17:29
 
└ 
Re: xr&r auto switch
mirozbiro 11. 12. 2008 18:57
3 monitory, 2 pocitace
Lukáš Doktor 14. 12. 2008 11:48
Druhý monitor do NB R61
Pepep 23. 1. 2009 00:00
       
Zasílat nově přidané příspěvky e-mailem

Zasílání upozornění na nové příspěvky je dostupné jen registrovaným uživatelům. Proto budete před aktivací zasílání názorů přesměrováni na přihlašovací stránku, ze které se můžete případně také zaregistrovat.