|
¿Alguna vez haz conectado un monitor a tu laptop y luchado para que se despliegue la imagen en el monitor? O quizá a haz querido ver tu escritorio de manera extendida, pero ha sido todo un dolor de cabeza, y finalmente haz hecho hacks y hacks a el xorg.conf, y no ha quedado bien del todo. Pues tengo grandes noticias para ti. Existen ya métodos para hacer cambios de resolución, extender el escritorio de manera horizontal o vertical y todo con unos cuantos comandos. Para eso hemos desarrollado este pequeño script en PHP que se encarga de todo lo necesario para auto-ajustar tu resolución para poner un monitor a la derecha de tu laptop y que automáticamente, al conectarlo se extienda el escritorio.
Primero lo primero, la lista de requerimientos: - Linux mas o menos nuevo, digamos con Xorg 1.4 o superior
- El programa xrandr (apt-get install xrandr en ubuntu o yum install xrandr en centos/fedora)
- PHP en modo CLI o CGI instalado
- Privilegios de ROOT en tu instalación
- Un editor de texto, como joe, nano, pico, kate o similares
Una vez que cumplas con la lista de requerimientos vamos a ver los pasos. Lo primero que hay que hacer es detectar la resolución de tu pantalla, esto es con: xrandr que mostrará algo como esto: Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 2720 x 1024 VGA-0 connected 1280x1024+1280+0 (normal left inverted right x axis y axis) 338mm x 270mm 1280x1024 60.0*+ 75.0 59.9 1152x864 74.8 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1280x800 59.5*+ 60.0 1280x768 60.0 1024x768 60.0 800x600 60.3 640x480 59.9 S-video disconnected (normal left inverted right x axis y axis) Como te podras dar cuenta, existe en la primera linea un "maximum 2720x1024", esto se edita en el archivo de /etc/X11/xorg.conf, busca la sección "Screen", y ahí busca la subsección "Display", una vez que lo halles, edita o agrega esta línea: Virtual 2720 1024 # <--- hay que agregar esta linea El primer parámetro es el máximo de resolucion horizontal, digamos, yo tengo dos monitores, el de mi laptop, de 1280x800 y el externo, un LCD de 1280x1024. Así, sumo 1280+1280=2720, ahora, de vertical, tomo el más alto, puesto que voy a desplegar todo esto de manera horizontal. Si fueras a utilizar el cambio a manera vertical, sumarías los altos y usarías el ancho más grande para fijar estos parámetros. Hecho esto, salva y reinicia tu entorno gráfico, puedes hacerlo con reiniciar la máquina, o simplemente detener y reiniciar el servicio, en algunas distribuciones cuando te sales al xdm/kdm/gdm (es decir, donde te pide login y password) puedes presional control-e o alt-e y se reinicia el ambiente gráfico. Cuando hayas hecho esto, intenta de nuevo, y revisa si el maximum es de lo que tu pusiste, esto es indispensable para el segundo paso. Ahora es muy sencillo, solo tienes que decirle cual pantalla es la primaria y cual es la secundaria. Yo uso siempre la interna de la laptop como primaria, por que si se va la luz te quedas sin la primaria (si no tienes UPS). xrandr --output LVDS --mode 1280x800 Esta instrucción fija a mi pantalla primaria como la LVDS a una resolución de 1280x800, luego va la secundaria: xrandr --output VGA-0 --right-of LVDS --mode 1280x1024 List! manualmente ya tienes hecho el cambio, y tu escritorio esta extendido. Pero ahora, hay que hacer esto de manera automática. ¿Cómo? pues con un script que ejecute estos pasos, detecte cuando hay un monitor externo conectado, y detecte entonces la resolución máxima de la pantalla principal y ejecute los comandos poniendo el display adecuado y el modo adecuado. Luego, ejecutando ese script al inicio de tu sesión gráfica y manteniendolo activo todo el tiempo, checando una vez por minuto si hay cambios de monitores conectados o desconectados se puede hacer automático el cambio de tamaño. Para obtener el script, te invito a la sección de descargas. También te invito a hacer comentarios acerca de este artículo para poder mejorar nuestra calidad de contenidos.
|