14

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

GRUB_DEFAULT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="vga=0x014c"
GRUB_CMDLINE_LINUX="vga=0x014c"
GRUB_GFXPAYLOAD_LINUX=1280x800x16

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

Jorge Castro
  • 73,717
gocio
  • 141

3 Answers3

15
  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. Let's 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:

     GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
     GRUB_CMDLINE_LINUX=""
    

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

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    GRUB_CMDLINE_LINUX="vga=0x0346"

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.

Pablo Bianchi
  • 17,371
Luis Alvarado
  • 216,643
4

First, for grub:

sudo nano /etc/default/grub

and change the line:

#GRUB_GFXMODE=640x480

to this:

GRUB_GFXMODE=1280x800 
GRUB_GFXPAYLOAD_LINUX=keep

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

source

mchid
  • 44,904
  • 8
  • 102
  • 162
2

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:

    GRUB_GFXPAYLOAD_LINUX=1280x800
    

    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.