UEFI啟動時分為兩種情況
啟動時只能選擇從那個磁盤啟動,如下最后兩項為兩個磁盤:
在用戶選擇了啟動磁盤后,UEFI會在這個磁盤中尋找EFI分區(qū),然后找這個分區(qū)下的/EFI/Boot/bootx64.efi(UEFI可以執(zhí)行的二進(jìn)制文件),由這個文件進(jìn)行下一步操作(引導(dǎo)操作系統(tǒng)),這個文件通常由操作系統(tǒng)給出,在光盤/EFI/BOOT目錄下
UEFI中已經(jīng)創(chuàng)建了啟動項如圖前兩個:
這個啟動項記錄了引導(dǎo)文件(*.efi)所在的磁盤和分區(qū)以及文件名,直接執(zhí)行這個efi文件即可開始進(jìn)行下一步操作(引導(dǎo)操作系統(tǒng))
以下進(jìn)行驗證:
可見磁盤第二個分區(qū)(EFI分區(qū))掛在在/boot/efi
中,查看:
注意到bootx64.efi文件,電腦啟動,如果選擇啟動項是磁盤(比如ATA HDD0:
/EFI/BOOT/
目錄下會有這個文件(windows的是文件名是bootmgfw.efi
),系統(tǒng)安裝時會將這個文件拷貝到EFI分區(qū)的Boot
目錄下并改名為bootx64.efi
Ubuntu安裝時不會將bootx64.efi
復(fù)制到EFI分區(qū)的/EFI/Boot/
中,那個依然是Windows的文件,所以開機(jī)按F12選擇從磁盤啟動后,會進(jìn)入windows boot manage
r,Ubuntu的做法是在BIOS添加一個啟動項,即方法2,這個選項會調(diào)用EFI分區(qū)/EFI/Ubuntu
文件夾下面的文件(如果EFI分區(qū)里沒有這個文件夾則引導(dǎo)失敗,選擇這個啟動項會看起來無任何反應(yīng))。
grub.cfg指定了啟動的磁盤(磁盤0分區(qū)7的uuid
、(hd0,gpt7)
掛載在root(根文件目錄)),以及configuration file為/boot/grub/grub.cfg,然后根據(jù)這個配置文件grub進(jìn)行系統(tǒng)引導(dǎo),接下來就交接給grub啦~~
╮(╯_╰)╭
),如果沒有,可以使用工具efibootmgr來添加-d
指定磁盤,-p
指定分區(qū)號(EFI分區(qū)),-c
表示創(chuàng)建,-L
表示名稱,-l
指定有效的啟動efi文件(EFI分區(qū)中的有效efi文件)再來一個,改成普通分區(qū)
再來一個,改成使用EFI分區(qū)的一個名稱錯誤的efi文件
重啟,每個啟動項試一次,發(fā)現(xiàn)只有Test可以正確進(jìn)入,原因是Test2的efi文件使用的是非EFI分區(qū),Test3使用的grub.efi文件不能正確引導(dǎo)
聯(lián)系客服