?wiki:initramfs-tools is used in Debian to build the initramfs that contains the early userspace and the needed kernel modules to be able to mount any possible root.
Boot with rootdelay=9 to shorten the time of waiting for the root device to come up. Also it adds time to scsi device to settle before calling mdadm or lvm thus excluding potential races.
Ok now you landed in the initramfs debug shell. The following steps should help to narrow down the problem.
- Check root device existance
ls -l /dev/[hs]da*
- Check root boot argument
- It needs to be the same than aboves root device
- Check correct fs recognition
/lib/udev/vol_id -t /dev/sda1 fstype /dev/sda1
- If the output of aboves command differ, your partition was not cleanly formated. For example mkfs.ext2 does not clear all sectors when formating a partition.
- Check if the ata/ide/scsi driver is loaded
It can happen that due to a bug in the initramfs creation a newer initramfs lacks important libraries or utilities. Easiest way is to compare the file list of working contra non-working initramfs.
FIXME: add find cmd