372

I am running an HP pavilion dv6000 dual boot win7 and Ubuntu 12.04. (well, up until today). After a reboot, the boot process drops to the BusyBox shell and I end up at the prompt:

BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs)

I've been researching others who have had this same problem, but haven't been able to find any of those solutions to work for me.

I tried the method described here, and after the final command

mount -t ntfs-3g /dev/sda1 /root -o force

it does nothing and gives me another (initramfs) prompt.

I can boot to a live CD (USB) and get to a terminal, but it doesn't seem to do much good, as I can see the /dev/sda1 in the ls command, but it doesn't recognize it when I try to cd to it.

One more question: using the command fdisk -l how can I tell which mount point (sda1/sda2) is my windows partition and which one is Ubuntu?

pomsky
  • 70,557
dpm
  • 3,721

7 Answers7

422

While at initramfs console, I passed a command exit to come out of the shell. The same console was presented before me but this time with the exact name of the partition that got corrupted.

BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash) 
Enter 'help' for a list of built-in commands.

(initramfs) exit

/dev/mapper/ubuntu--vg-root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) fsck exited with status code 4. The root filesystem on /dev/mapper/ubuntu--vg-root requires a manual fsck.

BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash) Enter 'help' for a list of built-in commands.

(initramfs) fsck /dev/mapper/ubuntu--vg-root -y

fsck from util-linux 2.27.1 e2fsck 1.42.13 (17-May-2015) /dev/mapper/ubuntu--vg-root contains a file system with errors, check forced.

After the checking is done, I rebooted the system.

BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs) reboot

If reboot doesn't work, try exit.

and that's it, I got back into the filesystem without any errors.

geras
  • 476
ramsudharsan
  • 4,389
  • 1
  • 14
  • 6
125

Actually the solution is easy just write the command of fsck /dev/sdax like the below and give Y if the console ask for fixing something:

(initramfs) fsck /dev/sda1

or

(initramfs) fsck /dev/sdaX

X specifies mounted disk part number.

If you don't want to manually press 'y' every time it asks for a fix, you can also run the command with the -y option.

(initramfs) fsck /dev/sdaX -y
efkan
  • 1,469
100

Note: Try this answer if you continue to face the issue even after attempting the steps in @ramsudharsan's answer. If you have not tried following those instructions yet I recommend you to do so since that seems to fix the problem in most cases.

It seems that you have a bad superblock. To fix this:

Firstly, boot into a live CD or USB

Find out your partition number by using

sudo fdisk -l|grep Linux|grep -Ev 'swap'

Then, list all superblocks by using the command:

sudo dumpe2fs /dev/sda2 | grep superblock

Replace sda2 to your drive number

You should get a similar output like this

  Primary superblock at 0, Group descriptors at 1-6
  Backup superblock at 32768, Group descriptors at 32769-32774
  Backup superblock at 98304, Group descriptors at 98305-98310
  Backup superblock at 163840, Group descriptors at 163841-163846
  Backup superblock at 229376, Group descriptors at 229377-229382
  Backup superblock at 294912, Group descriptors at 294913-294918
  Backup superblock at 819200, Group descriptors at 819201-819206
  Backup superblock at 884736, Group descriptors at 884737-884742
  Backup superblock at 1605632, Group descriptors at 1605633-1605638
  Backup superblock at 2654208, Group descriptors at 2654209-2654214
  Backup superblock at 4096000, Group descriptors at 4096001-4096006
  Backup superblock at 7962624, Group descriptors at 7962625-7962630
  Backup superblock at 11239424, Group descriptors at 11239425-11239430
  Backup superblock at 20480000, Group descriptors at 20480001-20480006
  Backup superblock at 23887872, Group descriptors at 23887873-23887878

Choose an alternate superblock from this list, for this case alternate superblock # 32768

Now, to check and repair a Linux file system using alternate superblock # 32768:

sudo fsck -b 32768 /dev/sda2 -y

The -y flag is used to skip all the Fix? questions and to answer them all with a yes automatically

You should get similar output like this:

fsck 1.40.2 (12-Jul-2007)
e2fsck 1.40.2 (12-Jul-2007)
/dev/sda2 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong for group #241 (32254, counted=32253).
Fix? yes
Free blocks count wrong for group #362 (32254, counted=32248).
Fix? yes
Free blocks count wrong for group #368 (32254, counted=27774).
Fix? yes
..........
/dev/sda2: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda2: 59586/30539776 files (0.6% non-contiguous), 3604682/61059048 blocks

Now try mounting the partition

sudo mount /dev/sda2 /mnt

Now, try to browse the filesystem with the following commands

cd /mnt
mkdir test
ls -l
cp file /path/to/safe/location

If you are able to perform the above commands, you have most probably fixed your error.

Now, restart you computer and you should be able to boot normally.

(source)

Amith KK
  • 13,547
11
  1. Simple Answer is remove your hard disk attach in another system and start the system (please don't boot from your initramfs error hard disk use any with Ubuntu and gparted installed).
  2. start gparted and select your hard disk and select CHECK from right click menu.
Alexis Wilke
  • 2,787
6

Slightly different answer (Ubuntu 16.04), although other answers eventually led me to it.

I first had to choose a recovery mode kernel before being able to see the error messages to know which partition/file system had errors.

From then on, running fsck /dev/sdb1/ -y fixed it for me.

Felipe
  • 479
4

I just tried a lucky shot by booting the system with the "Parted Magic" tool from a Live CD. Looking at the partitions, there was a declared "unknown space" of some GBytes on the Linux partition.

So I just widened the Linux space over the whole Partition and voila - since then my Linux boots as before without any fail so far.

Braiam
  • 69,112
Kai
  • 41
0

I have been dropping to busybox. The cause varies yet having a USB drive plugged in that is not the target drive makes the issue worse. Best to unplug before booting. With that drive unplugged: often a hard boot (power down and wait 10 seconds to power up) will boot correctly. For me the target drive is a SSD with a classic spinning hard drive pointing to it. My settings are a bit like this. Add a M.2 drive to Ubuntu:

https://ubuntuforums.org/showthread.php?t=2415658&page=4&p=13849399#post13849399s.

Really sped up an old system. Only caveat is dropping in to busybox now and then.