Busybox shell fallback occurs during the boot cycle when the root partition cannot be located, fails to mount, and/or the /sbin/init binary cannot be located on it.
Sometimes this is due to hardware failure, a loose connection, or other corruption. That causes the root partition to fail to mount.
Most commonly, this is due to a typo or mistake in grub. Take a look at the file /boot/grub/grub.cfg (in Grub2, which most users have migrated to. If you don't have the file, then you're using the older version of Grub).
There's a very good troubleshooting guide for Grub2 at https://help.ubuntu.com/community/Grub2
Basically, look for the like that says something like (there's one line like this for each choice in the grub menu):
linux /boot/vmlinuz-2.6.31-11-generic root=UUID=cb201140-52f8-4449-9a95-749b27b58ce8 ro quiet splash
Most problems are on this line. A typo or mistake on this like will kick you out to busybox.
1) Make sure the /boot/vmlinuz-$version line on that file is correct.
2) Use the 'blkid' command to check the disk UUIDs. Make sure the UUID matches the drive you want to boot from.