Linux hangs at SELinux: Disabled at runtime.

Over a month ago, I had a system running a Linux operating sytstem that would hang during the boot sequence right after where it said "SELinux: Disabled at runtime".

Even when changing the kernel boot parameters to switch to single user mode didn't help and it was still hanging at the same place during the boot sequence.

I tried googling for anyone that had the same problem. I tried keywords such as "linux", "hang", and "SELinux", and couldn't find anything that mentioned the same problem.

I did eventually find the problem. Linux mounts any additional hard disk(s) at this point in the boot process. The /etc/fstab file, which tells Linux which filesystems to mount at boot time, indicated that a device should be mounted which didn't exist. Specifically, a label was being provided for a device that should be mounted, but there was no device with that label.

This can happen if you reformat a hard disk partition, relabel a hard disk partition, or just make a typo in the /etc/fstab file. In order to correct the issue, you will likely need to either boot from a rescue disk, or modify the kernel parameters to remove any "ro" parameter, which will get you past this point. Then view your /etc/fstab file and look for any lines where the first parameter is "LABEL=", followed by a label. Make sure that each label is present and typed correctly by using e2label and or modifying the /etc/fstab file.

Some of my colleagues had this same problem today, and I got pulled out of a meeting because they couldn't find their answer on google. I thought I'd blog about this so that maybe someone else will be able to find this on Google some day.

Although you normally should have SELinux running on a multi-user system, this wasn't a multi-user system and I've been unable to duplicate this on a system running SELinux.