What is the diference between a normal boot and resume option after a recovery boot?

I have an Ubuntu 12.04.5 server machine that hangs on boot, but if I choose recovery mode and then resume, everything's ok.

Any clue?!


Recovery mode grub menu entry has the following differences from normal startup:

  1. It has nomodeset boot option set
  2. It emits recovery event instead of startup which does the following:

    • starts services: hostname, console-setup, setvtrb
    • emits mounted event for /run to trigger resolvconf and mounted-run.

With resume from the recovery console the start event is emmited and the normal boot is started.

sources:

  • /etc/grub/grub.cfg
  • /usr/share/initramfs-tools/init
  • /etc/init/friendly-recovery.conf

My guess is that you should boot your machine with the nomodeset option