我在裸机 Thinkpad X250 上安装了新版本的 LFS 11.0-systemd。一切都是以 Fedora 36 作为主机系统进行编译和设置的。我正在使用 BIOS 启动模式。
系统启动到 GRUB,但是当我选择 LFS 内核时,我会看到短暂的内核消息,然后出现永远的空白屏幕。系统似乎确实在某种程度上启动了 - 我可以在 chroot 中看到日志中的所有消息,尽管我没有看到任何信息告诉我为什么屏幕是空白的。就其价值而言,LFS GRUB 可以很好地引导 Fedora 36。
期刊中一些可能有趣的信息:
May 21 01:14:45 EDITME systemd[1]: First Boot Complete was skipped because of a failed condition check (ConditionFirstBoot=yes).
May 21 01:14:45 EDITME systemd[1]: Commit a transient machine-id on disk was skipped because of a failed condition check (ConditionPathIsMountPoint=/etc/machine-id).
May 21 01:14:45 EDITME systemd[1]: Startup finished in 2.500s (kernel) + 1.785s (userspace) = 4.285s.
以供参考:
LFS /etc/fstab
/dev/sda3 / ext4 defaults 1 1
/dev/sda7 /boot ext4 defaults 0 0
/dev/sda6 swap swap pri=1 0 0
来自 chroot 的 LFS lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 119.2G 0 disk
|-sda1 8:1 0 1M 0 part #BIOS boot
|-sda2 8:2 0 50G 0 part #Fedora root
|-sda3 8:3 0 20G 0 part / #LFS root
|-sda4 8:4 0 10G 0 part #LFS /home
|-sda5 8:5 0 10G 0 part #LFS /opt
|-sda6 8:6 0 8G 0 part [SWAP]
`-sda7 8:7 0 512M 0 part /boot #LFS /boot
zram0 252:0 0 7.5G 0 disk [SWAP]
LFS grub.cfg
# Begin /boot/grub/grub.cfg
set default=0
set timeout=5
insmod ext2
set root=(hd0,7)
menuentry "GNU/Linux, Linux 5.17.7-lfs-r11.1-119-systemd" {
linux /vmlinuz-5.17.7-lfs-r11.1-119-systemd root=/dev/sda3 ro
}
menuentry "Fedora 36 Workstation" {
linux (hd0,gpt2)/boot/vmlinuz-5.17.6-300.fc36.x86_64 root=/dev/sda2 ro
}
任何关于可能出现问题的想法将不胜感激!
答案1
你不是一个人。这件事也发生在我身上。我认为我编译了错误的图形模块,并使用我认为适合我的计算机的图形驱动程序重新编译了内核。这没有解决任何问题,因此,我使用 ubuntu 的默认内核配置再次重新编译了内核,这在一定程度上解决了问题,因为在内核恐慌之前我看到了一些更详细的消息!我不知道新建的系统出了什么问题,但我仍在努力修复。
编辑:在 grub.cfg 中的 linux /boot/vmlinuz-xx-xx-xx-systemd root=/dev/sdXY 之后添加 'nomodeset' 添加它,使其看起来像这样:
menuentry "Linux From Scratch" {
linux /boot/vmlinux-xx-xx-xx-systemd root=/dev/sdXY ro nomodeset
}
我认为这个问题是由于内核中缺少适当的图形模块引起的。