The XFree86 logfile is a text file, written by the
XFree86program, and designed to be useful for people who are trying to diagnose problems they are having with getting XFree86 to work.
When XFree86 starts, it creates a logfile which contains information about what happened when XFree86 started. It contains information about what modules were loaded, which
color depthis used etc. The file is especially useful when something goes awry, as reading it can help you find exactly what went wrong.
The file almost always resides in "/var/log/XFree86.0.log", but where it is placed is configurable.
The log begins with a section with some general system information before the actual work of starting the X server begins. It looks something like the following:
01] XFree86 Version 4.3.0 (Red Hat Linux release: 4.3.0-2)02] Release Date: 27 February 200303] X Protocol Version 11, Revision 0, Release 6.604] Build Operating System: Linux 2.4.20-3bigmem i686 [ELF] 05] Build Date: 27 February 200306] Build Host: porky.devel.redhat.com07] 08] Before reporting problems, check http://www.XFree86.Org/09] to make sure that you have the latest version.10] Module Loader present11] OS Kernel: Linux version 2.4.20-8 (email@example.com) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 17:54:28 EST 2003 12] Markers: (--) probed, (**) from config file, (=) default setting,13] (++) from command line, (!!) notice, (II) informational,14] (WW) warning, (EE) error, (NI) not implemented, (??) unknown.15] (=) Log file: "/var/log/XFree86.0.log", Time: Sat May 15 02:55:42 200416] (=) Using config file: "/etc/X11/XF86Config"
"01] "etc, have been inserted to make the file easier to refer to.)"
Line 1-2: Those lines tell us that this is version 4.3.0 and that it was released on
February 27, 2003. It's modern enough, although 4.4.0 has been released ( February 29, 2004).
Line 3: The
X protocolhasn't changed for ages and it is unlikely that it will change anytime soon.
Line 4-6: Build information. That the Build Host is "porky.devel.redhat.com" means that the user, unless he or she is an employee at
Red Hat, probably installed XFree86 from a binary rpm package.
Line 10: X managed to find the module loader, which is essential if X is going to use things like hardware accelerated graphics. Further down in the file, X tries to load all modules specified in
Line 12-14: The different types of messages printed in the log. Lines beginning with
"(--)", "(**)", "(=)", "(++)" and "(II)" are OK, the rest indicate errors of varying severity.
Line 15-16: Where the files are. In this log, they are both in the default location. The time field specifies the date and time of the execution that caused the log.
01] (=) ServerLayout "Anaconda Configured"02] (**) |-->Screen "Screen0" (0)03] (**) | |-->Monitor "Monitor0"04] (**) | |-->Device "NVIDIA GeForce 2 MX (generic)"05] (**) |-->Input Device "Mouse0"06] (**) |-->Input Device "Keyboard0"
After the initial messages, X begins to process the
ServerLayoutsection in the XF86Config. What is output in the log closely corresponds to what is written in the configuration file. The section defines what devices are used by the X server. In this case, a mouse, a keyboard and a monitor with a
GeForce 2graphics card. There may be multiple
ServerLayoutsections in the XF86Config, but only the first one will be parsed.
The first line,
(=) ServerLayout "Anaconda Configured"means that Red Hat's configuration tool Anaconda was used to generate the initial XF86Config file. The file may still have been changed manually afterwards. Other often seen values are "XFree86 Configure" meaning that XFree86's configuration tool
xf86configwas used, "Main Layout" or "Default Layout".
01] (**) Option "XkbRules" "xfree86"02] (**) XKB: rules: "xfree86"03] (**) Option "XkbModel" "macintosh"04] (**) XKB: model: "macintosh"05] (**) Option "XkbLayout" "us"06] (**) XKB: layout: "us"
These lines tell us that the user in the XF86Config requested a Macintosh keyboard with a US
keyboard layout. Other valid values for
Option "XkbModel"is "pc101", "pc105" and more. The output comes from a
Section "InputDevice"for a keyboard. Sometimes autorepeat is also specified
01] (**) Option "AutoRepeat" "500 30"
Which means that if a key is held down for more than 500 ms, X will begin repeating it with a speed of one character every 30 ms. However, some
desktop managers like GNOMEoverride those values and specifies their own autorepeat. Most often, the keyboard driver initialization ends with 01] (=)Keyboard: CustomKeycode disabled
The first keyboard driver in XFree86 was designed for PC keyboards. Then it was ported to other platforms with keyboards that can emit other
scan codes than what the AT keyboarddid. Therefore, to handle those keyboards the CustomKeycode option was added but should be disabled for most keyboards (which it is by default). Sometimes the message is thought to be an error, it is not.
01] (**) FontPath set to "/usr/lib/X11/fonts/misc,/usr/lib/X11/fonts/cyrillic,/more-paths.."02] (**) RgbPath set to "/usr/X11R6/lib/X11/rgb"03] (=) ModulePath set to "/usr/X11R6/lib/modules"
Line 1: All the directories in which the X server searches for fonts are output. The paths are defined with a number of
Section "Files"in XF86Config:
Section "Files" FontPath "/usr/lib/X11/fonts/misc" FontPath "/usr/lib/X11/fonts/Cyrillic" ... EndSection
Instead of letting X load all the fonts by itself you can use a fontserver.
xfsis a fontserver included in X which usually listens to port 7100. To use it you only need to specify one
Line 2: Specifies the path and firstname of the RGB database which is a file. In this case it would be located at
/usr/X11R6/lib/X11/rgb.txtand contain a list of color codes along with their color names. X itself appends the file ending.
Line 3: The path to where all modules are located. The default is usually fine. It is needed for XFree86 to be able to find the modules specified in
XFree86 loads a number of modules when it starts up. Most of them are optional and there are quite a few of them. Therefore, no two systems load exactly the same modules but the structure of the output the modules give in the logfile is mostly the same.
01] (II) LoadModule: "bitmap"02] (II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a03] (II) Module bit
In the example above, XFree86 successfully loaded module
bitmap. The first line specifies the modulename, the second path and filename to the module and the third to sixth, version information and vendor name. In older versions of XFree86 (4.0 and older) the output for modules is less verbose: 01] (II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a02] (II) Module bit
Section "Monitor"in XF86Config, boundary values for
vertical refreshand horizontal syncis specified like this:
Section "Monitor" HorizSync 31.5 - 48.5 VertRefresh 50.0 - 70.0 ... EndSection
Which produces output along these lines in the log
01] (II) ATI(0): VG150: Using hsync range of 30.00-62.00 kHz02] (II) ATI(0): VG150: Using vrefresh range of 50.00-75.00 Hz
Which further tells us that the
graphics carddriver is "ati" and the monitor name is "VG150". Those values aren't the values that will be used, they merely are the ranges in which X will probe for a suitable mode. 01] (II) MGA(0): Monitor name: CPD-100EST
This line is usually output by the graphics driver via DDC. The reported name may or may not correspond to the name given in
Section "Screen"and can be found on the backside of the monitor.
* [http://www.linux-mag.com/cgi-bin/printer.pl?issue=2000-09&article=gear Gearheads only: the XFree86 Arhitecture]
* [http://linuxwacom.sourceforge.net/index.php/howto/srvlayout The Linux Wacom Project: 5.3 - ServerLayout]
* [http://cvsweb.xfree86.org/cvsweb/xc/lib/xkbfile/XKBrules.h XKBRules.h CVS]
Wikimedia Foundation. 2010.
Look at other dictionaries:
XFree86 — Infobox Software name = XFree86 caption = developer = The XFree86 Project, Inc. released = ? frequently updated = yes programming language = C operating system = multiple language = Various genre = Windowing system license = 1.1 website =… … Wikipedia