install Puppy 5.1 to a usb hard drive

Booting, installing, newbie
Post Reply
Message
Author
MRT42
Posts: 27
Joined: Sat 04 Sep 2010, 06:56

install Puppy 5.1 to a usb hard drive

#1 Post by MRT42 »

I have succesfully installed Puppy 5.1 to a couple of flashdrives using the universal installer and it works perfectly. However, I would prefer to partition my usb harddrive and run puppy from it as it would give me more space. I partioned my usb drive and made an ext 2 partition and flagged it to boot. The install all goes well but when I try to boot from it I get the following error message and it refuses to boot.

"Searching for Puppy files in computer disk drives...lupu-510.sfs not found. Dropping out to initial-ramdisk console...
/bin/sh: can't access tty: job control turned off"

However, when I examine the partion all the files are there including the lupu-510.sfs file. What am I doing wrong? Thanks.
User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#2 Post by rcrsn51 »

I don't think that you are doing anything wrong. There have been some other reports of this problem. Puppy 5.1 can definitely be installed onto an external USB hard drive, but it seems to have trouble detecting some of them at bootup.

Another user claimed that he could get his drive working if he used the Bootflash utility instead. It will create a single FAT partition. Try this as a temporary solution and report back.

Also, try making your ext2 partition small (2 GB) and see if that makes a difference.
MRT42
Posts: 27
Joined: Sat 04 Sep 2010, 06:56

#3 Post by MRT42 »

No luck yet. I tried the bootstrap installer but it also did not work. I also tried making my ext2 partition 2gig but with the same result.
User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#4 Post by rcrsn51 »

There is another thread that describes your exact situation and I think that the problem is this: when you first power up your system, the BIOS detects the USB drive and starts the initial Puppy boot sequence. But then there is a short pause while Puppy does its own hardware detection. During that time, the USB drive shuts down, preventing Puppy from discovering it. This only happens with certain drives, possibly as a power-saving measure.

Here is one more thing to try: Use an ext partition with the Universal Installer. When done, find the file extlinux.conf on the USB drive and change it to this

Code: Select all

default vmlinuz initrd=initrd.gz pmedia=usbhd
This version will attempt to get Puppy started as fast as possible.

[Edit] If that doesn't help, there is another option we can discuss.
MRT42
Posts: 27
Joined: Sat 04 Sep 2010, 06:56

#5 Post by MRT42 »

Forgive me but I am not clear on what part of the extlinux.conf file to change. The text in it is as follows here below. What line do I change?

default puppy
display boot.msg
prompt 1
timeout 50

F1 boot.msg
F2 help.msg

label puppy
kernel vmlinuz
append initrd=initrd.gz pmedia=usbhd nosmp

I tried changing just the first line that begins with "default" since the line you suggest begins with "default" but it gave the same result as before when I tried to boot the harddrive.

In case it helps I can't even get puppy to boot with a CD and a lupusave file on my usb hard drive. It ignores the lupusave file and only boots from the cd alone. If what you describe is the problem that the hard drive is powering down then perhaps that is why puppy can't find the lupusave file on the harddrive either.

Thanks for sticking with me on this. I really appreciate it.
User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#6 Post by rcrsn51 »

I was suggesting that you replace the entire file with that one line. But from the sound of things, that won't work either.

Here is the other option. It involves adding a pause to the boot mechanism. During that pause, you will reboot your USB drive in hopes that Puppy will detect it.

Download and unpack the attachment below. It contains a single file named editinit. Copy it into the ext partition on your drive in the same location as the initrd.gz file.

Open a terminal window in that partition and type

Code: Select all

./editinit
This loads the init file into a text editor. Search for the line

Code: Select all

###FINDING PUPPY FILES###
It should be around Line 400. In the space ABOVE that line, add:

Code: Select all

 echo -n "Reboot the USB HDD and press Enter" > /dev/console
read X
Save the file and exit.

Boot off the USB drive. When the above message comes up, reboot your drive, wait a bit until it's ready and press Enter.
Attachments
editinit.tar.gz
(260 Bytes) Downloaded 469 times
MRT42
Posts: 27
Joined: Sat 04 Sep 2010, 06:56

#7 Post by MRT42 »

It worked. It booted up. However you must make sure you wait long enough for the usb drive to be completely rebooted or else it will mess it up and then it won't boot. Found out the hard way and had to reinstall and re-edit the editinit file. Seems to be working fine now though as long as I wait about 10 seconds after rebooting the usb drive.

This may show my ignorance but is there any other way to reboot the usb drive other than physically unplugging and replugging it?

Thanks again
Post Reply