Tag Archives: grub

Graphical boot splash screen with Nvidia binary drivers

Recently I had a hard time to bring graphical boot splash screen (Plymouth) to work on a Ubuntu 13.10 Saucy Salamander installation. I use the Nvidia binary driver and activated uvesafb therefor (see this blog post how to do this). However, it didn’t work. In the end two pieces were missing: Read more »

Secure Boot implementation of Ubuntu 12.10 (Quantal Quetzal)

Ubuntu 12.10 supports UEFI secure boot. I did some research in order to understand the actual implementation on Ubuntu and would like to share my findings. Since Windows 8 requires secure boot, most new Computer contain Microsoft’s Platform Key. Microsoft allows to sign own binaries with this Platform Key. As outlined in the Canonical blog post Ubuntu 12.10 uses a signed version of the EFI application Shim (to maintain the chain of trust) and Grub2 as its default boot manager.

Canonicals version of the Shim EFI application

Ubuntu’s 12.10 Shim EFI application is a early version of Shim which don’t has any support for MOKs (Machine Owner Keys). Shim was made by Matthew Garrett. He wrote two blog posts how Shim works, but because Ubuntu uses an older version not all of his description apply to Ubuntu’s Shim. Matthew Garrett also published its own Microsoft-signed version of Shim. Ubuntu however doesn’t use this signed version. Read more »

Convert MBR partition table to GPT (Ubuntu)

Since I have some big disks I started using GUID partition table (GPT). However, Ubuntu (12.10 in my case) installed itself using a oldschool MBR partition table (or MS-DOS partition table). There are ways to create a GPT while installing, but I missed that point… So I asked myself is it possible to convert the MBR partition table to a GUID partition table? Yes, and its quite easy…

In order to use GPT with nowadays BIOS there need to be a BIOS boot partition. However there are two prerequisites which you should check before converting: There need to be space between the MBR and the first partition (most  modern partition utilities start the first partition on the 1 MiB boundary):

$ sudo fdisk -l /dev/sda
....
Device    Boot    Start          End     Blocks  Id  System
/dev/sda1 *        2048    117186559   58592256  83  Linux

As you can see, my partition table meet this requirement. We use this partition to store the BIOS boot partition in it (Note: It should also work with a BIOS boot partition at another place, I never tried that).

Second, GRUB need to be 1.97~beta1 or newer. Check this by issuing

$ grub-install --version

If your system meets this requirements you’re ready to go. First backup the old MBR (and all important data, if you have any on the system in question), just in case anything goes wrong

sudo dd if=/dev/sda of=/root/sda-mbr.dd bs=512 count=1

Now it’s time for gdisk, the GPT equivalent to fdisk for the old partition tables. Starting this utility on a system with the old MBR partition table converts this automatically: Read more »