dimarts, 27 de gener del 2015

XRANDR - una aplicació molt potenta per configurar els nostres monitors

Hi han moltes eines per configurar els nostres monitors de manera gràfica, però totes es basen en una sola ordre: xrandr.

Amb aquesta ordre podem configurar el nostre monitor, les resolucions i les sortides ( clonades o exteses ). Haig d'admetre que no és una ordre fàcil, però ficaré un parell d'exemples que porto a la pràctica, això si, amb terminal i un parell de fitxers....

Quants monitors tenim i quines són les seves resol.lucions?

No es gens complicat, només cal obrir un terminal i escriure:
xrandr -q
El resultat ha de ser similiar a aquest:

 Screen 0: minimum 320 x 200, current 1280 x 800, maximum 1280 x 800
VGA connected 1024x768+1280+0 (normal left inverted right x axis y axis) 312mm x 234mm
   1024x768       85.0*+   85.0*    75.0
   1152x864       75.0
   800x600        85.1     75.0
   640x480        85.0     59.9
   720x400        70.1
LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1280x800       60.0 +
   1280x720       59.9
   1152x768       59.8
   1024x768       60.0     59.9*
   800x600        60.3     59.9
   640x480        59.9     59.4
On VGA seria a on està un dels monitors connectats i LVDS la segona sortida. També veiem les corresponents resolucions acceptades i l'orientació.
Per defecte, la sortida és extesa, vol dir que els menus i les icones principals surten per un monitor i s'allarguen a segon.

Dualitzar o clonar monitors

Imaginem el cas que estem en un centre educatiu o estem fent una ponència i tenim connectats el monitor i el projector al nostre equip, per defecte i sense tocar res, la configuració és extesa i el pas per clonar és anar a les Preferències de la nostra sessió d'escriptori. Això es pot sol.lucionar d'un sol cop amb l'ordre:
xrandr --output LVDS --auto --output VGA --auto --same-as LVDS
seguint el model anterior de resultat de xrandr -q. Amb aquesta ordre la imatge es clona en tots dos monitors i amb la resol.lució màxima del monitor amb menys suport, en aquest exemple, la sortida VGA.

Imatge en un sol monitor

Pot donar-se el cas que només volem la imatge en un monitor, per exemple, si tenim un portàtil i un monitor connectat però volem que la imatge només surti pel monitor i no el portàtil, l'ordre seria aquesta:
 xrandr --output VGA --off
On la sortida a desconnectar seria VGA.

Orientar monitors, un al costat de l'altre

Per defecte, un monitor es fica a l'esquerra i l'altre a la dreta, amb aquesta ordre fiquem l'orientació que volem:
xrandr --output VGA --auto --right-of LVDS
On la sortida VGA es fica a la dreta de la sortida LVDS.

Fent que tots els usuaris tinguen la mateixa configuració


Tornant al cas de centre educatius o ponpencies ens interesa que tots els usuaris que utilitzen una màquina en concret tingue una certa configuració, per exemple, monitors duals per mostrar  el mateix al projector i al monitor. 
Per això crearem un fitxer amb el següent:
sudo gedit /opt/dual.sh
I el següent contingut:
#!/bin/bash
xrandr --output LVDS --auto --output VGA --auto --same-as LVDS
NOTA - Recordem que LVDS i VGA són els monitors resultants de xrandr -q.

Li donem permissos d'execució amb:
sudo chmod a+x /opt/dual.sh
I per últim fem que tots els usuaris tinguen aquesta ordre a l'iniciar-se creant el fitxer:
sudo gedit /etc/xdg/autostart/dual.desktop
Amb el contingut:
[Desktop Entry]
Type=Application
Name=Dualitzador
Exec=/opt/dual.sh
I ja podem iniciar sessió amb qualsevol usauri que inciarà amb els monitors clonats.
NOTA - aquesta configuració és molt útil en equips lligats a domini.