Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've recently clean-reinstalled Maverick on my computer. It uses propietary Nvidia drivers.

Everything runs just fine, except that I'm seeing lots of ugly text when booting and shutting down Ubuntu.

I don't mind the text at all; in fact, I like seeing the startup/shutting down information.

What I don't like it's its ugliness!

When my computer goes to console mode - (booting up, shutting down or CTRL+ALT+F1) the text is super big - I can't take a screenshot of it, but it looks like a 640x480 resolution. My monitor normally works at 1440x900.

I remember that the console text that appeared while installing from the CD was nice and small.

How can I make the console text look like it looked while booting from the CD?

share|improve this question
up vote 17 down vote accepted

I've found a solution that works from this forum post

In short:

Open /etc/default/grub with your favorite editor as root.

Localize the line that says GRUB_GFXMODE= ... and change it to the resolution you want. Add another line for a new variable called GRUB_GFXPAYLOAD with the same resolution. It should look similar to this:


Save and exit. Then edit as root /etc/grub.d/00_header

Localize the line that says if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=... . As before, change the resolution there to the one you want and add another line for payload:

if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=1440x900x32 ; fi
if [ "x${GRUB_GFXPAYLOAD}" = "x" ] ; then GRUB_GFXPAYLOAD=1440x900x32 ; fi

Finally, locate the line that says set gfxmode=${GRUB_GFXMODE} and add a line for payload below it. It should look like this:

set gfxmode=${GRUB_GFXMODE}
set gfxpayload=${GRUB_GFXPAYLOAD}

Save and exit.

Still as root, refresh grub with


Reboot, and both the grub menu and the console should have nicer resolutions.


share|improve this answer
My solution will only work for grub2, I think. Are you using grub 1, maybe? If yes, try with a lower resolution first - for example 1024x768x32. Regards! – egarcia Jan 19 '11 at 9:59
Looks like that at the moment grub2 doesn't use 'GRUB_GFXPAYLOAD' option, only 'GRUB_GFXPAYLOAD_LINUX'. See the official documentation on grub2: – mbaitoff Sep 15 '11 at 9:16
It would be more interesting to see a response that is more generic, that will work with most resolutions. – sorin Nov 17 '12 at 16:07
This answer is depreciated and did not work for me on Ubuntu Server 12.04 LTS. Furthermore, it involves editing a file named 00_header which really should not be edited. – Gin Gordon Jun 23 '14 at 12:34
This solution failed to me with 1440x900x32 but it did work for 1024x768x24. I am running Ubuntu Server 14.04 LTS in VirtualBox 4.3.26. Vranger's answer worked smoother. – Kyr Jul 10 '15 at 12:02

This helped me on Ubuntu 14.04 with ESXi 5.5 :

:~$ sudo vi /etc/default/grub

Change line to:


:~$ sudo update-grub :~$ sudo reboot -r now

Use 795 or 799 for higher resolution, and see: for more details.

share|improve this answer
+1. Works like a charm. – Jin Kwon Jun 14 '14 at 12:03
This solutions worked for me. The splash option froze the login screen and it is unnecessary in my opinion. Btw I really don't like the cryptic options like 792! – Kyr Jul 10 '15 at 11:52
its deprecated in 15.04 – Jiří Doubravský Aug 21 '15 at 21:57
works on fedora 21 too – edward torvalds Aug 31 '15 at 12:09
@JiříDoubravský then what to do? other answers dont work – edward torvalds Aug 31 '15 at 12:09

Other answers, despite their complexity, did not work for me on Ubuntu Server 12.04 LTS. In my case, I wanted to have the Linux kernel console boot into a graphics mode supported by both my old CRT monitor and the integrated Intel graphics of my server.

First, install hwinfo:

sudo apt-get install hwinfo
  • sudo hwinfo --monitor will list the graphics modes supported by the monitor.
  • sudo hwinfo --framebuffer will list the graphics modes supported by the computer.

EDIT: The hwinfo command may be no longer available. One may use xrandr instead.

Now, start editing /etc/default/grub:

sudo nano /etc/default/grub

Assuming a previously unedited file, make the following changes:

The variable GRUB_CMDLINE_LINUX_DEFAULT should contain at least nomodeset, perhaps in addition to quiet and splash on desktop systems.


On server systems, uncomment GRUB_TERMINAL=console to see more messages passing during boot before entering in the graphics console.

Leave this line as a comment:


At the end of the file, add a line:


or replace the value by any other (comma separated) mode(s) that is(are) supported by your hardware. The values text, keep, auto, vga and ask should also work.

Finally, after saving the edited /etc/default/grub with Ctrl+O and exiting with Ctrl+X, issue the following commands:

sudo apt-get autoremove
sudo update-grub
sudo reboot

The first command will remove old Linux kernels as well as other files that are no longer needed. This saves a little time with update-grub.

This answer will also work to decrease the resolution and/or refresh rate or frame buffer frequency on down-clocked systems. CRT monitors typically show flickering stripes when the refresh frequency is too high.

share|improve this answer
there is no hwinfo anymore – obayhan Feb 12 at 10:05
@obayhan Well noted! You may use xrandr instead. – Gin Gordon Feb 13 at 15:26

Just some personal background: in my other computer I have no problem with that fancy mode (it's 160 cols x 60 rows, but it has a 4:3 CRT monitor). It's equipped with a TNT2 (yes, I swear), and that mode was promptly displayed on first boot. Problem is, it does this by loading the nouveau driver, and this guy is still a bit faulty (in my case, it hangs the whole system when trying to move windows). So, to have an usable system, I had to downgrade to the old and stable nv driver, and also disabling mode-setting ('cause the kernel would always load nouveau when enabled). Note that I'm not using nVidia proprietary drivers, but like you, I was switched back to 80x25 in console mode.

This is because the nv driver doesn't use kernel mode-setting. Now, I don't know about the proprietary drivers, but I'm guessing they might have changed your configuration in order to be usable, and possibly that's why you're seeing that "big" mode. Possibly they disabled mode-setting when installed. That's why you see the "small" text mode when booting from the Live CD.

You could try booting up with a different VESA mode, but that depends a lot on your hardware. For that, please check For example, if you'd like to try booting your text mode on 1024x640, you'll find that the mode ID is 877.

So, when booting, hold the SHIFT key (in case you don't have a GRUB timeout) to bring up GRUB's menu. Select the mode which you wish to boot and press 'e' (to edit the commands). At the end of the "kernel" command, add vga=877. The number is the mode ID, if you want to try other modes, replace it with the desired number.

Also, at that same Wikipedia page, you could also try the helpful "Universal format" right below the modes table. That hwinfo command is quite useful.

share|improve this answer
I use grub2, not grub. I didn't know that grub was responsible for the console, so I didn't mention that in my question. Sorry. I've found a solution with grub2. Regards! – egarcia Dec 22 '10 at 4:55
To be true, the solution you found also seem simpler. Glad you sorted it out, and thanks for sharing! – Charles Roberto Canato Dec 22 '10 at 7:03
  1. Start in the GRUB menu
  2. Press E for a command line
  3. Run vbeinfo and make a decision (e.g. 1920x1200x32).
  4. Start your system again
  5. sudo nano /etc/default/grub
  6. Change GRUB_GFXMODE= (e.g. GRUB_GFXMODE=1920x1200x32)
  8. sudo update-grub
  9. reboot your system
share|improve this answer

This will not change the font on boot, but for the console on Ctrl+Alt+F[1-6]

Install the custom Ubuntu fonts for your console:

sudo apt-get install fonts-ubuntu-font-family-console

And create a script /usr/local/bin/fontset with this command:

setfont /usr/share/consolefonts/Uni3-TerminusBold32x16.psf.gz

(choose the desired fon out of the folder /usr/share/consolefonts/)

You can either call fontset each time on your console after using Ctrl+Alt+F1

or add this line to your /root/.profile

[ ! -t 0 ] && sleep 1 & /usr/local/bin/fontset

(don't add this to your users .profile or you get an error on a graphical boot)

source: Resize font on boot message screen and console

share|improve this answer

Why i answer this threat even if it's very old? The answer is pretty easy, because so many other threat refer to it.

If vbeinfo or hwinfo --framebuffer doesn't show the native resolution of your display, then disable vesa, to do so remove vga= options in:

sudo nano /etc/default/grub

Search for GRUB_CMDLINE_LINUX_DEFAULT= and remove vga= if you find it.

If you have remove the option don't forget to generate a new grub.cfg:

sudo update-grub

If you don't know you did it well, then just reboot and open a terminal:

grep vga /proc/cmdline
grep -ir vga /etc/modprobe.d/

If grep doesn't show anything, then you removed the vga= option.

Now install uvesafb:

sudo apt-get install v86d

Make sure the uvesafb module is included into your initrd. Add it to the end of /etc/initramfs-tools/modules:

sudo sh -c "echo uvesafb >> /etc/initramfs-tools/modules"

To see what modes are available:

sudo modprobe uvesafb
cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes

Now configure uvesafb mode_option=YOURxResoultion-BitColorMode e.g. 1280x1024-32:

sudo sh -c "echo options uvesafb mode_option=1280x1024-32 scroll=ywrap > /etc/modprobe.d/uvesafb.conf"

Don't forget to rebuild your initrd:

sudo update-initramfs -k all -u

Now you can reboot!

See this for more details. It is for debian, but it also works for ubuntu. I hope it helped you and it should be more generic than using grub2.

share|improve this answer
Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – fossfreedom Sep 5 '15 at 14:08

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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