X server fails to start with error - Fatal server error: could not open default font 'fixed'

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 6.4
  • xorg-x11-server-Xorg-1.13.0-11.el6
  • xorg-x11-server-Xvfb-1.13.0-11.el6
  • libXfont-1.4.1-2.el6_1

Issue

  • X server fails to start after a system update.
  • The below messages are observed in Xorg log:
[   723.507] [dix] Could not init font path element catalogue:/etc/X11/fontpath.d, removing from list!
[   723.507] [dix] Could not init font path element built-ins, removing from list!
[   723.507] 
Fatal server error:
[   723.508] could not open default font 'fixed'
[   723.508] (EE) 
Please consult the Red Hat, Inc. support 
         at https://www.redhat.com/apps/support/
 for help. 
[   723.508] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[   723.508] (EE) 
[   723.681] Server terminated with error (1). Closing log file.
  • Running startx and Xvfb fails with a similar error.

Resolution

There are several different causes for this error; thus, the approaches below should be tried in order while verifying after each section if the changes have resolved the issue, by restarting X or rebooting.

Updating or Installing the libXfont package

  • Update or install the libXfont package by running:

    # yum -y update libXfont
    # yum -y install libXfont
    
  • For example, libXfont-1.4.5-2.el6 was required for this version of X server.

Install common fonts or X11 packages that may be missing:

  • Ensure that all packages for X are installed:

    • Install the minimal X Window System group:
    # yum groupinstall -y "X Window System"
    
    • And if it's ok to update X, then run:
    # yum groupupdate -y "X Window System"
    
  • Install a few fonts and rebuild the font cache by running:

    # yum install xorg-x11-fonts-{Type1,misc,100dpi}
    
    # yum install xorg-x11-fonts-ISO8859-1-{100dpi,75dpi}
    
    # fc-cache -f 
    

Update the xorg.conf to specify RgbPath and Fontpath

  • If the above does not help, update the RgbPath in xorg.conf

    • Add following to /etc/X11/xorg.conf
    Section "Files"
      RgbPath   "/usr/share/X11/rgb.txt"
    EndSection
    
    • Otherwise, if that does not work then try without the '.txt'
    Section "Files"
      RgbPath   "/usr/share/X11/rgb"
    EndSection
    
  • Try manually specifying some of the font paths directly:

    • Edit /etc/X11/xorg.conf and aff the following to the "Files" section:
    Section "Files"
      FontPath        "/usr/share/fonts/default/Type1"
      FontPath        "/usr/share/X11/fonts/misc"
      FontPath        "/usr/share/X11/fonts/75dpi"
      FontPath        "/usr/share/X11/fonts/100dpi"
    EndSection
    

Root Cause

  • The X server was updated to latest release without supporting the libXfont package.

Diagnostic Steps

  • Booting the system in runelvel 5 or runing the startx command from runlevel 3 produces the error messages.

  • Running Xvfb as below shows a similar issue

    Xvfb :1 -screen 0 800x600x24
    
  • For a working X11 environment, the current fontpath can be checked with:

    $ xset -q | grep -E 'Font Path' -A1
    Font Path:
    catalogue:/etc/X11/fontpath.d,built-ins
    

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments