Launch Puppy Linux live from a USB multi boot iso grub entry

Booting, installing, newbie
Post Reply
Message
Author
jptsetung
Posts: 5
Joined: Wed 21 Feb 2018, 08:14

Launch Puppy Linux live from a USB multi boot iso grub entry

#1 Post by jptsetung »

Hi,

I'm trying to launch the PuppyLinux live iso from a a multiboot grub menuentry.

So far it didn't work.

I have this menu entry in my grub cfg file :

Code: Select all

set root='(hd2,4)'
search --no-floppy --fs-uuid --set=root 8883-AD5A
loopback loop /ISOs/xenialpup-7.5-uefi.iso
linux (loop)/vmlinuz boot=casper  iso-scan/filename=/ISOs/xenialpup-7.5-uefi.iso pmedia=cd locale=en_US setkmap=fr bootkbd=fr console-setup/layoutcode=fr noeject --
initrd (loop)/initrd.gz
The iso file is on a fat32 partition on a bootable external hardrive. When I boot the computer, it successfully boot on the external hardrive, the grub menu is shown. I select the Puppy menu entry.

It seems to work at first, the grub seems to successfully initiate the process of loading the OS, but after a couple of seconds it stops, and the console says ; puppy_xenialpup_7.5.sfs not found on /dev/sdb3 I'll be able to post a screen shot of the error in a couple of hours.

jptsetung
Posts: 5
Joined: Wed 21 Feb 2018, 08:14

#2 Post by jptsetung »

Here is the screenshot of the puppy boot console

https://photos.app.goo.gl/XjuxHGMgEiD8R08C3

watchdog
Posts: 2021
Joined: Fri 28 Sep 2012, 18:04
Location: Italy

Re: Launch Puppy Linux live from a USB multi boot iso grub entry

#3 Post by watchdog »

jptsetung wrote:

Code: Select all

set root='(hd2,4)'
search --no-floppy --fs-uuid --set=root 8883-AD5A
loopback loop /ISOs/xenialpup-7.5-uefi.iso
linux (loop)/vmlinuz boot=casper  iso-scan/filename=/ISOs/xenialpup-7.5-uefi.iso pmedia=cd locale=en_US setkmap=fr bootkbd=fr console-setup/layoutcode=fr noeject --
initrd (loop)/initrd.gz
I would simply try:

Code: Select all

menuentry "Xenialpup 7.5 uefi ISO " {
set root=(hd1,3)
loopback loop /ISOs/xenialpup-7.5-uefi.iso
linux (loop)/vmlinuz pmedia=usbhd pfix=fsck
initrd (loop)/initrd.gz
}

User avatar
Mike Walsh
Posts: 6351
Joined: Sat 28 Jun 2014, 12:42
Location: King's Lynn, UK.

#4 Post by Mike Walsh »

@jpsetung:-

The whole problem you're encountering is down to one thing. In normal operation, GRUB2 simply doesn't 'see' Puppy. At all.

That's due to the way Puppy works.....especially with a 'frugal' install. You may get on better with a 'full' install (although that's only recommended for RAM-challenged machines, normally.....and you tend to lose out on many of Puppy's more awesome features, like being being able to load/unload SFS packages 'on-the-fly'.)

GRUB2 looks for a /boot folder, and I don't think even a 'full' Puppy install uses one of those. So, try watchdog's advice from above; you have to give GRUB2 different instructions as to how to 'see' Pup.


Mike. :wink:

jptsetung
Posts: 5
Joined: Wed 21 Feb 2018, 08:14

#5 Post by jptsetung »

I tried watchdog's menuentry, but I still get the exact same error. I'll try to see if some multi boot usb tools know how to do it. I found this interesting one but no puppy linux entry https://github.com/thias/glim/tree/master/grub2

watchdog
Posts: 2021
Joined: Fri 28 Sep 2012, 18:04
Location: Italy

#6 Post by watchdog »

Try again my menuentry but before booting extract from the iso file the puppy_xenialpup_7.5.sfs and the zdrv_xenialpup_7.5.sfs at root directory of sdb3. I can boot xenialpup 7.5 ISO file in a sdb1 usb hd with the following menuentry:

Code: Select all

menuentry "Xenialpup 7.5 ISO (frugal on sdb1)" {
set root=(hd1,1)
loopback loop /xenialpup-7.5-uefi.iso
linux (loop)/vmlinuz pmedia=usbhd psubdir=xenialpup-7.5 pfix=fsck
initrd (loop)/initrd.gz
}

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#7 Post by fredx181 »

I have grub2 installed on one of my USB sticks and a normal frugal install works fine for me (formatted as ext2).
EDIT: Tried when formatted as ext4, works fine also.
(extracted the contents of the Tahr ISO in folder "tahr")

Code: Select all

menuentry "Puppy Tahr" {
set root=(hd0,1)
linux /tahr/vmlinuz psubdir=tahr pfix=fsck 
initrd /tahr/initrd.gz
}
Booting straight from puppy ISO I never could make it work with grub2, tried a lot.
(however, didn't do what watchdog suggested in previous post)

Fred

jafadmin
Posts: 1249
Joined: Thu 19 Mar 2009, 15:10

#8 Post by jafadmin »

If you drop a copy of the puppy_xenialpup_7.5.sfs on sda3, it should boot.

It's a limitation of Grub2

jptsetung
Posts: 5
Joined: Wed 21 Feb 2018, 08:14

#9 Post by jptsetung »

OK thank you all, I'll probably try to extract the ISO somewhere then, I'll let you know.

jptsetung
Posts: 5
Joined: Wed 21 Feb 2018, 08:14

#10 Post by jptsetung »

Nice, it's working! Thank you all.

So in the end here is the process.

Unarchive the .iso somewhere, corresponding to the $basepath variable in the menuentry.

And use this menuentry (note I used parameters to set the default layout to azerty, not sure which options are useful, but in the end it works, but my puppy was in azerty after the boot) (8883-AD5A is the partition uuid where the .iso was unarchived).

Code: Select all

search --no-floppy --fs-uuid --set=root 8883-AD5A
set basepath="/ISOs/xenialpup-7.5-uefi "
set azerty="pkeys=fr setkmap=fr bootkbd=fr console-setup/layoutcode=fr"
linux ${basepath}/vmlinuz psubdir=$basepath pfix=fsck $azerty
initrd ${basepath}/initrd.gz 

Post Reply