How to use the Linux Foundation's PreLoader?

88

Setting up PreLoader

  • Find and mount your EFI system partition and backup its contents. Some files may be manufacturer specific and cannot be restored by reinstalling Windows.
    • In a working UEFI Ubuntu installation it is mounted as /boot/efi/ and at least contains a folder named EFI. From the platform perspective (your computer) this folder is \EFI\ during the boot stage. ( /media/my_efi_system_partition/EFI = \EFI\ )
  • Copy or rename which ever EFI loader you want to use to \EFI\BOOT\loader.efi. Some loaders like gummiboot need to be configured properly.
  • Copy PreLoader.efi to \EFI\BOOT\bootx64.efi and HashTool.efi to the same directory.

You can find more detailed explanations over at Rod Smith's site.

Using HashTool

If you followed the instructions carefully and have Secure Boot enabled, you should be greeted by the following screens upon next boot, which guide you through enrolling the hash of the unsigned loader that would otherwise break the chain of trust.

┌──────────────────────────────────────────────────────────────────────────────┐
│                            Failed to start loader                            │
│                                                                              │
│          It should be called loader.efi (in the current directory)           │
│                     Please enrol its hash and try again                      │
│                                                                              │
│                I will now execute HashTool for you to do this                │
│                                                                              │
│                                                                              │
│                                     ┌────┐                                   │
│                                     │ OK │                                   │
│                                     └────┘                                   │  
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘

┌──────────────────────────────────────────────────────────────────────────────┐
│                                Select Binary                                 │
│                                                                              │
│               The Selected Binary will have its hash Enrolled                │
│            This means it will Subsequently Boot with no prompting            │
│    Remember to make sure it is a genuine binary before Enroling its hash     │
│                                                                              │
│                                                                              │
│                            ┌─────────────────────┐                           │
│                            │     Enroll Hash     │                           │
│                            │ Reboot to UEFI Menu │                           │
│                            │    Reboot System    │                           │
│                            │        Exit         │                           │
│                            └─────────────────────┘                           │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘

┌──────────────────────────────────────────────────────────────────────────────┐
│                                Select Binary                                 │
│                                                                              │
│               The Selected Binary will have its hash Enrolled                │
│            This means it will Subsequently Boot with no prompting            │
│    Remember to make sure it is a genuine binary before Enroling its hash     │
│                                                                              │
│                                                                              │
│                                ┌──────────────┐                              │
│                                │     ../      │                              │
│                                │  loader.efi  │                              │
│                                │ HashTool.efi │                              │
│                                │ bootx64.efi  │                              │
│                                └──────────────┘                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘

┌──────────────────────────────────────────────────────────────────────────────┐
│                      Enroll this hash into MOK database?                     │
│                                                                              │
│                               File: \loader.efi                              │
│     Hash: 8D1B74227CB2EE6B23B829595B761BAA34D171337F70D44ABF542D5318BDBA08   │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                     ┌─────┐                                  │
│                                     │ No  │                                  │
│                                     │ Yes │                                  │
│                                     └─────┘                                  │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘
Share:
88

Related videos on Youtube

youngtackpark
Author by

youngtackpark

Updated on September 18, 2022

Comments

  • youngtackpark
    youngtackpark over 1 year

    I have a pySpark dataframe and want to make a several sub dataframes using groupBy operation. For example, I have a DF like

           subject  relation object 
    DF =      s1       p       o1
              s2       p       o2
              s3       q       o3
              s4       q       o4
    

    and want to have a sub dataframes with same relation names like

           subject  relation object 
    DF1 =      s1       p       o1
               s2       p       o2
           subject  relation object 
    DF2 =      s3       q       o3
               s4       q       o4
    

    I would be appreciated if you can share your idea how to make sub dataframes using groupBy().

    Thanks

  • Elmue
    Elmue over 8 years
    I have exactly the same error "Failed to start loader" on a blue screen while booting Knoppix 7.6 from a USB stick (copied with Rufus). I followed exactly the same steps as you painted here with the consequence that the USB stick does not even get to that blue screen anymore afterwards. Now I get a black screen saying: "WARNING: No configuration file found." I have no idea what to do now.
  • Elmue
    Elmue over 8 years
    Thanks for your answer. I already turned off secure boot in BIOS and still get the same error.
  • Csabi Vidó
    Csabi Vidó over 8 years
    I tried to loop mount the iso, like I usually do but it exceeds the FAT filesize limit. Trying to launch it as a new VirtualBox EFI guest results in a Guru Meditation error.
  • Elmue
    Elmue over 8 years
    I'm not surprised. VirtualBox is a very crappy and buggy software. I used it once and I saw hundreds of "Guru errors" which happened randomly sometimes, and sometimes not. Don't worry: That is normal! After installing the operating system directly on harddisk on the same computer it worked. The best you can do with VirtualBox is uninstall it. It is not the same as installing an operating system into a real partition.
  • Csabi Vidó
    Csabi Vidó over 8 years
    It's not normal when all other operating systems (Arch, Ubuntu, Fedora, Windows 10) have no problems booting UEFI in VirtualBox.
  • Elmue
    Elmue over 8 years
    I finally solved the problem. What I needed was a working Rescue USB stick. After downloading and trying lots of them in vain I finally found ubuntu-14.04.3-desktop-amd64.iso which boots perfectly on the same computer where Knoppix won't start.