Chris Mitchell Online

Chris blogging about cloud, IT, and programming. What could go wrong?

Adding ISO to Grub Boot

2018-10-30

Grub is a boot loader that allows you to boot into different versions of Linux. This article will guide you through adding Tiny Core to a Grub Boot menu. To do this we will create a bootable ISO. For this tutorial we will be working from a local Ubuntu 16 virtual machine.

Pre-requisits:

  • Root access to Ubuntu 16

The first step is to download the ISO file from the Tiny Core website. The easiest way to do this is to create a directory in your home directory called iso and use wget to download the iso into this folder:

cd mkdir iso cd iso wget https://distro.ibiblio.org/tinycorelinux/9.x/x86/release/TinyCore-current.iso

Now we need to mount our ISO file to a directory at /mnt/tmp

sudo mkdir /mnt && mkdir /mnt/tmp sudo mount -o loop -t iso9660 TinyCore-current.iso /mnt/tmp

Once the ISO is mounted make a directory at /tc. Copy the mounted ISO to our new /tc directory

sudo mkdir /tc cp -r /mnt/tmp/* /tc/

Now we are going to edit the Grub auto loader file that is located at /etc/grub.d/40_custom.

NOTE: Use caution when editing this file and pay attention to the comments explaining how to edit the file and the notice about not changing the 'exec tail' line.

Add the following to the end of the /etc/grub.d/40_custom file:

menuentry "Tiny Core 32" { set root='(hd0,1)' linux /tc/boot/vmlinuz initrd /tc/boot/core.gz }

Any time you update Grub configuration files you must update refresh Grub

update-grub

Now reboot your system with reboot to see a loader screen with an option to select Tiny Core. If no boot menu appears during startup, press and hold the left shift key during boot to show a boot menu.

The actual booting of Tiny Core does not work! The menu item exists but for some reason cannot load kernal. Please leave suggestions in comments below.

comments powered by Disqus