Source: https://jinetedeldragon.wordpress.com/2009/05/19/entendiendo-el-archivo-xorg-conf/
Timestamp: 2018-03-21 07:17:46+00:00

Document:
Entendiendo el archivo xorg.conf | Jinete del Dragon
Bueno, a veces lo mejor de lo mejor no está soportado en linux por la sencilla razón de que los fabricantes no se dignan a crear drivers para linux y hay que esperar un alma caritativa que haga ingeniería inversa y programe dicho driver.
Otra veces, nuestro hardware es tan viejo que el mismo linux se niega a correr.
Como casi nadie sabe son muy pocos los newbies que saben como modificar el archivo xorg.conf, y mucho menos entender que contiene cada sección, me propuse escribir un pequeño artículo para tirar algo de luz sobre este simpático archivito de configuración.
Xorg utiliza un archivo de configuración en su inicialización. Este archivo se llama xorg.conf y se encuentra generalmente en /etc/X11.
Es un archivo de texto plano (es decir que es legible por el hombre) y consta de distintas secciones.
El formato del archivo xorg.conf es:
Section  "Nombre_de_sección"
Cada opción (Opción1, Opción2, …) son entradas con valores asociados y que irán configurando las diversas características del servidor gráfico.
Son los datos que acompañan a cada opción, por ejemplo:
Note que todos los valores de las opciones deben ir entre comillas (” “).
1.2 ¿Porqué en algunas configuraciones las opciones booleanas varían?
Seguramente nos habremos encontrado que un archivo xorg.conf de un linux a otro varía, aún cuando sean máquinas idénticas con identico GNU/Linux instalado.
Esto es porque los valores booleanos (verdadero y falso) pueden representarse de varias formas
Verdadero: Los valores booleanos reconocidos son 1, on, true, yes
Falso: Los valores booleanos reconocidos son 0, off, false, no.
Si una opción tiene prefijo “No” entonces se interpreta como una opción negada.
Veamos un ejemplo de opciones que son equivalentes:
Encontraremos distintas secciones entre las cuales nos interesará reconocer
ServerLayout   Capa principal
Files          Rutas de archivos
Module         carga dinámica de módulos
InputDevice    descripción de dispositivos de entrada
Monitor        descripción del Monitor
Device         descripción de dispositivos gráficos
Screen         configuración de pantalla
DRI            configuración específica para el módulo DRI
2.1 Sección ServerLayout
Aquí se encuentra la configuración principal del servidor. Se indica que configuraciones puntuales utilizará para Screen y los InputDevice (teclado y mouse).
En un archivo Xorg.conf pueden coexistir varias configuraciones diferentes.
Por ejemplo, quiero tener dos configuraciones diferentes para mi placa de video porque realizo programación gráfica y quiero hacer testing.
Entonces solo tendré que especificar en esta sección (ServerLayout) que utilizaré la configuración Screen0 para mi actividad normal y con solo modificar el archivo e indicar la configuración Screen1 podré reiniciar el servidor X para trabajar con la configuración de testeo.
2.2 Sección Files
Esta sección generalmente nunca se edita, dado que son rutas a archivos específicos del servidor X: rutas a los módulos, rutas a las fuentes que utilizará el servidor X, etc.
2.3 Sección Module
En esta sección se indican los módulos que se cargarán al iniciar el servidor X.
No es frecuente que se edita esta sección, a menos que queramos activar la aceleración 3D y debamos activar los módulos glx y dri
2.4 Sección InputDevice
Pueden existir varias secciones con el mismo nombre. Todo dependerá de cuantos dispositivos de entrada tengamos: teclado, mouse, touchpad, lapiz óptico, lectores de códigos de barra, etc.
Lo mas común es que tengamos dos secciones que se diferenciarán por la opción Identifier: Keyboard y Mouse
Estas secciones tampoco necesitan una edición manual dado que al ser dispositivos estándares, en el proceso de instalación de linux, se configuran correctamente.
2.5 Sección Monitor
En esta sección se configura nuestro monitor.
Las opciones VendorName y ModelName son simplemente informativas. La opción Identifier servirá para realizar la relación entre monitor y tarjeta de video en la sección Screen.
Dos opciones muy importantes de esta sección son HorizSync y VertRefresh.
Es muy frecuente que Xorg no detecte correctamente las frecuencias a las que trabaja un monitor, con lo cual coloca valores “seguros” para no dañarlo. Pero al colocar estos valores, no se aprovechan al máximo las posibilidades del monitor.
Aquí es donde entran en juego los manuales de nuestro monitor. Al examinar los valores que soporta nuestro hardware, podremos configurar correctamente estas dos opciones.
Ejemplo de un LCD Viewsonic VA1903wb
2.6 Sección Device
Esta es la sección para configurar la tarjeta de video.
Si bien existen muchas opciones, las más comunes y con las cuales debería funcionar sin problemas son: Identifier y Driver. Identifier servirá para relacionar al monitor con la tarjeta de video.
Cuando no se puede detectar el driver de la tarjeta de video, es muy útil colocar como driver “vesa” o “vga“.
De esta manera se obtiene compatibilidad básica y se podrá ejecutar el servidor X. Una vez que funcione correctamente, se puede investigar e instalar el driver que corresponda a nuestra tarjeta de video.
2.6.1 Opciones disponibles
Identifier                             # [<cadena>]
Driver                                 # [<cadena>]
VendorName                             # [<cadena>]
BoardName                              # [<cadena>]
BusID                                  # [<cadena>]
Option     "NoAccel"                   # [<booleano>]
Option     "SWcursor"                  # [<booleano>]
Option     "Dac6Bit"                   # [<booleano>]
Option     "Dac8Bit"                   # [<booleano>]
Option     "BusType"                   # [<cadena>]
Option     "CPPIOMode"                 # [<booleano>]
Option     "CPusecTimeout"             # <entero>
Option     "AGPMode"                   # <entero>
Option     "AGPFastWrite"              # [<booleano>]
Option     "AGPSize"                   # <entero>
Option     "GARTSize"                  # <entero>
Option     "RingSize"                  # <entero>
Option     "BufferSize"                # <entero>
Option     "EnableDepthMoves"          # [<booleano>]
Option     "EnablePageFlip"            # [<booleano>]
Option     "NoBackBuffer"              # [<booleano>]
Option     "DMAForXv"                  # [<booleano>]
Option     "FBTexPercent"              # <entero>
Option     "DepthBits"                 # <entero>
Option     "PCIAPERSize"               # <entero>
Option     "AccelDFS"                  # [<booleano>]
Option     "DDCMode"                   # [<booleano>]
Option     "IgnoreEDID"                # [<booleano>]
Option     "DisplayPriority"           # [<cadena>]
Option     "PanelSize"                 # [<cadena>]
Option     "ForceMinDotClock"          # <frecuencia>
Option     "ColorTiling"               # [<booleano>]
Option     "VideoKey"                  # <entero>
Option     "RageTheatreCrystal"        # <entero>
Option     "RageTheatreTunerPort"      # <entero>
Option     "RageTheatreCompositePort"  # <entero>
Option     "RageTheatreSVideoPort"     # <entero>
Option     "TunerType"                 # <entero>
Option     "RageTheatreMicrocPath"     # <cadena>
Option     "RageTheatreMicrocType"     # <cadena>
Option     "ScalerWidth"               # <entero>
Option     "RenderAccel"               # [<booleano>]
Option     "SubPixelOrder"             # [<cadena>]
Option     "ShowCache"                 # [<booleano>]
Option     "DynamicClocks"             # [<booleano>]
Option     "VGAAccess"                 # [<booleano>]
Option     "ReverseDDC"                # [<booleano>]
Option     "LVDSProbePLL"              # [<booleano>]
Option     "AccelMethod"               # <cadena>
Option     "DRI"                       # [<booleano>]
Option     "ConnectorTable"            # <cadena>
Option     "DefaultConnectorTable"     # [<booleano>]
Option     "DefaultTMDSPLL"            # [<booleano>]
Option     "TVDACLoadDetect"           # [<booleano>]
Option     "ForceTVOut"                # [<booleano>]
Option     "TVStandard"                # <cadena>
Option     "IgnoreLidStatus"           # [<booleano>]
Option     "UseFBDev"                  # [<booleano>]
Option     "XAANoOffscreenPixmaps"     # [<booleano>]
Option     "DPMS"                      # [<booleano>]
Option     "BackingStore"              # [<booleano>]
2.7 Sección Screen
En esta sección se determina la relación entre la tarjeta de video y el monitor y se configuran aspectos de video como profundidad de colores y resolución.
El valor Identifier es el mismo que figurará en ServerLayout.
El valor Device será el mismo que figura en Identifier de la sección Device
El valor Monitor será el mismo que figura en Identifier de la sección Monitor.
La opción DefaultDepth indicará la profundidad de color predeterminada. Una buena elección será el valor 24.
Esta sección, además cuenta con subsecciones “Display”
Estas subsecciones son por profundidad de color 1,4,8,16 y 24 bits
Dentro de éstas se puede especificar la o las resoluciones deseadas.
La opción “Modes” permite indicar que resolución queremos utilizar con cada profundidad de color.
He aquí un ejemplo de la sección Screen:
Depth     "24"
En el ejemplo se indican cuatro resoluciones diferentes. Xorg al iniciar tratará de iniciarse con una profundidad de 24 bits (porque así lo indica la opción DefaultDepth) y con la primer resolución que tenga en Modes (en este caso 1280×1024″). De no poder iniciar con esa resolución utilizará la siguiente y así sucesivamente.
Se puede colocar una sola resolución para que X no tome la resolución “más cómoda”. Muchas veces nuestra tarjeta y monitor soportan resoluciones altas, pero Xorg se rehusa a utilizarlas y nos presenta una “lastimosa” resolución de 800×600. Colocando solo la resolución deseada, obligamos a Xorg a iniciarse en esa única resolución que tiene su opción Modes.
2.8 Sección DRI
Esta sección es siempre igual y se utiliza para activar la aceleración 3D.
Cabe aclarar que debe cargarse el módulo dri en la sección Modules arriba descripta.
Recuerden hacer SIEMPRE backups de los archivos que modifican, después no quiero que anden llorando por los rincones.
Anterior Jinete del dragón Siguiente Linux Magic Keys
Nov 21, 2009 @ 16:50:37
Vaya, me ha quedado claro como el agua. Gracias por el artículo.
Nov 21, 2009 @ 17:07:45
Dic 18, 2009 @ 19:47:39
Excelente post! La verdad es que hoy en día es escaso encontrar información tan util y con una calidad tan buena (Se acaba cansando uno de leer los man).
Dic 19, 2009 @ 07:04:50
Muchas gracias… Mi idea es mantener conceptos claros sin abundar en detalles, tener un breve know-how de las cosas que es lo que tanto les cuesta a quienes se inician en linux.
Mar 29, 2010 @ 13:59:14
¡Sí, la gente no entiende que los que llegan no tienen todo tan claro!
Mar 29, 2010 @ 13:58:07
Jojojo muchas gracias, me ayudo bastante a resolver mi problema con la resolución :) .

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución