remaster live cd to use grub2 --- test one
Status: Assistant
Joined: 21 Sep 2008
Posts: 358
Location: Australia
Reply Quote
The purpose of each "test" topic is separate each test to its core function to help with trouble-shooting. Some may also understand smaller threads than one large one?

To test we can build an iso to use grub2 instead of isolinux. No attempt to keep the installer functions of the original live cd or remaster the squash file.

Original live cd is about 280 Megs. In case original cd is no longer available see post 2

:: Code ::

mkdir -p BURN/live BURN/boot
wget -nc debian.iso
mkdir /tmp/iso
mount -o loop debian.iso /tmp/iso

tmp/iso/live is the folder that contains the kernel, initrd and the squashfile we need.

Rather than a command, I used mc
file manager to copy off certain files so that I ended up with the following structure and created a new grub.cfg with the following output

I already had grub2 installed on my host machine and no grub2 was installed in the debian live cd that I chose to download. So it makes to sense to say you need grub2 installed or unpacked to be able to complete the below steps.

:: Code ::

ls -al BURN
total 16
drwxr-xr-x 3 root   root   4096 Jan 30 07:55 boot
dr-xr-xr-x 2 root   root   4096 Jan 30 07:52 live

ls -al BURN/boot
total 12460
drwxr-xr-x 3 root root     4096 Mar  4 19:21 .
drwxr-xr-x 4 root root     4096 Feb  4 14:32 ..
drwxr-xr-x 3 root root    12288 Mar  4 19:22 grub
-r--r--r-- 1 root root 10415280 Oct 14 16:12 initrd2
-r--r--r-- 1 root root  2298848 Oct 14 16:12 vmlinuz2

ls -al BURN/live
total 197460
drwxr-xr-x 2 root root      4096 Mar  4 18:30 .
drwxr-xr-x 4 root root      4096 Feb  4 14:32 ..
-r--r--r-- 1 root root 201986048 Oct 14 16:11 filesystem.squashfs

cat boot/grub/grub.cfg

menuentry "LiveCD" {
linux /boot/vmlinuz2 boot=live config
initrd /boot/initrd2

Contents of folder grub not shown to save page space

The grub folder is from my hard drive and you would swap in the new grub.cfg

If you wonder why I have a kernel and initrd with names ending in 2,
its because the live cd had TWO kernels and initrds on them in the live folder and I wanted the ones to boot a 686 system and not a 386 system.

2) Now the isobuild command needs some files and then the command

:: Code ::

apt-get install grub-rescue-pc xorriso

grub-mkrescue --output=a.iso burn

Change "a" to any filename you like.

You must be at the top level and not drilled down into burn folder.
a.iso will appear at your home folder level or /tmp level.

3) Tested in virtualbox.....iso boots
size of new distro became 222 Megs

End of test one.

1) No need to have a
insmod iso9660 in the grub.cfg
2) No need to have a
root=(string) in grub.cfg
3) This may not be the same for a different squashfile but is true for debian-live and grml. YMMV
4) No need to set the grub root with
set root=(hdX) in grub.cfg
5) the keyword ....config is mentioned in the debian live script init inside its initrd.

< Edited by aus9 :: Apr 30, 12, 4:12 >

Back to top
Status: Assistant
Joined: 21 Sep 2008
Posts: 358
Location: Australia
Reply Quote
alternative download site for live cd ....the original is
Back to top
Status: Assistant
Joined: 21 Sep 2008
Posts: 358
Location: Australia
Reply Quote
Rebuilding using updated live cd 6.0.4

-- as I also want to change the way I was using apt sources, I now need to use Apt-pinning if I attempt to upgrade elite.iso
Back to top
Display posts from previous:   

All times are GMT - 8 Hours