can't invoke virtual consoles

sktsee sktsee at tulsaconnect.com
Mon Feb 18 17:59:25 UTC 2008


On Sun, 2008-02-17 at 10:27 -0500, geoffrey froner wrote:
> Hello and thank you for your offer of help.  I've attached my answers
> as a file.  I wasnt aware of how rapidly you or your colleagues
> respond and so wasnt explicit as to the problem which I will try to
> rectify.  When I press Alt-Ctrl-F# I get a blank screen, though I can
> return to the GUI desktop with Alt-Ctrl-F7.  I noticed that the on
> light on the monitor changes from green to amber and thinking that
> might be the problem, I switched the monitor off and then on again.
> Then I get a message that the monitor is in power saving mode; the
> only option I have is to invoke the GUI.  
> 
[major snippage]

That your machine can do vga text mode is good news. The bad news is
that your hardware, or the xorg intel driver it uses doesn't like
switching modes. It is very likely that its the driver since there's a
number of bug reports about xserver-xorg-video-intel problems with vt
switching. Now there is currently a new version of the driver that's in
the gutsy-proposed repository. It has some fixes, though I don't know if
any specifically would address your problem. I wouldn't install it
except as a last resort.

One thing I forgot to mention in my last message was about Desktop
Effects. If its enabled, you should turn it off while troubleshooting.
Compiz is known to cause problems with framebuffer drivers used with
various graphics controllers. Mine for one.

The following instructions are the steps that hopefully will get your
framebuffer driver and console to load correctly on boot. Since your
machine doesn't switch from graphical to vga text mode nicely, I can't
say these instructions will definitely work. OTOH, maybe they will!

You'll need to use sudo to carry out each task

Un-blacklist the blacklisted fb drivers
Edit /etc/modprobe.d/blacklist-framebuffer and comment out (#) the
following entries like so.
# blacklist intelfb
# blacklist vesafb 
# blacklist vga16fb

Add fb modules to the initrd image so modprobe can load them
Edit /etc/initramfs-tools/modules and add the following entries to the
bottom of the file
vgastate
fbcon
vesafb
intelfb
vga16fb

Optional:
Adjust initramfs-tools hook script
Edit /usr/share/initramfs-tools/hooks/kernelextras and find the section
at the bottom that reads "# And add vga16fb for usplash to use as well"
Comment out the following lines
# manual_add_modules vga16fb

# if [ ${fbcon} = "y" ]; then
#       force_load fbcon
# fi

Update the initrd image
First backup current image. Update-initramfs is supposed to do this, but
I've noticed some inconsistency in creating the backup if there's
already one present.
cd /boot
sudo cp initrd-img-2.6.22-14-generic initrd-img-2.6.22-14-generic-backup
sudo update-initramfs -u
This should create a new initrd image that has the required fb and fbcon
drivers manually included so they can be found by modprobe during boot.
If for whatever reason the new initrd-img fails to load, you will need
to reboot with the LiveCD and mount the drive partition that
contains /boot/initrd-img-xxxxx and rename the backed up image to the
original filename. Alternatively, you can edit the initrd line in the
grub boot menu at boot time to point initrd= to the backed up image
in /boot. See the link below on how to change boot parameters on a
temporary basis in grub.

Decide which fb driver to use
Either vesafb or intelfb should work for your graphics controller. I
can't speak to the performance of the intelfb since I don't have any
hardware that uses Intel's integrated graphics. I would try the vesafb
first. To select it, you'll need to use the "vga=" syntax for your
kernel boot option. For instance, to set the console to 800x600 with
8-bit color depth you would use "vga=0x0303" (available modes listed
with the hwinfo --framebuffer command) So your kernel line in grub menu
would look something like this (on 1 line)

kernel  /boot/vmlinuz-2.6.22-14-generic
root=UUID=373c8094-13c8-4d7c-9a39-a12ce3f51434 ro quiet splash
vga=0x0303

Refer to this page on how to modify kernel boot parameters in grub on a
temporary basis
https://help.ubuntu.com/community/GrubHowto#head-7d876114f64c154224630a01c0bd9c4d335e931d

Also, for the purpose of troubleshooting, I would remove the splash
option from the kernel line. 

To use the intelfb driver use the "video=<driver>:option1,option2=value"
syntax. So an example for your machine would be
"video=intelfb:mode=800x600-8 at 60" This is the equivalent of the vesafb
setting listed above. If you wish to use a higher refresh rate and/or
resolution, change it whatever your monitor timings allow as listed by
that hwinfo --framebuffer command. For more info on available options
for the intelfb and vesafb drivers refer to
http://www.mjmwired.net/kernel/Documentation/fb/intelfb.txt and
http://www.mjmwired.net/kernel/Documentation/fb/vesafb.txt

If you are still having a problem with vt switching,look
at /var/log/Xorg.0.log and "dmesg |grep fb." for clues to diagnose the
problem.

-- 
sktsee






More information about the ubuntu-users mailing list