I don't want to hi-jack this but I may have a clew for you. I am troubleshooting a similar problem and have found a trail. I recently installed centos7 on my (improperly complicated system) and sometimes it will boot and sometimes not. My problem is apparently caused by having three hard drives . From boot to boot they get mounted in different orders. The drive with my os7 sometimes is mounted as/dev/sda and sometimes /dev/sdc. In grub.cfg on the os7 partition there is a statement "set root=hd0, msdos3" I think that may be the villain but I don't know where it comes from. (The kernel lines use blockid's,) That statement is in centos7, but not in centos6 where I have not had the problem. I intend to search a while, and maybe learn something or take out a couple of drives.Hopefully this helps.