lunes, 15 de marzo de 2010

Modificar Xorg.conf en Ubuntu 9.10, 10.04 o 10.10

Por lo visto a los programadores no les gusta que toquemos ciertos archivos de configuración. Si tenéis necesidad de modificar la configuración de las X en ubuntu 9.10, 10.04 ó 10.10 no encontrareis el archivo xorg.conf en el lugar que siempre ha estado (/etc/X11/xorg.conf), pero no os asustéis solo tenemos que teclear algunas ordenes en una terminal para hacer que aparezca un archivo xorg.conf, modificarlo y colocarlo en su directorio. Aquí os explicare como hacer todo esto:
1.- Primero pasaremos del sistema grafico, al modo texto:
Ctrl+Alt+F1
2.- Seguidamente detendremos el Servidor X
$ sudo /etc/init.d/gdm stop
3.- Luego pedimos a Xorg nos configure un archivo, con la configuración automática que tiene desde la instalación. Cuidado con este archivo, no os llevéis a engaño, el archivo se configurara según los datos que haya configurado las X en la instalación, sino ha cogido los drivers de la grafica al uso, su configuración sera para vesa, procura verificar los drivers de tu tarjeta grafica en Controladores de Hardware e instalar los drivers que fuesen necesarios antes de hacer ningun cambio.
$ sudo Xorg -configure
Se creará el archivo xorg.conf.new en el siguiente directorio /home/tu_nombre_usuario/xorg.conf.new.
4.- Podríamos volvernos al modo gráfico para quien no quiera complicarse en hacerlo todo en modo texto:
$ sudo /etc/init.d/gdm start
Luego:
$ sudo gedit /etc/X11/xorg.conf
Pero a mi me gusta que os acostumbréis a hacerlo también en modo texto, por que nunca se sabe cuando tendrás que hacerlo de esta forma, por lo tanto os diré como modificar y mover los archivos en una terminal o en su caso en modo texto:
5.- Doy por echo que estas en /home/tu_usuario:
$ sudo cp xorg.conf.new /etc/X11/xorg.conf
 Ahora nos pasaremos al directorio correspondiente:
$ cd /etc/X11
Veamos que tenemos en el directorio colgado:
$ls -a
Así podrás ver una lista de todos los archivos o directorios colgados desde aquí. 
6.- Editando el archivo:
$sudo nano xorg.conf
y en Section "Screen" agregas los modos que necesites para tu monitor (evidentemente estos datos los habrás buscado por internet o en tu proveedor) hay una forma de hacerlo en una terminal que explicare otro día.

Code:
Section "Screen"

Identifier "Screen0"

Device "Card0"

Monitor "Monitor0"

SubSection "Display"

Viewport 0 0

Depth 1

Modes "1024x768" "800x600" "640x480"

EndSubSection

SubSection "Display"

Viewport 0 0

Depth 4

Modes "1024x768" "800x600" "640x480"

EndSubSection

SubSection "Display"

Viewport 0 0

Depth 8

Modes "1024x768" "800x600" "640x480"

EndSubSection

SubSection "Display"

Viewport 0 0

Depth 15

Modes "1024x768" "800x600" "640x480"

EndSubSection

SubSection "Display"

Viewport 0 0

Depth 16

Modes "1024x768" "800x600" "640x480"

EndSubSection

SubSection "Display"

Viewport 0 0

Depth 24

Modes "1024x768" "800x600" "640x480"

EndSubSection

EndSection


7.- Si haz hecho esto en modo grafico tendras que volver al modo texto, sino es tu caso salta al reconfigure y reinicia tu maquina.
Ctrl+Alt+F1
8.- Detenemos las X:
$sudo /etc/init.d/gdm stop
9.- Despues haz un reconfigure de las X con:
$sudo dpkg-reconfigure xserver-xorg
10.- Reiniciamos
$sudo reboot
Desde este momento si tu maquina a rebotado en condiciones y no te da problemas las X vas a Sistema-Preferencias-Pantalla y escoges la resolución que gustes.

11.- Si te diese problemas y no consigues que esto haya funcionado a la primera, posiblemete te quedes otra vez en modo texto, entonces puedes hacer varias cosas o modificas de nuevo el archivo xorg hasta conseguir un arranque optimo de las X o borras el archivo xorg.conf para que puedas preguntar el problema en los foros o a google.
Te explico como poder arrancar de nuevo borrando el archivo xorg.conf:
$sudo rm /etc/X11/xorg.conf
$sudo reboot
Vale ya se supone que esto lo tienes otra vez andando.
Yo aconsejo hacer todos los cambios en el archivo xorg.conf.new e ir indicando los cambios un parrafo arriba o por debajo de las lineas con indicaciones claras, como indicare ahora:

Section "Screen"


Identifier "Screen0"


Device "Card0"


Monitor "Monitor0"


SubSection "Display"


Viewport 0 0


Depth 1


#Los modos que he cambiado son estos --de esta forma, con la almohadilla por del#ante, para que salte el script la linea y no la reconozca, así haremos nuestros#apuntes.

Modes "1280x1024" "1024x768" "800x600" "640x480"

De esta forma podremos saber que hemos cambiado, sin entorpecer al sistema en la lectura del archivo de configuración y así nosotros sabremos en que punto hemos cambiado algo al archivo original.
Espero que con esta pequeña receta, haya ayudado a otros pocos, a resolver estos pequeños problemas en Ubuntu.

Revisión 1.0 añadido 17/03/10
Añado esta revisión después de ver algunas cosillas que creo requieren un par de aclaraciones, si pretendes hacer un archivo desde cero necesitaras sea ejecutable, por lo tanto, una vez el archivo colocado en su lugar dele derechos de ejecución como super-usuario:

$sudo chmod +x xorg.conf
Aquí os dejo un link muy interesante en ingles que quizas te solucione algún otro problema.

9 comentarios:

Anónimo dijo...

gracias, este blog me a salvado la vida

atte
sammykn

Avila dijo...

hola¡¡¡ soy nuevo desde chile en el uso de ubuntu, y tengo un problema con el mause. no me funciona , me gustaria saber si me puedes ayudar.

arriero dijo...

Utiliza el correo que esta por debajo de los contadores, por si nos alargamos.

pedrozopayares dijo...

Hola,

Resulta que he generado, copiado, llenado el archivo ese de xorg.conf y nada, no sale la resolución que necesito en la ventana de configuracion.

De hecho, intenté también con ese comando adicional que das en otro post, pero nada.

Creo que debo hacer algo drástico como reinstalar el controlador pero resulta que sé como hacerlo. Ubuntu me dice que no está usando controladores adicionales y por eso no los veo.

Es un Dell Inspiron 530 con chipset Intel g31/33

Como debería reinstalar el controlador? tienes idea?

Ahh, algo más que creo está relacionado con el problema es que tiene otra pantalla, una syncmaster 932nw y me resolví a borrar windows porque esta también me cambiaba la resolución.

No me ponen la 1440x990 que soporta la pantalla con la consiguiente pérdida de calidad.

arriero dijo...

Te aconsejo que los cambios que hagas fuesen todos sin el monitor enchufado, para no generar equivocaciones en la configuración de las X.
Utiliza a google con tu modelo de chips(intel g31/33 ubuntu) haber que sale.

arriero dijo...

Añade este repositorio de ppa en launchpad y haber que pasa.

https://launchpad.net/~intel-gfx-testing/+archive/ppa

arriero dijo...

https://answers.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+question/119930
Echa un vistazo.

pedrozopayares dijo...

He intentado hacer los cambios en el xorg.conf y xorg.conf.new pero nada.

Me alegra que hayas puesto tu frase de: "hay una forma de hacerlo en una terminal que explicare otro día" por que ese tutorial y este enlace:https://wiki.ubuntu.com/X/Config/Resolution están a punto de cambiar la historia.

Lo primero es averiguar si el monitor tiene soporte para la resolución deseada y algunos detalles técnicos que a veces no encontramos en internet. Esto es lo que uno logra con el comando cvt que nos mostraste (en mi caso con resolución de 1440x900, que es la recomendada del monitor):
___
nombre-equipo@nombre-usuario:~$ cvt 1440 900
# 1440x900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz
Modeline "1440x900_60.00" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
___
Luego copiar el texto después de la palabra 'Modeline' y pegarlo después del comando xrandr --newmode, quedando así:
_____

nombre-equipo@nombre-usuario:~$ xrandr --newmode "1440x900_60.00" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync
____

pedrozopayares dijo...

Después de ejecutar ese comando tenemos un modo para adicionar a la salida del monitor que utilizaremos, en este caso VGA1, que es la única que tiene mi monitor.

El detalle está en que el modo que creamos tiene el nombre que aparecía entre comillas-> "1440x990_60.00" en mi caso.

Adicionamos este modo a VGA1 con:
_____

nombre-equipo@nombre-usuario:~$ xrandr --addmode VGA1 1440x900_60.00
_____
Y lo activamos para la sesión actual con:
_____
nombre-equipo@nombre-usuario:~$ xrandr --output VGA1 --mode 1440x900_60.00
_____

Lo malo es que se borra cuando reiniciamos, que creo que es lo que trata de evitar el hecho de agregar esas líneas al archivo especificado en el tutorial http://curioseandolinux.blogspot.com/2010/03/otra-forma-de-cambiar-la-resolucion-de.html.

Voy leerlo mejor y a ver como uso gft en el archivo /etc/gdm/Init/Default.

Después te escribo que pasó. Pero ahora solo tengo una duda:
Yo sé que si ubuntu se fijara en el archivo xorg.conf o xorg.conf.new me hubiera cambiado la resolución. Pero no lo está haciendo. Algo debe estar pasando, o lo toma de un sitio que no es el xorg.conf de /etc/X11/ o el HOME del usuario activo o ya ese archivo le vale a la nueva versión 10.10.

Ah, y supe que sí tengo los controladores de Intel instalados utilizando el software System Profiler and Benchmark, es el everest de linux. (de todas formas lo instalé de nuevo para asegurarme descargando el paquete de controladores de video de intel para ubuntu de aquí:
https://launchpad.net/ubuntu/+source/xserver-xorg-video-intel)


Saludos