I've got Toshiba U500 (nVidia). Tried changing /etc/default/grub in many ways, now I've got:

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

0x014c is what vbeinfo in Grub related to 1280x800x16

I just wish my laptop could boot with nice, high resolution font and let tty consoles stay that way... How is that possible?

Regards, gocio

3 Answers 3

  1. Install hwinfo since that is the only way i know how. (sudo apt-get install hwinfo OR sudo aptitude install hwinfo)

  2. Go to the console (gnome-terminal or any other) and type sudo hwinfo --framebuffer and you will get a short or long list depending on what video card you have. The list will look something like this:

    Mode 0x0335: 320x240 (+640), 16 bits 
    Mode 0x0336: 320x240 (+1280), 24 bits
    Mode 0x033d: 640x400 (+1280), 16 bits
    Mode 0x033e: 640x400 (+2560), 24 bits
    Mode 0x0345: 1600x1200 (+1600), 8 bits
    Mode 0x0346: 1600x1200 (+3200), 16 bits
    Mode 0x0347: 1400x1050 (+1400), 8 bits
    Mode 0x0348: 1400x1050 (+2800), 16 bits
    Mode 0x0349: 1400x1050 (+5600), 24 bits
  3. Lets say you want the 1600x1200 16Bit Resolution. Then you take the Hex value to the right, in that case 0x0346 and you write it down.

  4. Open /etc/default/grub. You will find 2 lines similar to this:


    On the second one, edit that line so it looks like this:


    As you can see you just put the hex value at the end of the linux line in the grub file and save it. Exit, and type sudo update-grub. Wait until it's finished and reboot.

  • Can we specify custom resolution like 1600x800?
    – Starx
    Aug 6, 2013 at 4:29
  • @Starx That would actually depend on the combination of your monitor and video card in VESA mode. If both support it then it will appear on the list and you will be able to see it correctly. But I seriously need to update this since this applies to obsolete versions of Ubuntu. Aug 6, 2013 at 4:48

First, for grub:

sudo nano /etc/default/grub

and change the line:


to this:


Next, add framebuffer to use the card:

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

and don't forget to update grub!

sudo update-grub


  • echo "echo . . ." is not a typo. I have tested both methods on Nvidia and the subsequent echo is necessary. Removing the extra echo might work on Intel systems but not on Nvidia. Granted, it was a bit older but other users have reported that this works. All I can say is that, if this method doesn't work, try it without the other echo but I cannot verify that removing the extra echo works because it hasn't worked for me.
    – mchid
    Dec 9, 2021 at 0:56
  • Just to be clear, here's what it would look like without the extra echo: echo "FRAMEBUFFER=y"
    – mchid
    Dec 9, 2021 at 1:01

To change the resolution of the TTY's (Ctrl+Alt+F1 through F6), the steps outlined on the Ubuntu Community Wiki should do the trick:

This should work in Ubuntu 9.10 and later, Linux Mint 8 and later, and probably also for any distribution based on those versions of Ubuntu that uses GRUB 2.

  1. Boot Linux while holding Left shift.
    The GRUB 2 menu screen appears.
  2. Press C to access the GRUB command line.
  3. Type vbeinfo Enter to access a list of available resolutions.
  4. Pick a resolution from the list and write it down.
  5. Press Esc to leave the GRUB command line.
  6. Boot into Linux.
  7. Open /etc/default/grub in your favorite text editor with root privileges.

    sudo nano /etc/default/grub
  8. Add the following line, where you replace 1280x800 by the resolution you wrote down:


    I put it right after the #GRUB_GFXMODE line.

  9. Save and exit.
  10. Update the GRUB configuration.

    sudo update-grub
  11. Reboot.

    sudo reboot

Now the TTY's should have the specified resolution. Unfortunately, you're stuck with only 16 colors.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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