我最近使用 GRUB-2.03~beta 完成了 LFS 构建,并使用 UEFI 安装了它。然而,当我启动 Linux 时,我遇到了黑屏。我不确定如何调试它,因为内核甚至不会恐慌,也不会显示光标,它只是 100% 黑色边缘到边缘。
这是一些配置文件
.config:http://sprunge.us/SMcc
/etc/fstab
# Begin /etc/fstab
# file system mount-point type options dump fsck
# order
UUID=d6788259-f948-4164-ae29-d1b996ffd6d9 / ext4
defaults 1 1
UUID=04ED-C3D3 /boot/efi vfat defaults 0 1
efivarfs /sys/firmware/efi/efivars efivarfs defaults 0 1
# End /etc/fstab
/boot/grub/grub.cfg
# Begin /boot/grub/grub.cfg
set default=0
set timeout=5
insmod ext2
set root=(hd0,gpt2)
insmod efi_gop
insmod efi_uga
insmod font
if loadfont /grub/unicode.pf2; then
loadfont /grub/unicode.pf2
set gfxmode=auto
insmod gfxterm
set gfxpayload=keep
terminal_output gfxterm
fi
menuentry "GNU/Linux, Linux From Scratch" {
linux /boot/vmlinuz-4.7.2-lfs-7.10-systemd
root=UUID=d6788259-f948-4164-ae29-d1b996ffd6d9 rw quiet
}
在 Arch Linux 主机中挂载树:
sdc 8:32 0 931.5G 0 disk
├─sdc2 8:34 0 931.3G 0 part /mnt/lfs
└─sdc1 8:33 0 260M 0 part /mnt/lfs/boot/efi
UUID:
lrwxrwxrwx 1 root root 10 Oct 29 14:42 04ED-C3D3 -> ../../sdc1
lrwxrwxrwx 1 root root 10 Oct 29 14:42
d6788259-f948-4164-ae29-d1b996ffd6d9 -> ../../sdc2
(hd2,gpt2)
我已经将 Arch 主机上的根(安装为)更正为/dev/sdc
我在 grub 命令行上进行调查时的 根(hd0,gpt2)
,因此它正在查找内核。我尝试更换 UUID 的/dev/sdX
,但这仍然失败。 Grub2 efi 目录在安装时设置为/boot/efi
。所有正确的内核选项均在 UEFI 安装编译期间设置。
我将尝试使用基于 arch 的配置文件重新编译内核,并至少消除错误配置的可能性。
答案1
系统可能真的启动了,可能是图形模式,只显示黑屏。在 RHEL 上从 3.10 内核切换到 4.x 内核时,我遇到了类似的问题。
我没有找到如何在 VESA 模式下加载 4.x 内核的解决方案。
您可以通过将terminal_output设置为“console”来禁用GFX模式,并删除grub中的gfx*设置。这将让您查看系统是否可以启动。