Ubuntu hangs with initramfs error after kernel update.

Recently I have seen several posts where users have updated their ubuntu systems but when they reboot the system drops to a prompt with somthing similar to the following:

udevadm trigger is not permitted while udev is unconfigured
udevadm settle is not permitted while udev is unconfigured
udevadm settle is not permitted while udev is unconfigured
udevadm settle is not permitted while udev is unconfigured

ALERT! /dev/disk/by-uiid/939af864-c1a8-41d7-9b24-91d25685b6 does not exist. Dropping to shell

Busybox v1.13.3 (Ubuntu 1:1.13:3-1ubuntu11 built-in shell (ash).

Enter 'help' for built-in commands

initramfs


Several people have blamed GRUB and messed up their systems trying to fix it when the real fix is quite simple.

To fix it you must first understand the problem.


If the apt-get upgrade or the update manger does not successfully complete then a flag is set and update-initramfs does not get to run, hence grub does not have a complete entry on how to boot the new kernel.

To fix it you must first boot into linux. You can do this by booting your last working kernel in GRUB.

To get to grub in ubuntu 9.10 or above hold the SHIFT key as you boot or in versions 9.04 and earlier press Esc when asked to in the top left corner of the screen.

You should be able to boot using the old kernel, probably the second or third entry down. (NOT the recovery menu)


Once you log in you can then open a terminal and type:

bash$ sudo update-initramfs –u -k kernel-release

(replacing "kernel-release" with the newest kernel that wouldn't boot)

If you don't know the kernel that fails to boot then you can use:

bash$ sudo update-initramfs –u -k all

instead but if it fails to release this command you could break all your kernels although this is unlikely.

Once you have done either of the above you can then run 

bash$ sudo dpkg–reconfigure 

That should clear the upgrade flags and fix any broken packages.

I recommend you then run this (although not necessary):

bash$ sudo apt-get autoclean ; sudo apt-get check

That should cleanup your system and fix any broken dependencies and packages.

你可能感兴趣的:(ubuntu,command,bash,System,dependencies,Terminal)