After doing a fresh install or upgrade of Fedora Core Linux (FC28 in my case, but this applies to any version), you may notice that when the system boots it gets stuck on a black screen with a white cursor. The cursor will not move and there will be no drive activity.
This issue occurs with GNOME on my old HP Mini 210 Netbook every time I do a fresh install of Fedora on it (or upgrade it).
Follow the process below to temporarily boot and then permanently fix it.
To get the system to boot:
- Power on the computer, and carefully wait for the GRUB bootloader to appear (the boot selection screen).
- When the GRUB bootloader appears, press the “e” key to edit the highlighted (default) boot entry.
- Scroll down until you get to the line starting with “linux16”, then use your right arrow key and scroll right until you get to the end of the kernel options (while scrolling right, you may scroll multiple lines down which is fine and expected). The line should finally end with “rhgb” and “quiet”.
- Remove “rhgb” and “quiet”, and then add “nomodeset=0”
- Press “CTRL+x” to boot the system.
- The system should now boot.
FYI: “rhgb” is the kernel switch/option for redhat graphical boot, and “quiet” makes the system messages more quiet (who would have guessed).
To permanently resolve the issue:
- Once the system has booted, log in.
- Open a terminal window (Applications -> Terminal, or press the “Start” button and type terminal).
- Use your favorite text editor and edit the file “/etc/default/grub” (I use nano which can be install by running “dnf install nano”):
- Locate the line with the variable “GRUB_CMDLINE_LINUX”, and add “nomodeset=0” to the variables. Feel free to remove “rhgb” and “quiet” if you’d like text boot. Here’s an example of my line after editing (yours will look different):
GRUB_CMDLINE_LINUX="resume=/dev/mapper/fedora_da--netbook01-swap rd.lvm.lv=fedora_da-netbook01/root rd.lvm.lv=fedora_da-netbook01/swap nomodeset=0"
- Save the file and exit the text editor (CTRL+x to quit, the press “y” and enter to save)
- At the bash prompt, execute the following command to regenerate the grub.conf file on the /boot partition from your new default file:
grub2-mkconfig -o /boot/grub2/grub.cfg
- Restart your system, it should now boot!
Please Note: Always make sure you have a full system backup before modifying any system files!