Tell me more ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

When you boot from live CD, or doing the first boot after installing Ubuntu, splash screen looks awesome. But as soon as you enable nvidia-current driver, installed with apt-get, splash screen goes all crazy.

With crazy I mean that resolution is very low, font(I assume) is very weird and it all looks like it's been broken.

This happened with 10.04 and now again with 10.10.

How do I fix splash screen after enabling nvidia drivers?

share|improve this question
I have a question: I use a Compaq Evo D510 SFF with an HP Monitor.My graphics card is Intel Integrated Graphics (Brookdale). My problem is that the monitor is not detected - its says unknown instead of the Hewlitt Packard that was shown previously. Now in the Monitors preferences there's just one resoulution - 800x600. This happened after I installed the BURG Grub Customizer a few days ago ( in the Ubuntu 10.10 installations), and everything was a mess! :( :( I understand that this solution is for Nvidia and ATI cards. Can I use this on an Intel graphics card too?? Thanks! – user10964 Feb 16 '11 at 21:19
In X my resolution is set do 1600x900, but with sudo hwinfo --framebuffer or in grub's console, the maximum resolution is 1152x864. Anyone can tell me why is that??? Thankx – carlos Feb 16 '11 at 21:20
It also happened in 12.04, but instead I have an ATI driver – Emerson Hsieh May 24 '12 at 23:56

3 Answers

up vote 37 down vote accepted

That is easy. First of all:

sudo apt-get install v86d hwinfo
sudo hwinfo --framebuffer

This will show you your supported resolutions. Take note.

Then:

gksudo gedit /etc/default/grub

Search for - GRUB_GFXMODE=

below this you need to type: GRUB_GFXPAYLOAD_LINUX=1024x768 <- your-resolution-here

Save the file and then:

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-grub2
sudo update-initramfs -u
share|improve this answer
1  
Is there a downside to doing this? – ændrük Oct 11 '10 at 16:54
Thanks. It works great now :) – neziric Oct 11 '10 at 18:50
I used to install cryptsetup instead of your second step. It works same. – Extender Oct 16 '10 at 7:58
1  
It doesn't work for me, I'm using an NVIDIA 8600M. It used to work nicely with Maverick... – nerdy_kid Apr 27 '11 at 23:50
1  
excellent, this works fine on 12.04 in case anyone was wondering – Anake Apr 28 '12 at 14:13
show 3 more comments

The above solution might not work for you. In my case e.g. hwinfo doesn't show the supported resolutions. You can, however, get this information directly from grub.

Press c to get in the grub console and then enter vbeinfo to get the supported resolutions. If you native resolution is supported, use it. And use it directly as shown (i.e. 1680x1050x32, so include the colordepth). Get back by pressing ESC.

When you have the supported resolution edit /etc/default/grub and edit part of the file to look like this:

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
GRUB_GFXPAYLOAD_LINUX=1680x1050x32

Now run the following lines to make the splash show earlier and to actually commit the changes to grub.

echo "FRAMEBUFFER=y" | sudo tee -a /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u -k all
sudo update-grub

Hope this helps.

share|improve this answer
No, hwinfo did not give the correct resolution, but I used the nearest - which works OK. I also tried pressing C while booting (tried Shift and Escape too) but couldn't get into Grub console. – neziric Oct 11 '10 at 20:00
If you don't get the regular grub-screen (where you can select which kernel or OS to boot) you have to hold SHIFT while booting. When you get the grub screen, you press C to enter the console. – mniess Oct 12 '10 at 22:44

Here is a easy script to fix this: http://www.webupd8.org/2010/10/script-to-fix-ubuntu-plymouth-for.html

I don't know if this will change your alt+F2 problem as well


I think the problem is, that Nvidia GPUs need proprietary drivers that can't be built into the kernel, so they are loaded at a very late boot stage. So if I remember correctly, this script makes your computer load a generic vesa driver to show the splash screen. This actually makes your computer take longer to start (but I don't know if we're talking about seconds or milliseconds).

I personally wouldn't bother changing core parts of my system for an eyecandy, but as long as it works, it shure is nice.

share|improve this answer

protected by Oli Feb 16 '11 at 21:20

This question is protected to prevent "thanks!", "me too!", or spam answers by new users. To answer it, you must have earned at least 10 reputation on this site.

Not the answer you're looking for? Browse other questions tagged or ask your own question.