Black screen or missing GUI

The following is for Ubuntu or Debian, although some other distros may be similar.

If you are trying to use a live-installer, do you have enough ram to handle the job? If you have only 64 to 128mb memory, probably not. Even 256mb can be trying sometimes for a live-installer, so you may be limited to using the "alternate" text-based installers (ubuntu-speak) to get the data laid on the disk without using a gui. (Note my warning about "is it worth it?" for those of you with 64 to 128mb in the first place.) You can also look for other text-based installers like netboot, etc.

Assuming you have enough ram, or are using a text-based installer, after the first reboot you may be faced with up to two major problems.

1) The first problem sometimes seen is just a black screen with maybe a flashing cursor after the yaboot boot loader finishes. To get past this point, you'll have to pass special kernel parameters to the yaboot boot loader (you may already be familiar with passing kernel parameters with grub for X86 boxes) by hitting TAB at the second-stage yaboot boot: prompt.

When you hit TAB, it will stop the automatic countdown, and now you will be shown some typical options you can try.

I won't go into all of them here, but just show a few as an example.

If you are using a live-installer, something like this may be appropriate:


Linux live-powerpc nosplash
Linux live-powerpc64 nosplash
Linux live-powerpc nosplash video=ofonly
Linux live-powerpc64 nosplash video=radeonfb

If you are using a text-based installer, you may want to issue something like this:

Linux nosplash
Linux nosplash video=ofonly
Linux powerpc64 nosplash video=radeonfb

You'll see my extensive use of nosplash. With Ubuntu, you get a splash screen that has been notoriously troublesome, so I always recommend NOT trying to use it until after you have overcome all other issues. I don't even try to fix it later, although it can be done, because I like to see what the computer is trying to do at boot time. Debian doesn't seem to want to force a splash-screen, so you probably won't need to use nosplash with Debian.

The point here is to get you past the black screen and then possibly on to the next problem!

Note: when you find a combination that works, you probably don't want to be typing these parameters in every time you boot, so you add these parameters to the "append=" line of your /etc/yaboot.conf file, and make the system aware of this change with sudo ybin -v (Non-sudo distros don't need sudo, but a root shell instead.)

2) If you are fortunate, you are done. However many now have to edit their /etc/X11/xorg.conf file with known good values to overwrite the installer values.

Now you can try to get to a virtual terminal via CTRL-ALT-F2 and login. If you can, great, go ahead and edit xorg.conf as root. The nano editor makes it easier. First let's make a copy of the file so we can return to square one if need be:

sudo cp  /etc/X11/xorg.conf  /etc/X11/xorg.conf.original

sudo  nano  /etc/X11/xorg.conf

If you haven't used the nano editor before, CTRL-O to write out your changes, and CTRL-X to quit. If your distro doesn't use sudo, you just need a root shell to edit, ie nano /etc/X11/xorg.conf

To try out these new values, I just logout and log back in. In a pinch, we can do it the windows way (ugh) by just rebooting. There - I said it. I've done this. :)

If for some reason you want to get back to square one, just put your original xorg.conf file back:


sudo cp /etc/X11/xorg.conf.original  /etc/X11/xorg.conf

But what if you can get past the yaboot black screen, but a virtual terminal doesn't work? You can go back in via rescue-mode or Linux-single mode to do your editing.

This means booting from your installation CD, and at the second stage boot prompt, get into rescue mode:


Linux rescue
Linux rescue64
Linux single
Linux rescue video=ofonly

It will now look like you are installing again, but at some point you'll be asked which partition you want to be dropped into a root shell. If you originally "used the whole disk" when using guided partitioning, it will typically be /dev/hda3, or /dev/sda3 depending. Customized partitioning means you'll have to find the partition designated as the root partition. If you can't remember, just try them all one at a time.

Once you do get to a shell prompt, you can use the vi-editor to edit these files. HELP - I'm familiar with vi, so it isn't too much of a problem, but I've never been able to get nano to work properly to make the job easier for newcomers. Anyone out there know if their distro works with nano in a rescue or single-mode?

Note that the options listed above may not work in all cases, so I refer you to the other threads/faqs/wikis for specifics to your machine. I just wanted to point out the typical stages of custom configuration that one might go through in tough cases.

It looks like a lot, but if you keep it fun, you won't be tempted to throw it all through the window. :)

3) Editing the Xorg.conf file
If you are in a debian-based environment (Debian or (K)(X)Ubuntu), you might want to try to have X configured automatically. This can be done by:

dpkg-reconfigure xserver-xorg

to restart Gnome, we try:

sudo gdm stop
sudo gdm start

for KDE:

sudo stop kdm
sudo start kdm

Hopefully you have a working X and all is fine. If this did not work for you, you might want to try to find the right monitor settings. We will use fbset, to find the right values in the monitor section of Xorg.conf.

fbset -x

This may give an output like this:

Mode "1600x1200"
    # D: 162.016 MHz, H: 75.010 kHz, V: 60.008 Hz
    DotClock 162.016
    HTimings 1600 1616 1624 1640
    VTimings 1200 1216 1224 1240
    Flags    "+HSync" "+VSync"

We will now copy these values like this in the Xorg.conf file:

Section "Monitor"
  DisplaySize  406 305
  HorizSync    30-76
  Identifier   "Monitor[0]"
  ModelName    "EIZO L885"
  Option       "DPMS"
  VendorName   "ENC"
  VertRefresh  43-61
#  UseModes     "Modes[0]"
  Mode "1600x1200"
                 DotClock 122.016
                 HTimings 1600 1616 1624 1640
                 VTimings 1200 1216 1224 1240
                 Flags    "-HSync" "-VSync"

4) Further tweaks
For ATI graphic cards it is necessary to add Option MonitorLayout=TDMS to the Device Section:

Section "Device"
  BoardName    "RV280 5962"
  BusID        "0:16:0"
  Driver       "radeon"
  Identifier   "Device[0]"
  VendorName   "ATI"
  Option "MonitorLayout" "TMDS"

for NVidia the option is:

Option "FlatPanel" "true"

This was however not tested. Maybe you can try and report this ? We can now try to start X again with gdm start or kdm start, like described above.

© 2002-2012 Jeroen Diederen. Drupal theme by Kiwi Themes.