Probably the most popular way to interact with any Unix-type system is via the X-windows interface. The free implementation of the X Consortium's X11R6 is XFree86.
I. Default XFree86 and Related Packages in Fermi Red Hat Linux v5.0.2
XFree86-3.3.2.3-18
XFree86-75dpi-fonts-3.3.2.3-18
XFree86-libs-3.3.2.3-18
XFree86-<server>-3.3.2.3-18
X11R6-contrib-3.3.1-1
xserver-wrapper-1.1-1
Where <server> is the correct server for the video card in a system.
II. Configuring X windows with Xconfigurator: Why?
A. XFree86 is a version of X11R6 that runs on many PC video cards, unlike, say, Sun or SGI which only have one or two options for video cards. So, when installing XFree86, you need to know what server (the actual binary that talks to the video card) to use with the hardware that's installed. Currently, there are 13 choices in the standard distribution. Which server should be used depends on the "chip set" used by your video card. The following should have been done during the installation of Linux. In case it did not work or your changed your video card you may have to do what is described below.
B. Which server for which video card: use Xconfigurator
1. PCI Probing should detect the correct card.
2. If the correct one is not installed, use rpm to install it:
a. Utilize the simple ftp client built into rpm to install the server:
rpm -ivh ftp://linux.fnal.gov/linux/current/i386/RedHat/RPMS/XFree86-<server>.i386.rpm
3. Restart Xconfigurator and continue.
C. Configuring for the Monitor - multiple guess.
1. Select the monitor from the list, if listed.
2. Select "Generic Multisync"
a. This may not be the best, but it should give reasonable results
b. The program will probe the monitor and select the best resolution
and color depth automatically.
3. Select "Custom"
a. Select reasonable values for resolution and vertical sync from the list
b. Select the closest vertical sync range but do not exceed the upper or lower limits of the monitor. Phyical damage may result! Check the manual that comes with the monitor.
III. Test it: 'startx'
A. Worst Case Scenario #1: Black Screen of Death
1. Symptom: No window, no cursor, no response from keyboard
a. (Ctrl-Alt-Backspace) should kill the X-session
b. (Ctrl-Alt-Delete) should reboot the system
note: neither of these will work, see next step
2. Solution: Hard reboot (ouch!) to bring system back.
3. Cause: Video card IRQ conflict, generally with the ethernet or SCSI adapter. To remedy, physically move cards around in the system. This is a bug in the server, which hopefully will be fixed in the next releases of XFree86.
B. Worst Case Scenario #2: Grey screen of uselessness
1. Symptom: Grey screen, cursor, no response from buttons (no menus)
2. Solution: Kill the X-session with (Ctrl-Alt-Backspace)
3. Cause: /tmp is in mode 000. To remedy set the mode on /tmp to 777.
C. Worst Case Scenario #3: Tease Mode
1. Symptom: X looks like it's going to start, but doesn't. One of the last message on the screen is "No valid modes found." Console prompt is returned.
2. Solution: Re-run Xconfigurator and choose "Generic Multisync" as the monitor.
3. You can also run the follwing command to help diagnose the problem:
X -probeonly >& /tmp/Xout.txt
This will create the file /tmp/Xout.txt which you can look at to help
determine a solution. Here's an example output
XFree86 Version 3.3.2.3 / X Window System
(protocol Version 11, revision 0, vendor release 6300)
Release Date: July 15 1998
If the server is older than 6-12 months, or if your card is newer
than the above date, look for a newer version before reporting
problems. (see http://www.XFree86.Org/FAQ)
Operating System: Linux 2.0.34 i686 [ELF]
Configured drivers:
S3: accelerated server for S3 graphics adaptors (Patchlevel 0)
newmmio, mmio_928, s3_generic
(using VT number 7)
XF86Config: /usr/X11R6/lib/X11/XF86Config
(**) stands for supplied, (--) stands for probed/default values
(**) XKB: keycodes: "xfree86"
(**) XKB: types: "default"
(**) XKB: compat: "default"
(**) XKB: symbols: "us(pc101)"
(**) XKB: geometry: "pc"
(**) XKB: rules: "xfree86"
(**) XKB: model: "pc101"
(**) XKB: layout: "us"
(**) Mouse: type: PS/2, device: /dev/mouse, buttons: 3
(**) Mouse: 3 button emulation (timeout: 50ms)
(**) S3: Graphics device ID: "Trio64V2/DX or /GX"
(**) S3: Monitor ID: "Acer Acerview 11D"
(--) S3: Mode "640x480" needs hsync freq of 36.46 kHz. Deleted.
(--) S3: Mode "800x600" needs hsync freq of 37.88 kHz. Deleted.
(--) S3: Mode "800x600" needs hsync freq of 48.08 kHz. Deleted.
(--) S3: Mode "1024x768" needs hsync freq of 48.36 kHz. Deleted.
(--) S3: Mode "1024x768" needs hsync freq of 56.48 kHz. Deleted.
(--) S3: Mode "1024x768" needs hsync freq of 62.50 kHz. Deleted.
(--) S3: Mode "1280x1024" needs hsync freq of 64.25 kHz. Deleted.
(--) S3: Mode "1280x1024" needs hsync freq of 78.86 kHz. Deleted.
(--) S3: Mode "1280x1024" needs hsync freq of 81.13 kHz. Deleted.
(--) S3: Mode "320x240" needs hsync freq of 39.38 kHz. Deleted.
(--) S3: Invalid vertical timing for mode "400x300". Deleted.
(--) S3: Mode "400x300" needs hsync freq of 37.88 kHz. Deleted.
(--) S3: Mode "400x300" needs hsync freq of 48.08 kHz. Deleted.
(--) S3: Mode "480x300" needs hsync freq of 37.80 kHz. Deleted.
(--) S3: Mode "480x300" needs hsync freq of 39.56 kHz. Deleted.
(--) S3: Mode "480x300" needs hsync freq of 48.00 kHz. Deleted.
Warning: The directory "/usr/X11R6/lib/X11/fonts/100dpi/" does
not exist.
Entry deleted from font path.
(**) FontPath set to "/usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/Speedo/,/usr/X11R6/lib/X11/fonts/75dpi/"
(--) S3: PCI: Trio64V2 rev 16, Linear FB @ 0xf8000000
(--) S3: chipset: Trio64V2/DX rev. 16
(--) S3: chipset driver: newmmio
(--) S3: card type: PCI
(--) S3: videoram: 1024k
(--) S3: Ramdac type: s3_trio64v2
(--) S3: Ramdac speed: 170 MHz
(--) S3: Using Trio64V2 programmable clock (MCLK 59.957 MHz)
(--) S3: Maximum allowed dot-clock: 170.000 MHz
(--) S3: There is no mode definition named "1600x1200"
Fatal server error:
No valid modes found.
When reporting a problem related to a server crash, please send
the full server output, not just the last messages
IV. Fine Tuning and Extra Tips
A. Higher Resolutions and Vertical Refresh Rates
1. A number of monitors exist that are not in the Xconfigurator list.
These can be found in /usr/X11R6/lib/X11/doc/Monitors file. To get the
best resolution out of your video card and monitor you may have to do some
massaging of the X window configuration file, /etc/X11/XF86Config. Here's
an example:
a. Terry Jones has a 19" Hitachi, model CM751U, monitor. It can operate at a horizontal sync rate of 31-95kHz and a vertical sync rate of 50-160 Hz. The physical screen resolution is 1600x1280. Running 'X -probeonly' and piping the results to a file reveals that the dot clock on his video card can run at 280MHz, and the amount of video memory he has is 4Mb.
b. While doing a normal configuration of X with Xconfigurator, the highest resolution it offers is 1280x1024.
c. Looking in the /usr/X11R6/lib/X11/doc/Monitors file there are several entries for 1600x1200. Choose one that has a Vertical Refresh rate between 70-80 Hz. (Avoid 60 Hz as this is the rate that flourescent lights flash at and staring at a screen that has the same frequency can cause headaches and irratability.) There is one entry that refreshes at 75Hz. Take the line that starts with the word "Modeline" and insert it near the bottom of the section labelled "Monitor section" but before the EndSection line.
d. In the next section, the "Screen sections," find the section
that corresponds to the server installed on the machine. This will either
be in the SVGA or Accelerated Section. In the Modes line add the mode you
just added to the "Monitor section." This is what it should look
like:
Modes "1600x1200" "1280x1024" "1024x768"
e. Save the file, exit the X window session (if started) and restart with startx. Everything *should* work correctly.
f. Fine tuning may need to be done either with xvidtune or on-monitor controls to center and size the image. Using xvidtune you can adjust the timings and push the "show" button to dump a standard XF86Config style Modeline line. This can then be copied into the XF86Config file in place of the original line you placed.
B. X Login Screen: XDM
1. Q: How do I get that cute penguin login screen, instead of the dull drab console screen?
2. A: Edit the /etc/inittab file to make it enter run level 5 instead
of the default run level of 3. Look for the following line in the inittab
file and change the 3 to a 5:
id:3:initdefault:
C. Higher Color Depths
1. Q: How do I get higher color depths so Netscape and my graphics look better?
2. A: If you prefer to use the console login screen, and start X with
'startx' then use these options with startx:
startx -- -bpp NN where NN can be 16, 24 or 32
3. A: If you are using xdm as your login screen then you need to edit
the /etc/X11/xdm/Xservers file and make the entry look like this (for 16
bit color depth):
:0 local /usr/X11R6/bin/X -bpp 16
4. A: This is the catch-all that will work with both "startx" and xdm: In the /etc/X11/XFConfig file in the "Screen section" under the entry for your type of video card (i.e., svga, vga16, vga2 or accel) add this line:
DefaultColorDepth 16
D. The Virtual Desktop
1. Q: When I first log in, and startx, I can push my mouse to one edge and the desktop moves. How can I fix this?
2. A: One of 2 ways:
a. More than likely, you have set your system up with more than one resolution (as defined in the "Modes" line in the "Screen sections" of your XF86Config file). To switch to another resolution press the keys Ctrl-Alt-+ (plus key). Hitting this multiple times will scroll you through the various resolutions you have configured.
b. Edit the /etc/X11/XF86Config file and remove all the lines that start with "Virtual" in the Screen section. Then edit the "Mode" line to re-arrange the modes that are available so the highest is first.
E. Window Managers
1. Three window managers come in the current Fermi Red Hat distribution at this time. They are the AnotherLevel, TheNextLevel and Lesstif Window Manager, with the AnotherLevel being the default window manager. Extensive man pages exist for all of these window managers. Another utility that can be used to customize the look and feel of your window manager is called wmconfig.
2. There are dozens of other window managers available, but we leave these up to you to install and configure, and we don't recommend that you let anyone else know about them, just to cut down on the "I want to change the color of..." type questions. Having said that, I have used kde, gnome, and xfce.