2

I read the tutorials to make a mimalistic custom kernel from here and am able to boot it up as explained in the tutorial over a virtual machine using GRUB as the boot loader.

I think it would be more fun if I could do the same over bare hardware using a bootable pendrive. That is use GRUB, pendrive and my Kernel executable to form a bootable pendrive and then boot into the kernel from this pendrive.

Q1. I thought of using the normal procedure of how I make a bootable linux pendrive, but my kernel isn't really an iso image, its an elf format executable. Will the normal method work if I somehow convert my executable to iso format ?

Q2. Any other ideas / link to some resource how I should proceed ?

P.S. : Its NOT Linux kernel per-se, Its absolutely minimal kernel, no file system nothing. Just boots up, prints something on console and can handle keyboard events, thats it.

2 Answers 2

1

From a bootup perspective, the kernel file itself is just a configuration option fed to grub. As long as grub can find the kernel, you should be good to go.

You will however need something to use as a rootfs, so a partition or dd image on your usb key would make sense, and then store your kernel file in there. Likely you can even get away with putting it right in /boot with all your grub stuff. So at minimum you'll need the mbr set up on the usb key to boot, and a filesystem containing your grub configuration... (I was googling around, and see examples of both fat and ext being used for /boot- I know most usb boot key tools use fat for the base, so I would recommend that- but ext should work also I would think.) There is some info here with an example for ubuntu. I think in your position I would create a bootable USB with on of these tools, and then modify it for my needs- that way I get the grub installation, and mbr stuff taken care of for me.

At the end of the day, I think it's a question of how to get grub up and running on the usb key, after that it's just grub config which this link has helped me out in the past.

0

Read about Debian's live-build system.

There is option --linux-package which should point on the linux-kernel.deb, you may specify your own kernel, just pack it into Debian format.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .