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
