You are not logged in.

#1 2013-04-04 23:04:37

dhave
Arch Linux f@h Team Member
From: Outside the matrix.
Registered: 2005-05-15
Posts: 1,112

[SOLVED] rEFInd doesn't like multiple kernels in same directory

It may be because of my refind.conf scan options, but I found out that rEFInd was choking when I had more than one kernel file in a single subdirectory on my EFI partition.

I believe I remember seeing something in the rEFInd docs about having one kernel efi file per subdirectory, but I can't find it now.

This happened after I copied over a newly updated kernel and initramfs to my regular ArchLinux subdirectory of my EFI partition. For safekeeping, I renamed the previous kernel and initramfs files to *.OLD, but left them in the same subdirectory with my new kernel. For some reason, this confused rEFInd. When I moved the *.OLD files to a completely different location, rEFInd boots via my new Arch kernel efi file with no problem.

I'm not reporting this as a glitch or bug, because it's not. But I figure there might be somebody else out there in Archland who's encountering the same thing.

Last edited by dhave (2013-04-07 12:30:22)


Donate to Arch!

Tired? There's a nap for that. --anonymous

Offline

#2 2013-04-05 17:12:33

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: [SOLVED] rEFInd doesn't like multiple kernels in same directory

No, rEFInd should not have problems with multiple kernel files per directory. Since you say that rEFInd was "choking" and "confused," but don't give specifics of what the problem is, it's impossible for me to know what's actually happening, much less offer a solution. My best guess, though, is that rEFInd was mis-mapping the kernels to the initrd files because you included no version numbers in your filenames. If it tried to launch a version X kernel with a version Y initrd, the boot process might then fail.

If you want to keep mutliple kernels in one directory with rEFInd, you should do one of three things:

  • Use version numbers on all the kernels and initrds (or at least on all but one of them). rEFInd will then be able to map the two together and everything should work.

  • Don't use auto-scanning on that directory, and instead set up a manual boot stanza for each kernel that you want to launch.

  • Compile your kernels so that they don't require initrd files.

Offline

#3 2013-04-05 17:18:26

dhave
Arch Linux f@h Team Member
From: Outside the matrix.
Registered: 2005-05-15
Posts: 1,112

Re: [SOLVED] rEFInd doesn't like multiple kernels in same directory

srs5694 wrote:

No, rEFInd should not have problems with multiple kernel files per directory. Since you say that rEFInd was "choking" and "confused," but don't give specifics of what the problem is, it's impossible for me to know what's actually happening, much less offer a solution. My best guess, though, is that rEFInd was mis-mapping the kernels to the initrd files because you included no version numbers in your filenames. If it tried to launch a version X kernel with a version Y initrd, the boot process might then fail.

Yes, that's what must have been happening. I was simply naming the previous kernel and initrd *OLD. User error.

srs5694 wrote:

If you want to keep mutliple kernels in one directory with rEFInd, you should do one of three things:

  • Use version numbers on all the kernels and initrds (or at least on all but one of them). rEFInd will then be able to map the two together and everything should work.

  • Don't use auto-scanning on that directory, and instead set up a manual boot stanza for each kernel that you want to launch.

  • Compile your kernels so that they don't require initrd files.

Guilty on all three counts, your honor! smile

Thanks for the clear info.


Donate to Arch!

Tired? There's a nap for that. --anonymous

Offline

Board footer

Powered by FluxBB