uefi下如何启动linux?

1. 有两种方式

  1.1 直接从uefi shell启动linux内核

  1.2 从uefi shell启动grub,然后再从grub启动linux内核

2. 需要哪些东西?

  2.1 linux内核

  2.2 initrd镜像

  2.3 .nsh后缀名的启动脚本(可选,可通过手动键入命令)

    某个.nsh的内容如下:

      Image initrd=initrd.gz root=/dev/ram0 earlycon=uart

  2.4 BOOTAA64.EFI (这是arm64的EFI固件,可选)

  注: 这些东西需要放在fat文件系统中

3. uefi shell启动linux内核的操作过程

  3.1 进入目标分区

  Shell> fs0:

  FS0:>

  3.2 启动linux内核

  FS0:>boot.nsh

4. 从uefi shell启动grub, 然后启动linux内核

  4.1 进入目标分区

  Shell> fs0:

  FS0:>

  4.2. 进入grub

  FS0:>BOOTAA64.EFI

  4.3 在grub中设置临时访问的根节点

  grub> root=(hd0,msdos1) (hd0,msdos1中有linux内核镜像和initrd镜像)

  4.4 启动linux内核

  grub> linux /Image initrd=/initrd.gz earlycon=uart root=(hd0,msdos1) rw rootwait

  

原文地址:https://www.cnblogs.com/dakewei/p/11475031.html