Why are the virtual consoles completely blank

tty

When I go from my graphical session to a virtual console by Ctrl + Alt + F i (with i in 1 – 7 and 9-12) I see a completely black screen. Only on F8 I see the GUI. Not even a blinking coursor on the others. When I enter anything, I can't see anything.

What is the problem and how do I fix it?

My system

$ uname -a
Linux pc09 3.13.0-36-generic #63-Ubuntu SMP Wed Sep 3 21:30:07 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/issue
Linux Mint 17 Qiana \n \l
$ lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK110B [GeForce GTX Titan Black] (rev a1)
$ lspci -k | grep -A 2 -i "VGA"
01:00.0 VGA compatible controller: NVIDIA Corporation GK110B [GeForce GTX Titan Black] (rev a1)
Subsystem: NVIDIA Corporation Device 1066
Kernel driver in use: nvidia

edit: I tried the first steps suggested on http://forums.linuxmint.com/viewtopic.php?f=42&t=168108 and the problem seems to be the framebuffer.

I did this:

This has been an issue that has been an annoyance with Nvidia
proprietary drivers for two or three years, and has kept me away from
Ubuntu-based distros for some time. Finally, on the Nvidia forum, I
found the workaround I'd been looking for. The problem arises with
Nvidia proprietary drivers (Nouveau doesn't show this behavior): when
you push ctrl-alt-F1, you get only a black screen or, at best, a
flashing cursor that does nothing. The problem apparently, has to do
with the way the framebuffer in implemented and this needs to be
disabled. To see if this is the problem, first you need to make a
couple of minor modifications to /etc/default/grub – but first, make a
backup!

$ sudo cp /etc/default/grub /etc/default/grub.bak

Now edit the file by entering

$ sudo pluma /etc/default/grub

in the editor, uncomment the lines

#GRUB_TERMINAL=console
#GRUB_GFXMODE=640x480

by removing the #. Save the file and run undate-grub to implement the changes

sudo update-grub

Now I have (a low resultion) tty working again 🙂

Best Answer

That's because you are using the proprietary NVidia driver.

When I was OpenSUSE with the proprietary driver my consoles also would be black, now that I am using Ubuntu again they get an even "cooler" effect: (Don't worry, the screen is fine!) Other cool stuff the NVidia driver can do

The reason for this seems to be the NVidia kernel driver which, once initialized by the DDX (=device dependant X11) driver, cannot cope with requests from any other video subsystem (such as fbdev, VESA, Linux console, ...).

The console will still be activated when switching to it. To verify this, try logging in blindly into the console and enter something that will be easy to notice, such as wall or reboot:

<Your username>
<Your password>
echo "Test message" >/tmp/message; wall </tmp/message

After returning from the console you should see something like this in any terminal window:

Broadcast message from <Your username>@<Hostname>
        (/dev/tty2) at 23:38 ...

Test message

Unfortunately I do not know of any way to fix this except for using the OpenSource driver ("nouveau"). VT switching works fine using that driver, but that driver creates other issues (spontaneous crashes and generally less performance in my case). I'm also neither a kernel developer nor an NVidia developer so I can't do much more than analyzing the symptoms myself.