[SOLVED] Trouble with generic kernel + initrd on GPT disk
SlackwareThis Forum is for the discussion of Slackware Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I just bought a shiny new HP Pavilion G7 laptop for a client. It's a quite powerful machine, at least compared to my usual battered hardware: Intel Core i5 processor and 4 GB RAM.
First installation procedures ended in a complete mess. I had to fiddle around with the BIOS, which apparently likes to make the user jump through burning loops to disable UEFI (User Exasperating Fucking Insanity).
Now I'm at least able to get Slackware to boot, after having used gdisk for partitioning.
Good news: the 'huge' kernel will boot the thing OK.
Bad news: I can't seem to configure the generic-kernel-plus-initrd combination... which I've already done on (literally) hundreds of installs. Usually I edit mkinitrd.conf, fill out the right values, build the initrd with mkinitrd, and then add a stanza in lilo.conf. This time, I systematically get treated to a nice kernel panic on boot.
Now I wonder: is there some additional step involved when building an initrd with a GPT disk? I confess I'm completely clueless here.
Eventually, I "solved" the problem by simply rebuilding a kernel for the machine, without an initrd. I started from the generic kernel configuration and built ext4 and jbd into the kernel. Now it works.
Because LILO is not GPT aware it's more trial and error. I don't believe it's very clear why it's sometimes does not work.(well it wasn't made for it, so it's surprising that it often does work) a few quotes:
The still-older Linux Loader (LILO) doesn't explicitly support GPT, but its disk-addressing methods are based on sector locations, so it often does work (in practice).
Information on the old Linux Loader (LILO) and GPT is contradictory. Most sources say the two won't get along, but I've read others who opine that the combination does (or at least should) work fine, since LILO uses sector maps to point to the kernel file. My one attempt at this combination proved inconclusive. LILO was able to load and run the kernel, but the boot then failed with the kernel message mount: could not find filesystem '/dev/root'. This message followed messages that indicated that the computer's LVM configuration was working fine, but somehow handing off to the LVM-based root filesystem was a problem. A GRUB boot of this system worked fine.