There are a million pages devoted to initramfs so I won’t go in to what it is, but if you have a Dell 1655 or other machine with serial-attached-SCSI and use Debian or a Debian-derived Linux distribution such as Ubuntu or Kbuntu, you may have run in to an issue booting after installing a kernel update.
Common errors are:
Target filesystem doesn’t have sbin/init
BusyBox v.1.1.3
/bin/sh: can’t access tty; job control turned off
(initramfs)
or
mount: Mounting /root/dev on /dev/.static/dev failed: No such file or directory
Done.
Target filesystem doesn’t have /sbin/init
or
Mounting root file system…
Running /scripts/local-top…Done.
Running /scripts/local-premount…Done.
kjournald starting. Commit interval 5 seconds.
Running /scripts/log-bottom…Done.
Running /scripts/init-bottom…
Mounting /root/dev on /dev/.static/dev failed: No such file or directory…Done.
Mounting /sys on /root/sys filed: No such file or directory
Mounting /proc on /root/proc filed: No such file or directory
Target filesystem doesn’t have /sbin/init
A common reason for this is simple. Your GRUB menu is messed up and you swear you didn’t touch it!
There is a bug somewhere in Debian that changes your filesystem from /dev/sd<something> to /dev/sd<something else>. Of course changing that will make the system mount root from the wrong partition and BOOM! No boot for you.
In my case it constantly changes my boot partition from /dev/sda1 to /dev/sdb1 which is really annoying. If I don’t update /boot/grub/menu.lst before I reboot, my system will not come back.
Lucky for you Debian has BusyBox and initramfs with the 2.6 kernel.
You will have to be on the console for this, but here is how to get up and running:
- Boot up your broken system.
- (initramfs) is actually a prompt, so:
(initramfs) cd /
(initramfs) mkdir /mntMake a directory in the RAM filesystem.(initramfs) mount /dev/sda1 /mntMount your REAL root partition there.(initramfs) vi /mnt/boot/grub/menu.lstEdit your menu.lst file to load the correct partition (toward the bottom)(initramfs) reboot
In my most recent case, the line:
kernel /boot/vmlinuz-2.6.18-4-686 root=/dev/sda1 ro
Was changed to
kernel /boot/vmlinuz-2.6.18-4-686 root=/dev/sdb1 ro
If I change it back before I reboot, I don’t have an issue.
0 responses so far ↓
There are no comments yet...Kick things off by filling out the form below.
Leave a Comment