Grub2 – the default boot-loader for new installations of Ubuntu 9.10 – has some nifty new features – including support for background images and custom font colours.
Whilst the previous version of GRUB could also support background images – it involved a hassle, some nifty navigation of folders and and editing some boot files. GRUB2 however supports this out of the box!

Install GRUB Background Package
A set of GRUB backgrounds is included in the Ubuntu repositories. Just install them via synaptic or install via the Terminal using: –
  • sudo apt-get install grub2-splashimages
The default choices aren’t exactly much laud over, but are a nice enough selection. You’ll find them in /usr/share/images/grub.

Choose An Image
If you want to use a background image be sure to FIRST make a backup of the files you’re editing. 
To choose one of the images from the grub2-splashimages packages you need to specify the file name in the grub boot appearance file: –
  • gksudo gedit /etc/grub.d/05_debian_theme
Find the following line: –
  • for i in {/boot/grub,/usr/share/images/grub}/moreblue-orbit-grub.{png,tga} ; do
Change: –
  • moreblue-orbit-grub
to the file name of an image in the /usr/share/images/grub folder.
Save and close.
You then MUST update GRUB2 by running: –
  • sudo update-grub2
Example
Change moreblue-orbit-grub to Plasma-lamp.
  • for i in {/boot/grub,/usr/share/images/grub}/Plasma-lamp.{png,tga} ; do
Use your own image
To use an image of your choice you need to resize it to 640×480 and save it as a .tga file. You then need to make sure you place it in the grub images folder above.

Thanks to webupd8
Eye Candy grub2 tweaks