Shell中手动加载grub bootaa64.efi
2024.05.04
Shell> map
Mapping table
FS1: Alias(s):HD1b:;BLK4:
VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(1,GPT,809A75D3-E97F-4F9
F-9E15-C4EB053E8AB3,0x800,0x32000)
FS0: Alias(s):HD0b:;BLK1:
PcieRoot(0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/NVMe(0x1,32-03-00-00-00-00-00-
00)/HD(1,GPT,9DD431F3-1E15-584E-987D-827DD40C2E49,0xF000,0x200000)
BLK3: Alias(s):
VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)
BLK5: Alias(s):
VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(2,GPT,836136C3-A854-4F1
2-8FCD-3F5BCE5C9F24,0x32800,0x8000)
BLK6: Alias(s):
VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(3,GPT,8B6032D1-3641-44F
6-B489-C48D195AC17E,0x3A800,0xE543000)
BLK7: Alias(s):
VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(4,GPT,96CA6224-A52D-464
1-A947-AA3CCBA8DC8C,0xE57D800,0xFA000)
BLK0: Alias(s):
PcieRoot(0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/NVMe(0x1,32-03-00-00-00-00-00-
00)
BLK2: Alias(s):
PcieRoot(0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/NVMe(0x1,32-03-00-00-00-00-00-
00)/HD(2,GPT,8DEE4DA3-BB01-D348-8C62-188B9C031AC1,0x20F000,0x389AB019)
Shell> fs0:
FSOpen: Open '\' Success
FS0:\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '\grub' Success
FSOpen: Open '\Image' Success
FSOpen: Open '\System.map-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\config-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\initrd.img-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\vmlinuz-5.10.110-rockchip-rk3588' Success
GDDBG get base: FEAA0000
Directory of: FS0:\
01/09/2024 02:45 209,823 config-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
12/04/2023 07:24 <DIR> 4,096 EFI
GDDBG get base: FEAA0000
01/09/2024 03:10 <DIR> 4,096 grub
GDDBG get base: FEAA0000
01/09/2024 03:09 56,613,376 Image
GDDBG get base: FEAA0000
01/09/2024 03:12 9,159,168 initrd.img-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 8,108,572 System.map-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 21,284,899 vmlinuz-5.10.110-rockchip-rk3588
5 File(s) 95,375,838 bytes
2 Dir(s)
FSOpen: Open '\' Success
FS0:\> cd EFFSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
EFI
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FS0:\EFI\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\' Success
FSOpen: Open '\' Success
FSOpen: Open '\EFI\BOOT' Success
GDDBG get base: FEAA0000
Directory of: FS0:\EFI\
01/09/2024 03:11 <DIR> 4,096 .
GDDBG get base: FEAA0000
01/09/2024 03:11 <DIR> 0 ..
GDDBG get base: FEAA0000
12/04/2023 07:24 <DIR> 4,096 BOOT
0 File(s) 0 bytes
3 Dir(s)
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FS0:\EFI\> cd BOOT
FSOpen: Open '\EFI\BOOT' Success
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FS0:\EFI\BOOT\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT\' Success
FSOpen: Open '\EFI\' Success
FSOpen: Open '\EFI\BOOT\bootaa64.efi' Success
GDDBG get base: FEAA0000
Directory of: FS0:\EFI\BOOT\
01/09/2024 03:11 <DIR> 4,096 .
GDDBG get base: FEAA0000
01/09/2024 03:11 <DIR> 4,096 ..
GDDBG get base: FEAA0000
01/09/2024 03:09 679,936 bootaa64.efi
1 File(s) 679,936 bytes
2 Dir(s)
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FS0:\EFI\BOOT\> cd ..
FSOpen: Open '\EFI\' Success
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FS0:\EFI\> cd ..
FSOpen: Open '\' Success
FSOpen: Open '\' Success
FS0:\> cd ..
FSOpen: Open '\' Success
FSOpen: Open '\' Success
FS0:\> tree .
'tree' is not recognized as an internal or external command, operable program, o
r script file.
FSOpen: Open '\' Success
FS0:\> help
acpiview - Display ACPI Table information.
alias - Displays, creates, or deletes UEFI Shell aliases.
attrib - Displays or modifies the attributes of files or directories.
bcfg - Manages the boot and driver options that are stored in NVRAM.
cd - Displays or changes the current directory.
cls - Clears the console output and optionally changes the background
and foreground color.
comp - Compares the contents of two files on a byte-for-byte basis.
connect - Binds a driver to a specific device and starts the driver.
cp - Copies one or more files or directories to another location.
date - Displays and sets the current date for the system.
dblk - Displays one or more blocks from a block device.
devices - Displays the list of devices managed by UEFI drivers.
devtree - Displays the UEFI Driver Model compliant device tree.
dh - Displays the device handles in the UEFI environment.
disconnect - Disconnects one or more drivers from the specified devices.
dmem - Displays the contents of system or device memory.
dmpstore - Manages all UEFI variables.
drivers - Displays the UEFI driver list.
drvcfg - Invokes the driver configuration.
drvdiag - Invokes the Driver Diagnostics Protocol.
echo - Controls script file command echoing or displays a message.
edit - Provides a full screen text editor for ASCII or UCS-2 files.
eficompress - Compresses a file using UEFI Compression Algorithm.
efidecompress - Decompresses a file using UEFI Decompression Algorithm.
else - Identifies the code executed when 'if' is FALSE.
endfor - Ends a 'for' loop.
endif - Ends the block of a script controlled by an 'if' statement.
exit - Exits the UEFI Shell or the current script.
for - Starts a loop based on 'for' syntax.
getmtc - Gets the MTC from BootServices and displays it.
goto - Moves around the point of execution in a script.
help - Displays the UEFI Shell command list or verbose command help.
hexedit - Provides a full screen hex editor for files, block devices, or m
emory.
i2cdemo - Read/write data from/into I2cDemo Device memory
if - Executes commands in specified conditions.
ifconfig - Modifies the default IP address of the UEFI IPv4 Network Stack.
load - Loads a UEFI driver into memory.
loadpcirom - Loads a PCI Option ROM.
ls - Lists the contents of a directory or file information.
map - Displays or defines file system mappings.
memmap - Displays the memory map maintained by the UEFI environment.
mkdir - Creates one or more new directories.
mm - Displays or modifies MEM/MMIO/IO/PCI/PCIE address space.
mode - Displays or changes the console output device mode.
mv - Moves one or more files to a destination within or between file
systems.
openinfo - Displays the protocols and agents associated with a handle.
parse - Retrieves a value from a standard format output file.
pause - Pauses a script and waits for an operator to press a key.
pci - Displays PCI device list or PCI function configuration space and
PCIe extended
configuration space.
ping - Ping the target host with an IPv4 stack.
reconnect - Reconnects drivers to the specific device.
reset - Resets the system.
rm - Deletes one or more files or directories.
sermode - Sets serial port attributes.
set - Displays or modifies UEFI Shell environment variables.
setsize - Adjusts the size of a file.
setvar - Displays or modifies a UEFI variable.
sf - Read/write data from/into SPI flash.
shift - Shifts in-script parameter positions.
smbiosview - Displays SMBIOS information.
stall - Stalls the operation for a specified number of microseconds.
time - Displays or sets the current time for the system.
timezone - Displays or sets time zone information.
touch - Updates the filename timestamp with the current system date and
time.
type - Sends the contents of a file to the standard output device.
unload - Unloads a driver image that was already loaded.
ver - Displays UEFI Firmware version information.
vol - Displays or modifies information about a disk volume.
Help usage:help [cmd|pattern|special] [-usage] [-verbose] [-section name][-b]
FSOpen: Open '\' Success
FS0:\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '\grub' Success
FSOpen: Open '\Image' Success
FSOpen: Open '\System.map-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\config-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\initrd.img-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\vmlinuz-5.10.110-rockchip-rk3588' Success
GDDBG get base: FEAA0000
Directory of: FS0:\
01/09/2024 02:45 209,823 config-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
12/04/2023 07:24 <DIR> 4,096 EFI
GDDBG get base: FEAA0000
01/09/2024 03:10 <DIR> 4,096 grub
GDDBG get base: FEAA0000
01/09/2024 03:09 56,613,376 Image
GDDBG get base: FEAA0000
01/09/2024 03:12 9,159,168 initrd.img-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 8,108,572 System.map-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 21,284,899 vmlinuz-5.10.110-rockchip-rk3588
5 File(s) 95,375,838 bytes
2 Dir(s)
FSOpen: Open '\' Success
FS0:\> cd gruFSOpen: Open '.' Success
FSOpen: Open '\grub' Success
grub
FSOpen: Open '\grub' Success
FSOpen: Open '.' Success
FSOpen: Open '\grub' Success
FS0:\grub\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\grub' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\grub\' Success
FSOpen: Open '\' Success
FSOpen: Open '\grub\grub.cfg' Success
GDDBG get base: FEAA0000
Directory of: FS0:\grub\
01/09/2024 03:11 <DIR> 4,096 .
GDDBG get base: FEAA0000
01/09/2024 03:11 <DIR> 0 ..
GDDBG get base: FEAA0000
01/09/2024 03:10 382 grub.cfg
1 File(s) 382 bytes
2 Dir(s)
FSOpen: Open '.' Success
FSOpen: Open '\grub' Success
FS0:\grub\> cat grub.cfg
FSOpen: Open '.' Success
FSOpen: Open '\grub' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\grub\grub.cfg' Success
set debug="loader,mm"
set term="vt100"
set default="0"
set timeout="1"
search --set=root --fs-uuid 91F3-6896
menuentry 'Boot YourLand from NVME' {
linux /Image resume=UUID=8550cf7b-fb7e-475d-b7ca-e0140b91284c root=PARTU
UID=8dee4da3-bb01-d348-8c62-188b9c031ac1 noresume psi=1 splash label=debug rootw
ait verbose debug nokaslr
.initrd /initrd.img-5.10.110-rockchip-rk3588
}
FSOpen: Open '.' Success
FSOpen: Open '\grub' Success
FS0:\grub\> cd ..
FSOpen: Open '\' Success
FSOpen: Open '\' Success
FS0:\> cd ..
FSOpen: Open '\' Success
FSOpen: Open '\' Success
FS0:\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '\grub' Success
FSOpen: Open '\Image' Success
FSOpen: Open '\System.map-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\config-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\initrd.img-5.10.110-rockchip-rk3588' Success
FSOpen: Open '\vmlinuz-5.10.110-rockchip-rk3588' Success
GDDBG get base: FEAA0000
Directory of: FS0:\
01/09/2024 02:45 209,823 config-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
12/04/2023 07:24 <DIR> 4,096 EFI
GDDBG get base: FEAA0000
01/09/2024 03:10 <DIR> 4,096 grub
GDDBG get base: FEAA0000
01/09/2024 03:09 56,613,376 Image
GDDBG get base: FEAA0000
01/09/2024 03:12 9,159,168 initrd.img-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 8,108,572 System.map-5.10.110-rockchip-rk3588
GDDBG get base: FEAA0000
01/09/2024 02:45 21,284,899 vmlinuz-5.10.110-rockchip-rk3588
5 File(s) 95,375,838 bytes
2 Dir(s)
FSOpen: Open '\' Success
FS0:\> cd EFFSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
EFI
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FS0:\EFI\> LS
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\' Success
FSOpen: Open '\' Success
FSOpen: Open '\EFI\BOOT' Success
GDDBG get base: FEAA0000
Directory of: FS0:\EFI\
01/09/2024 03:11 <DIR> 4,096 .
GDDBG get base: FEAA0000
01/09/2024 03:11 <DIR> 0 ..
GDDBG get base: FEAA0000
12/04/2023 07:24 <DIR> 4,096 BOOT
0 File(s) 0 bytes
3 Dir(s)
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FS0:\EFI\> cd boot
FSOpen: Open '\EFI\boot' Success
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FS0:\EFI\boot\> ls
GDDBG get base: FEAA0000
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT\' Success
FSOpen: Open '\EFI\' Success
FSOpen: Open '\EFI\BOOT\bootaa64.efi' Success
GDDBG get base: FEAA0000
Directory of: FS0:\EFI\boot\
01/09/2024 03:11 <DIR> 4,096 .
GDDBG get base: FEAA0000
01/09/2024 03:11 <DIR> 4,096 ..
GDDBG get base: FEAA0000
01/09/2024 03:09 679,936 bootaa64.efi
1 File(s) 679,936 bytes
2 Dir(s)
FSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FS0:\EFI\boot\> ./bootFSOpen: Open '.' Success
FSOpen: Open '\EFI' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '\EFI\BOOT' Success
FSOpen: Open '.' Success
FSOpen: Open '..' Success
FSOpen: Open '..' Success
bootaa64.efi
FSOpen: Open '\EFI\boot\bootaa64.efi' Success
FSOpen: Open '\EFI\boot\bootaa64.efi' Success
FSOpen: Open '\EFI\boot\bootaa64.efi' Success
FSOpen: Open '\EFI\boot\bootaa64.efi' Success
[Security] 3rd party image[0] can be loaded after EndOfDxe: PcieRoot(0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/NVMe(0x1,32-03-00-00-00-00-00-00)/HD(1,GPT,9DD431F3-1E15-584E-987D-827DD40C2E49,0xF000,0x200000)/\EFI\boot\bootaa64.efi.
Loading driver at 0x000E9DCE000 EntryPoint=0x000E9DCF000
Loading driver at 0x000E9DCE000 EntryPoint=0x000E9DCF000
Welcome to GRUB!
GNU GRUB version 2.04
/----------------------------------------------------------------------------\
|*Boot YourLand from NVME |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
\----------------------------------------------------------------------------/
Use the ^ and v keys to select which entry is highlighted.
Press enter to boot the selected OS, `e' to edit the commands
before booting or `c' for a command-line.
https://www.gnu.org/software/grub/manual/grub-dev/html_node/Debugging.html
GRUB2 can be difficult to debug because it runs on the bare-metal and thus does not have the debugging facilities normally provided by an operating system.
调试对GRUB2来说,已经是自然而然的事。
[Security] 3rd party image[0] can be loaded after EndOfDxe: PcieRoot(0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/NVMe(0x1,32-03-00-00-00-00-00-00)/HD(1,GPT,9DD431F3-1E15-584E-987D-827DD40C2E49,0xF000,0x200000)/\EFI\boot\bootaa64.efi.
Loading driver at 0x000E9DCE000 EntryPoint=0x000E9DCF000
因为GRUB2,对于UEFI来说,也就是个被加载的Module,NDB真的已经很赞,可以期待更美好。
作者:朱博渊 创建时间:2024-05-04 15:35
最后编辑:朱博渊 更新时间:2024-11-15 17:44
最后编辑:朱博渊 更新时间:2024-11-15 17:44