阻塞至initramfs无法进入系统?

阻塞至initramfs无法进入系统?

我进入现场环境,在硬盘上安装了Grub,将6.4.0内核放置在该/dev/sda3位置,通过mkinitramfs -o /mnt/boot/initrd创建initrd并放置在该/dev/sda3位置,但启动时卡在此处,如图所示: 在此输入图像描述

但是当我进入现场环境时,我可以看到/dev/sda3,如图所示: 在此输入图像描述

这是怎么回事?我点击了这个链接(mdadm:未找到conf 文件中列出的设备 - 带 GPT 的 Debian 8)并在grub.cfg中设置rootdelay并执行更新grub,仍然相同。另外,进入initramfs后,键盘无法输入,不知道怎么回事

grub.cfg:

#Begin cfg
set default=0
set timeout=4

set root=(hd0,gpt3)

menuentry "GNU/Linux, Test-6.4.0-rt" {
    linux /bzImage rw root=/dev/sda3 rootdelay=90
    initrd /initrd
}

文件系统表:

#device mount-point type options dump fsck order
/dev/sda3   /         ext4  defaults   0 1
/dev/sda2   /boot     ext4  defaults   0 1
/dev/sda1   /boot/efi vfat  umask=0077 0 0
proc   /proc proc  defaults 0 0
sysfs  /sys  sysfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
tmpfs /var  tmpfs defaults 0 0
debugfs /sys/kernel/debug  debugfs  default  0  0
devpts  /dev/pts  devpts defaults  0  0
#none   /tmp  ramfs defaults 0 0
#mdev   /dev  ramfs defaults 0 0

回复电信公司汤彦,驱动程序存在:

sudo unmkinitramfs initrd .
ls main/lib/modules/6.1.0-10-amd64/kernel/drivers/ata/ahci.ko
ls main/lib/modules/6.1.0-10-amd64/kernel/drivers/scsi/sd_mod.ko

====================问题重现============================== =

更新6.4.0-rt8:

$ ls main/lib/modules/6.4.0-rt8/kernel/drivers/scsi/sd_mod.ko
main/lib/modules/6.4.0-rt8/kernel/drivers/scsi/sd_mod.ko
$ ls main/lib/modules/6.4.0-rt8/kernel/drivers/ata/ahci.ko
main/lib/modules/6.4.0-rt8/kernel/drivers/ata/ahci.ko

#1 在此输入图像描述 #2 在此输入图像描述

答案1

显然,访问/dev/sda磁盘所需的驱动程序既没有内置到内核中,也没有作为 initramfs 中的可加载模块提供。

如果这是典型的台式机或笔记本电脑系统,则缺少的驱动程序可能是ahci内核模块或其依赖项:libahcilibatasd-mod。如果这些模块不可用,/dev/sda则全盘设备节点和任何分区设备(例如 )的设备节点/dev/sda3都不会出现。

如果/dev/sda存在但分区设备节点不存在,则内核缺少适当的分区表支持。

如果设备节点可用但安装失败,典型原因是缺少文件系统驱动程序模块。

相关内容