基于busybox1.20.2制作initrd的init中mount -t ext4 /dev/sda2 /mnt/sysroot提示 mount:mounting /dev/sda3 on /mnt/sysroot failed: No such device。 怎么办?

参考https://blog.csdn.net/xiaoshixiu/article/details/86512791制作的initrd。
#!/bin/sh
#
echo "exec initramfs init"
echo "mounting proc and sys"

mount -t proc proc /proc
mount -t sysfs sysfs /sys

echo "detect and export hardware info"
mdev -s

echo "Mount real rootfs to /mnt/sysroot..."
mount -t ext4 /dev/sda2 /mnt/sysroot

echo "Switch to read rootfs..."
exec switch_root /mnt/sysroot /sbin/init

提示 mount:mounting /dev/sda2 on /mnt/sysroot failed: No such devi分区,在init中加入echo "fdisk -l",echo "blkid", echo "lsblk" 都没有分区信息,输出为空。
在init中加入insmod /lib/modules/jbd2.ko,mbchace.ko,ext4.ko也不行。
内核4.15.58,3.8.2,2.6.32都试过,都不行.
求救啊!!!!!

可能是文件系统不支持,也可能是分区无效,可以重新分区下,各种文件系统格式都尝试下。再不行,换一个存储卡或者硬盘。