How do I boot into single-user mode from GRUB?
After changing a few lines in xorg.conf, I can no longer boot Ubuntu (I assume it breaks when trying to load up X), so I need a way to boot into a single-user mode. However, there seems to be zero guides on the Internet how to do it, because they all assume I can actually edit files on my computer, and I obviously can't.
So how do I load Ubuntu in single-user mode?
When I turned off splash, I figured out the problem: whenever Ubuntu can't load X server due to some error, it switches to tty1 and waits for the prompt, but doesn't turn off the splash.
Solution 1:
To boot into single user
mode you edit the boot instructions for the GRUB menu entry you wish to boot and add the kernel parameter/option single
. Brief instructions for how to do this are below.
- Hold down the left Shift key while rebooting to bring up GRUB menu
- Select (highlight) the GRUB boot menu entry you wish to use.
- Press e to edit the GRUB boot commands for the selected boot menu entry.
-
Look near the bottom of the list of commands for lines similar to
linux /boot/vmlinuz-3.2.0-24-generic root=UUID=bc6f8146-1523-46a6-8b\ 6a-64b819ccf2b7 ro quiet splash initrd /boot/initrd.img-3.2.0-24-generic
-
Change the middle line in (4) by adding the kernel boot parameter
single
to the end of the line (i.e. afterro quiet splash
).For this example you would change:
6a-64b819ccf2b7 ro quiet splash
to
6a-64b819ccf2b7 ro quiet splash single
Press either Ctrl+X or F10 to boot using these kernel options.
Note: These changes are not persistent. Any change to the kernel boot options made this way will only affect the next boot and only if you start that boot by pressing either Ctrl+X or F10 while still in GRUB edit mode.
Solution 2:
Occasionally, you might not be able to use the single
method as described in the accepted answer. In those cases you can tell the Linux kernel to use a different init like so:
init=/bin/bash
For example