Xrandr – přidání rozlišení monitoru

Víte co na linuxu doslova zbožňuji? Každou jednoduchou věc, která funguje na Mac OS, nebo Windows, jako naprostá samozřejmost. Na linuxu Vám stejná věc může sebrat i „několik dní“ po několika minutách/hodinách času na řešení nějakého problému, když pak zjistíte, jak primitivní to vlastně je. Ale tu radost, kterou máte z toho, když jste si poradili, to je jako když si postavíte vlastní motorku, se kterou pak vyhrajete šampionát. Potom co si to nastavíte (po hromadě neúspěšných příkazů, čtení logů a zkoušení) tak to konečně funguje tak jak má a vy máte ten skvělý pocit, že se to podařilo právě proto, že jste si na to přišli hezky „sami“.

Toť k emocím a teď k logice. Nastavení více monitorů na linuxu může být občas za trest. (kdo to zažil, ten to chápe, kdo to nezažil, soucítím s Vámi, projdete si tím). Za trest proto, že Vám to třeba nedetekuje druhý, nebo třetí monitor. Na noteboocích se 2 grafikami nastává problém, no a nedejbože snažit se nahodit řešení AMD Cross-fire nebo NVIDIA SLI na linuxu. Na starších grafikách můžete poskládat dohromady kolik monitorů chcete, pakliže jejich rozlišení bude dohromady menší než 2048×2048 (jako např na starších intel 945 chipsetech). Další věc je podpora 3D v multihead provedení a takto bych mohl v nedostatcích, se kterými si musíte poradit sami, pokračovat. Pokud to detekuje všechny Vaše monitory, tak Vám to nenabídne všechna rozlišení. Když Vám to nenabídne všechna rozlišení, snažíte si to dodat sami.  Při prvním seznámením s xrandrem jsem byl trošku nejistý. Je to jako když vyfasujete nové firemní auto, tak ještě sami nevíte, kdy ta spojka přesně zabírá, jak moc můžete na ten plyn šlápnout, aby Vás řidič před Vámi nemusel proklínat za to, že si bude měnit přední sklo od kamínků, které jste na něj vystřelili zadními pneumatikami, jak fungují všechna ta hejblátka v palubním počítači a na co vlastně je tam to tlačítko „nemačkat“? (viz Stopařův průvodce po galaxii)

A po několika desítkách minut od přechodu z xorg.conf na xrandr musím pronést následující prohlášení:

„S jakoukoliv technologií, nebo lepším řešením se seznámíte lépe jen tehdy, pakliže na něm dokážete efektivně a rychle řešit jakékoliv produkční problémy. Pak můžete o sobě prohlásit, že danou technologii opravdu zvládáte, protože už Vás na ni nemá co překvapit.“

A stejné je to s xrandrem. Často Vám připadne, jak složitě některé věci na linuxu vypadají. Je to však první pohled. Přijdu s druhým prohlášením:

„Jakkoliv složitější příkaz či jejich seznam, se pro Vás stává primitivním, pakliže ho máte připraven v několika .sh skriptících, které vše zařídí za Vás.“

A do třetice:

„Čím více příkazů si ukládáte do .sh „skriptů“, které pak z rutiny spouštíte, zapomínáte jejich přesné znění a při jejich ztrátě jste nepoužitelní i Vy.“

V mé konfiguraci mám pracovní ntb dell inspiron 7720, celkem 3 displeje včetně integrovaného a měl jsem právě problém s detekcí VGA1 výstupu, ke kterému byl připojen HD monitor. Grafiku mi to bralo od intelu HD 4000 (mám tam ještě Nvidia GT 650M). No a nastává problém.

Co mám dělat, když VGA1 monitor mi nabízí nejvyšší rozlišení velikosti 1024×768 60Hz a přitom má podporovat 1680×1050 60Hz ?
Začneme základy:

xrandr

Vypíše Vaši současnou situaci:

Screen 0: minimum 8 x 8, current 2730 x 1680, maximum 32767 x 32767
LVDS1 connected (normal left inverted right x axis y axis)
 1920x1080 60.0 + 59.9 
 1680x1050 60.0 59.9 
 1600x1024 60.2 
 1400x1050 60.0 
 1280x1024 60.0 
 1440x900 59.9 
 1280x960 60.0 
 1360x768 59.8 60.0 
 1152x864 60.0 
 1024x768 60.0 
 800x600 60.3 56.2 
 640x480 59.9 
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected primary 1050x1680+0+0 left (normal left inverted right x axis y axis) 474mm x 296mm
 1680x1050 60.5*+ 59.9 
 1600x1200 60.0 
 1280x1024 76.0 75.0 60.0 
 1440x900 59.9 
 1152x921 65.9 
 1152x900 66.0 
 1152x864 75.0 
 1024x768 75.1 75.0 70.1 60.0 
 832x624 74.6 
 800x600 72.2 75.0 60.3 56.2 
 640x480 75.0 72.8 66.7 60.0 
 720x400 70.1 
VGA1 connected 1680x1050+1050+0 (normal left inverted right x axis y axis) 0mm x 0mm
 1680x1050 60.0*+ 60.0 
 1024x768 60.0 
 800x600 60.3 56.2 
 848x480 60.0 
 640x480 59.9 
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
 1440x900_59.90 (0x13f) 106.3MHz
 h: width 1440 start 1520 end 1672 total 1904 skew 0 clock 55.8KHz
 v: height 900 start 901 end 904 total 932 clock 59.9Hz

Příkaz

xrandr -v

vypíše verzi:

xrandr program version 1.4.1
Server reports RandR version 1.4

 

Řešení na xrandr  ver 1.4.1 je zcela primitivní:

gtf 1680 1050 60 -x
xrandr --newmode "1680x1050" --newmode "1680x1050" 147.14 1680 1784 1968 2256 1050 1051 1054 1087 -HSync +Vsync
xrandr --addmode VGA1 1680x1050
xrandr --output VGA1 --mode 1680x1050

Ikdyby vám monitor jen problikl a nenaběhl, tak už si to můžete „doklikat“ přes applet na nastavení monitorů, kde už se Vám rozlišení objeví a můžete si to nastavit.
A popravdě ikdyž jsem asi poprvé v životě nemusel řešit nastavení GUI přes xorg.conf a dopisovat si tam řádečky a vypiplávat si to, bylo to pro mě poprvé mnohem příjemnější uživatelské řešení, než v minulosti. V minulosti jsem si to ponastavoval a bylo to super, než přijde další verze ovladačů, výměna grafiky, nebo upgrade distribuce a stejný maraton začíná +- znovu, protože ikdyž už nějaké nastavení máte, musíte to měnit.

Takže zatímco pro spoustu uživatelů, je ještě dnes GUI na linuxu, nebo dokonce samotný linux něco, na co se mají dívat přes prsty, za posledních 10 let urazil linux neuvěřitelný skok cesty kupředu a podle mě to dokážou ocenit jen ti, kteří zažili linux před těmi 10 lety a pamatují jaké to bylo tenkrát a mohou to srovnávat s dneškem. Teď si představte třeba jen nabídku distribucí před 15 lety, před 20 lety a dojde Vám, že ikdyž se ještě dnes objeví nějaké problémy, je to oproti tehdejší době jako rajská zahrada, nebo švédský stůl, ze kterého si můžete krásně vybrat to, co Vám chutná a vyhnout se tomu, co Vám prostě a jednoduše nechutná. Před 10 lety se mi nikdy nestalo, že bych nainstaloval linux a fungovalo by mi tam alespoň 50% toho, co bych chtěl v defaultu. A to že to tenkrát žralo mnohem méně ram, to už bych dneska taky neřešil.

Před 10 – 15 lety jsme si nedokázali ani představit, že by se dalo na linuxu něco novějšího rozumně hrát bez ztráty 40% výkonu a několika dní ladění ovladačů, ladění nastavení hry a různých bugů, pakliže budeme hovořit ne o těch nativních hrách, ale o těch hrách pod WINEm. A podívejte se na články na rootu dneska, kde si na blbuntu nainstalujete Steam, stáhnete si counter-strike: Global Offensive a prostě si zahrajete tak, jako kdybyste měli Windows. A jasně, ještě je hodně co dohánět, ale jsme svědci toho, že se vývoj někam uchyluje a že se do budoucna máme na co těšit.

Dle mého názoru, pokud Linux začne být atraktivní pro hráče PC her a designérské/technické společností pracujících se 3D, oblíbenost Linuxu vzroste exponenciálně.

zdroj1 zdroj2 zdroj3

Příspěvek byl publikován v rubrice BugFAQ, Linux, užitečné a jeho autorem je mirra. Můžete si jeho odkaz uložit mezi své oblíbené záložky nebo ho sdílet s přáteli.

Autor: mirra

Hardwaru a počítačům se věnuji již od roku 2003. Za tu dobu jsem poskládal stovky počítačů, opravil tisíce počítačů a vyřešil nespočetně problémů, vad a chyb, se kterými se setkávali uživatelé. Od roku 2005 se zabývám servery, zejména těmi herními , v roce 2007 jsem se začal věnovat Valve Source SDK level designu, který šel od roku 2009 k ledu kvůli studiu Informatiky na univerzitě. Podílel jsem se chvíli i na provozu síťové laboratoře MENDELU, dnes spravuji cca 13 serverů/diskových polí na univerzitě, řeším IT v malých a středních firmách tak, aby firmy ušetřily nemalé částky při zlepšení kvality a soustředím se na snižování nákladů na IT od licencí až po hardware, software, provádím konsolidace a audity platnosti licencí, které firmám šetří rovněž nemalé peníze. Velké firmy nechávám korporacím. ;-)

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Captcha *