How to boot USB key if BIOS won't boot from USB?

Booting, installing, newbie
Post Reply
Message
Author
dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

How to boot USB key if BIOS won't boot from USB?

#1 Post by dam »

I have puppy on an old computer.
This computer can not be boot from USB key.
It is also a small computer that has no CDROM.
But I have a USB key slot and I was wondering (like maybe other newbees)... :idea:

Would it be possible to configure GRUB to set a path to boot a frugal (or full) install of puppy that would not be on the hard disk but on the one and only USB key slot so that it would be possible to run puppy from the USB key.
So grub would run from the hard disk, mount (?) the USB key, and load puppy onto the RAM.
So, like that it would be actually possible to boot from a USB key even if it is not bootable according to the bios...
:shock:
I m talking crazy or is it possible ?
Thank for your answers, :D
Cheers,
Dam

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#2 Post by rcrsn51 »

It's easy. You set up GRUB for a regular frugal install, except that the first two Puppy files (vmlinuz and initrd.gz) are on the hard drive and the second two files (pupxxx.sfs and zdrvxxx.sfs) are on the USB drive. [Edit] In newer versions of Puppy, the first two files must also be on the USB drive. Then change the GRUB menu argument to PMEDIA=usbflash. Once the kernel has loaded off your hard drive, Puppy's hardware detection will find itself on the USB drive. However, this old machine is probably USB1.0 and will be slow to load Puppy.
Last edited by rcrsn51 on Tue 25 Sep 2007, 19:58, edited 1 time in total.

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

boot from USB key without bios recognization

#3 Post by dam »

Thank you for your answer rcrsn51 :D ,
It's easy. You set up GRUB for a regular frugal install, except that the first two Puppy files (vmlinuz and initrd.gz) are on the hard drive and the second two files (pupxxx.sfs and zdrvxxx.sfs) are on the USB drive.


:arrow: ok, so for what I understand step 1, I just copy vmlinuz and initrd.gz on the hard disk (hdaX), must be on the root I think, and the second two files on the USB keybe on the root two. I do not need to touch GRUB at this very moment, isn't it, it is just about copying files.
Then change the GRUB menu argument to PMEDIA=usbflash. Once the kernel has loaded off your hard drive, Puppy's hardware detection will find itself on the USB drive.

:arrow: All right, si if I got it, step 2, I change my grub settings and it should look like that :
title Puppy Linux
root (hdX,X)
kernel /vmlinuz root=/dev/ram0 PMEDIA=usbflash
initrd /initrd.gz


I have USB 2.0 so I think it will be ok with the speed. :)

:!: Now, I think that from puppy 2.16 and forthcoming puppy 2.20 I can ask the universal installer to set a frugal install and then move the two files to the USB key and rewrite GRUB menu.lst. But I have the 2.17 version and there are many issues with the installer so I will have to try to do things manually.
I will post the results later.

Thank you for your following :D ,
Cheers,
Dam

NinerSevenTango
Posts: 186
Joined: Sun 17 Jun 2007, 18:25

#4 Post by NinerSevenTango »

Or you can use the wakepup floppy.

--97T--

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

#5 Post by John Doe »

or use the CD to boot the machine and type:

puppy pmedia=usbflash

at the prompt

if that doesn't work, older puppies require:

puppy PMEDIA=usbflash

I think 2.14 and back needed uppercase

macadavy
Posts: 213
Joined: Mon 12 Jun 2006, 07:43
Location: Cascadia's Attic, eh?

Wakepup floppy

#6 Post by macadavy »

As stated in his initial post: he has no CD-ROM.
NST: Could you elaborate on how exactly the wakepup floppy can be used to boot to a USB? I have the same problem (i.e. bios cannot be set to boot from USB). It seems this might be the simplest solution.
[i]Welcome to my weird, wild, wonderful, wired world![/i]

NinerSevenTango
Posts: 186
Joined: Sun 17 Jun 2007, 18:25

Re: Wakepup floppy

#7 Post by NinerSevenTango »

macadavy wrote:NST: Could you elaborate on how exactly the wakepup floppy can be used to boot to a USB? I have the same problem (i.e. bios cannot be set to boot from USB). It seems this might be the simplest solution.
Format floppy, then chkdisk it if you have dos or windows. No bad sectors allowed.

Format usb stick as FAT32

Copy Puppy onto usb stick, same as for frugal hd install.

Make wakepup floppy from within Puppy: Menu-Setup-Wakepup.

Hope that helps!

--97T--

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

Re: Wakepup floppy

#8 Post by John Doe »

NinerSevenTango wrote:Make wakepup floppy from within Puppy: Menu-Setup-Wakepup.
if interested, provide feedback from this image:

http://www.murga-linux.com/puppy/viewto ... 593#139593

instructions are here:

http://www.murga-linux.com/puppy/viewto ... 924#122924

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

On the road to try

#9 Post by dam »

I just wanted to thanks everybody,

I can not use wake up puppy because I have only one USB port...
I will try rcrsn51 way, though I had no answer on my doubts.
Will try anyway and post my result.

Cheers,
Dam

muggins
Posts: 6724
Joined: Fri 20 Jan 2006, 10:44
Location: hobart

#10 Post by muggins »

and another possible solution is to use grub to boot a wakepup floppy image that is on your hdisk, which then loads the usbkey. which is what i've done. this is the portion of my grub's menu.lst, using memdisk.bin to load wakepup2.img, which i can then use to boot usbkey:


Code: Select all

title wakepup
kernel (hd0,2)/boot/grub/memdisk.bin
initrd (hd0,0)/lib/wakepup2.img

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

Not that easy

#11 Post by dam »

It's easy. You set up GRUB for a regular frugal install, except that the first two Puppy files (vmlinuz and initrd.gz) are on the hard drive and the second two files (pupxxx.sfs and zdrvxxx.sfs) are on the USB drive. Then change the GRUB menu argument to PMEDIA=usbflash. Once the kernel has loaded off your hard drive, Puppy's hardware detection will find itself on the USB drive. However, this old machine is probably USB1.0 and will be slow to load Puppy.
OK, so it didn't work with puppy 2.17. I have :
error, cannot find Puppy on 'usbflash' boot media;
PUPMOD=1 PDEV1=
Exited to initial-ramdisk (initramfs) commandline...
(the Linux-guru can now debug, 'e3' editor is available)
I'm no guru :? , I will try with 2.16 too and post,
Cheers,
Dam

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

no luck

#12 Post by dam »

Just to follow the last post :
exact same result with 2.16 :(

Will try muggins advice
title wakepup
kernel (hd0,2)/boot/grub/memdisk.bin
initrd (hd0,0)/lib/wakepup2.img
but can you be more precise in the procedure, I'm a real beginner...
especially, what is memdisk.bin ? It is hard to find some info on it.
Thanks :D
Dam

muggins
Posts: 6724
Joined: Fri 20 Jan 2006, 10:44
Location: hobart

#13 Post by muggins »

i've attached memdisk.bin.zip. just extract memdisk.bin to the same location as your grub menu.lst file, /boot/grub. Then copy the wakepup2.img to the same location, (from /lib/wakepup2.img).

Then add these lines to menu.lst:

Code: Select all

title wakepup
kernel (hd0,0)/boot/grub/memdisk.bin
initrd (hd0,0)/boot/grub/wakepup2.img
[N.B. I'm assuming that your /boot/grub is on hda1. if not you'll have to alter the above to reflect your actual setup...hda1=(hd0,0) etc. also]

Also, you'll probably find usb-boot a bit slower. If it doesn't work, post back where it fails. john Doe also has another thread where he's making modifications to wakepup, & using his image could also be an option if you're unsuccessful. see here:

http://www.murga-linux.com/puppy/viewtopic.php?t=19831
Attachments
memdisk.bin.zip
(5.33 KiB) Downloaded 340 times

MayB
Posts: 19
Joined: Mon 10 Sep 2007, 20:08

#14 Post by MayB »

Here's an example for "a path"

# Linux bootable partition config begins
title Puppy USB216
rootnoverify (hd0,0)
kernel (hd0,0)/boot/p216/vmlinuz ramdisk_size=100000 init=/etc/init PMEDIA=usbflash
initrd (hd0,0)/boot/p216/initrd.gz
# Linux bootable partition config ends


Suggestion: Leave all files on USB. Puppy definately(!) sometimes requieres the boot files in the root folder. Migrating the p2xx subfolders from one partition to another can be the end of this kind of puppy booting. Vmlinuz and initrd.gz has to be then in the root folder!

Hope that helps!

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

question

#15 Post by dam »

Hello,
Suggestion: Leave all files on USB. Puppy definately(!) sometimes requieres the boot files in the root folder. Migrating the p2xx subfolders from one partition to another can be the end of this kind of puppy booting. Vmlinuz and initrd.gz has to be then in the root folder!
:arrow: mayB do you mean to leave all files on USB - FAT 32 - without copying Vmlinuz and initrd.gz on the harddisk partition root ? (maybe you stated that point in your sentence but I could not understand fully).

and what is the meaning of rootnoverify in

Code: Select all

 rootnoverify (hd0,0) 

Thanks you :) ,
Dam

dam
Posts: 28
Joined: Wed 15 Aug 2007, 00:04
Location: Tokyo

Sum up : Procedures for USB boot without USB boot OS

#16 Post by dam »

Thank you everybody,

:idea: There are many informations on that threat. So I will try to sum up, and it might be enhanced for a wiki later on.

:arrow: First there is the 'fifty/fifty' procedure described simply by rcrsn51 :
It's easy. You set up GRUB for a regular frugal install, except that the first two Puppy files (vmlinuz and initrd.gz) are on the hard drive and the second two files (pupxxx.sfs and zdrvxxx.sfs) are on the USB drive. Then change the GRUB menu argument to PMEDIA=usbflash. Once the kernel has loaded off your hard drive, Puppy's hardware detection will find itself on the USB drive. However, this old machine is probably USB1.0 and will be slow to load Puppy.
maybe it worked for some people, please do post. In my case it did not work (version 2.16 and version 2.17)

:arrow: An enhanced fifty/fifty procedure has been presented by MayB :
Suggestion: Leave all files on USB. Puppy definately(!) sometimes requieres the boot files in the root folder. Migrating the p2xx subfolders from one partition to another can be the end of this kind of puppy booting. Vmlinuz and initrd.gz has to be then in the root folder!
you also would have to add the following code line in Grub :

Code: Select all

# Linux bootable partition config begins
title Puppy USB216
rootnoverify (hd0,0)
kernel (hd0,0)/boot/p216/vmlinuz ramdisk_size=100000 init=/etc/init PMEDIA=usbflash
initrd (hd0,0)/boot/p216/initrd.gz
# Linux bootable partition config ends 
Still have to test this one.

:arrow: Then, there is the 'wakepup Hard Disk' procedure clearly described by Muggins :

Copy memdisk.bin (that can be found at this link http://murga-linux.com/puppy/viewtopic.php?t=21520 ) and wakepup2.img (from /lib/wakepup2.img) to the same location as your grub menu.lst file, /boot/grub.

Then add these lines to menu.lst:

Code: Select all

title wakepup
kernel (hd0,0)/boot/grub/memdisk.bin
initrd (hd0,0)/boot/grub/wakepup2.img
[N.B. I'm assuming that your /boot/grub is on hda1. if not you'll have to alter the above to reflect your actual setup...hda1=(hd0,0) etc. also]

Will try this one tomorrow and update,
Cheers and thanks for everybody support :) ,
Dam

MayB
Posts: 19
Joined: Mon 10 Sep 2007, 20:08

rootnoverify

#17 Post by MayB »

"rootnoverify"
Grabbed it from somewhere in this forum..!


No, the bootfiles exist twice, mainly where grub is pointed to.

I encountered when an install failed but the cdrom is still inserted puppy boots fine by confusing.

And as I said after migrating (on harddisks) the root directory was -is- requiered.

Cheers

macadavy
Posts: 213
Joined: Mon 12 Jun 2006, 07:43
Location: Cascadia's Attic, eh?

Booting USB (Puppy 2.17.1)

#18 Post by macadavy »

Thanks everyone who posted help here.
I just used the Puppy Universal Installer to install Puppy 2.17.1 to a 128MB(!) Transcend JetFlash USB stick and then used the Wakepup creation script to make a boot floppy. It works fine on my home computer and has since been tested on two other machines, worked on one but not the other, go figure!
[i]Welcome to my weird, wild, wonderful, wired world![/i]

Post Reply