can't boot from usb key

Booting, installing, newbie
Post Reply
Message
Author
lisztfr

can't boot from usb key

#1 Post by lisztfr »

Hello,

I get loads of errors after a while when booting from usb stick (Cruzer
128Mb), -this known errors :
cp_FULL <wants to create many hidden directories like

/root/.usr etc,

which arguments are seen as invalid). After that, a red [failed] appears,
and i'm asked for password/login for ever. Is there a solution ?
I have installed puppy from the script with default arguments, then booted
from floppy, (no cdrom drive in the machine).

thanks, laurent

User avatar
babbs
Posts: 397
Joined: Tue 10 May 2005, 06:35
Location: Tijuana, BCN, Mexico

#2 Post by babbs »

lisztfr,

I'd like to know more information about your situation? How did you put Puppy on it? By the script, or by copying files to it... Is Puppy the only thing on your thumb drive?

Please visit the Trouble Booting USB Keys wiki page at:
http://puppylinux.org/wikka/USBKeysTroubleBooting

Where is your pup001 file? Are you using one?

We would love to help you, but we need some more information. (I personally use Cruzer Mini 1GB with no problems... I do not think your problem is the size of yours unless you have other things on it too.)

Babbs

lisztfr

can't boot from usb key

#3 Post by lisztfr »

Hi babbs,

to put it clear, here the facts :

System :

DELL latitude CPx, Pentium III 450Mh, 312Mb of RAM;

USB 1.1, i can swap drives so that i have either floppy
or CD rom, but not both together.

USB stick = Cruzer 128Mb, formatted in windows ME
(i guess fat32)

Boot process : throught floppy, because the bios is unable
to boot from an usb device. Now, this boot floppy is very
nice, works as promised.

To answer your question, there is no pup001 file on the drive,
because the install script (from live -CD) didn't creat some)

There is much place on the drive, but i choosed to let puppy
not use the entire drive, and let a ms-dos partition stay
on the drive (it was say to be the preferred choice !)


Now, i'm booting :

==============================

Puppy wants to mount the users home device...
UMSDOS 0.86k (compatibility level 0.4, fast msdos)
/root/usr_cram.fs exists, but seems to be wrong version, rejecting.
looking for usr cram.fs on the CD....
Uniform CD-Rom Driver unloaded

/root/usr_cram.fs exists, but Puppy thinks that it is an old version.
However, as Puppy cannot find another usr_cram.fs, no choice but use it.

(snip)

Press ENTER key to continue:

(what i read then is )

cp-FULL: cannot create directory '/root/.jwn
cp-FULL: cannot create directory '/root/.mozilla
.......

same with the whole /root/. tree,

regulare file /root/.sylpheed-2.8 : invalide argument,


Nothing is created


cannot create /root/.etc/ramdisksize : directory none exist

unionfs: hidden directory /root/.usr is not a valid branch
unionfs_read super : error while parsing options (err = -2)
mount : Mounting none on /usr failed : invalid argument


Pausing for 60 seconds



exec: 1064: /root/.etc/rc.d/rc.local0: not found


And then, password, login, password, login...

no way to get even a prompt to see what is loaded

======================================

thanks for your help :)

laurent

lisztfr

can't boot from usb

#4 Post by lisztfr »

Sorry, i think i have a coaster here. CDcheck reported :

error;win32;Lecture impossible sur le p

lisztfr

can't boot from usb key

#5 Post by lisztfr »

Same happens with a valide CD. Now i can boot from
the CD (normal boot) so i'm sure it's ok. But i think puppy can't
find the usr cram.fs from the usb. There was a page how to help
puppy to find the cram.fs somewhere ...

laurent

Guest

#6 Post by Guest »

http://www.murga.org/~puppy/viewtopic.php?p=3095


i tried to copy usr_cram.fs in pup100, then in pup001, and
there it is completely hidden ! Then when i press ENTER to continue,
i get the same error as in my first post, and NO PROMPT.
so i cannot tell puppy where is usr_cram.fs :(

Getting desperate. maybe i should search for a previous
version, they say 1.02 runs fine ... ?

laurent

Guest

can't boot from usb key (SUCCESS)

#7 Post by Guest »

http://www.murga.org/~puppy/viewtopic.php?t=3875

Trying this WAKEUP11C gave a nice, clean boot, contrary to the
BOOT2PUP disk. NICE ! awaiting that for 2 years, thanks to this
amazing improved puppy i can boot this pitiful laptop without usb BIOS
support.
I must say, Puppy improved a lot since last time i gave it a try,
prior version 1, as it was only 32Mb. Now it's usable, fast, smart, etc.
Also nice to have a lot of *readable* documentation answering questions
that one have, -not like xemacs documentation.

laurent

craigbla
Posts: 2
Joined: Sun 05 Mar 2006, 16:57

#8 Post by craigbla »

Had exactly the same problem with 1.08R1 and this made it work:
I use a Sandisk cruzer mini 256 and this worked for me:
Format USB FAT32
Run syslinux z: (Win32 version for me under XP) z: = USB drive letter.
Copy these files from the Puppy CD to the key:
image.gz
usr_cram.fs
vmlinuz
Create syslinux.cfg (use an editor that respects UNIX conventions) EditPad or VIM - My syslinux.cfg =
default vmlinuz root=/dev/ram0 initrd=image.gz
append PSLEEP=25 PHOME=sda1 PFILE=pup100-none-131072

Done!
Craig

mike5713
Posts: 5
Joined: Mon 06 Mar 2006, 00:16

#9 Post by mike5713 »

Maybe the problem is that your drive is too small. Puppy itself only uses ~60MB, but it tries to create a 256MB pup001/100 file. If your drive is 128MB, it probably doesn't have enough space even for a smaller pup100. There are some files that have to be in the pup100. Maybe there's not enough space on the drive to store them.

khisanth
Posts: 3
Joined: Fri 10 Mar 2006, 13:39

#10 Post by khisanth »

having the exact same issue, which ends with asking for a password.

I Used the puppy usb wizard to create the USB files

The USB key is a verbatim 256 megs, which should be more than enough.

I think it is related to how puppy sees the usb port(as told on the wiki usb troubleshooting), it may see it as a usb hub.

shankargopal
Posts: 295
Joined: Sat 03 Dec 2005, 11:30

#11 Post by shankargopal »

I'm not entirely sure that this problem has anything to do with the USB stick, since I had exactly the same issue when booting off a multisession CD (please see my posts in this thread).

As I say in that thread I have no clue why this happens. Can someone more familiar with Linux / Puppy help out with this bug? I've seen several different posters complain of it, but not sure if there are any solutions yet...

khisanth
Posts: 3
Joined: Fri 10 Mar 2006, 13:39

#12 Post by khisanth »

I'm certain there is a solution, since i succesfuly used another Small linux distribution, "the System rescue CD" from a usb stick (http://www.sysresccd.org) with the same machine.

I do not know the HowTo, but they made it work. So there must be way to make it work with Puppy also.

The Puppy FAQ says that if we know how to make it work with a usb hub....to send them the info, i do not know how....but system rescue CD knows how, maybe puppy could ask them?

User avatar
babbs
Posts: 397
Joined: Tue 10 May 2005, 06:35
Location: Tijuana, BCN, Mexico

#13 Post by babbs »

khisanth wrote:I'm certain there is a solution, since i succesfuly used another Small linux distribution, "the System rescue CD" from a usb stick (http://www.sysresccd.org) with the same machine.

I do not know the HowTo, but they made it work. So there must be way to make it work with Puppy also.

The Puppy FAQ says that if we know how to make it work with a usb hub....to send them the info, i do not know how....but system rescue CD knows how, maybe puppy could ask them?
Hello khisanth,

I wrote the USB hub, let me know bit.

I once had a Verbatim, 256MB USB thumb drive. The last version of Puppy that I made bootable on it was 1.0.4. Back then, I did not have any equipment that would allow me to boot from USB (no provisions for it in the BIOS), so I had a boot floppy. With that boot floppy, I had no problems booting the Verbatim drive.

I don't know how small the pup001 file can be, but I also saved the pup001 file to the same Verbatim drive as the boot files. I remember that it was pretty small, but functioned (I suspect that it was greater than 128MB, but not sure/can't remember). I chose to not use this configuration since the port was USB 1.1 and I was too impatient. I put a new pup001 on the C:\ drive and booted to CD. I replaced this USB drive with a SanDisk Cruzer Mini 1GB and made the Verbatim drive just a disk for files.

Have you tried to use your thumb drive in different USB ports, on the front and back of the computer? See if you have different results. Do you have an internal USB port (my USB 2.0, PCI expansion card has four ports on the back plain plus one internal)?

Babbs

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

#14 Post by jmarsden »

I'm not sure who is going to step up and volunteer to become "Mr. USB Flash Drive" for Puppy, but we may need someone to take on that coordination role. Here are a few suggestions when collecting info on USB keys, that may help discover what the specific things are that make a particular drive able or unable to boot Puppy.

The idea is to boot Puppy from CD. Boot option 4 if you need to. Don't let Puppy use the USB key or seeit at boot, at all (just to be safe... actually it should be OK to even boot from it and then do these commands, but... play safe if you can reasonably do so). Then, once Puppy is booted and configured, you can open a console and run a few commands to collect some information about your USB flash drive. If we share this info (on the Wiki?), we can slowly gain enough examples to learn more about these drives and which aspects of them affect booting in Puppy. For some reason, Puppy does not seem to include the normal Linux "So, what's on my USB bus" command, lsusb. lspci is there, but not lsusb. seemsSo we have to work around the lack of it. We can use the /proc filesystem itself do to that, alongside fdisk and file and dd.

I'm going to assume there is probably some sort of Microsoft FAT partition on the drive; both drives I have here to test (KingMax 128MB and Sandisk Cruzer Micro 512MB) are like that... if we find many drives for which that assumption is incorrect, someone else can improve this initial list of ideas for us :-)

(A) fdisk -l /dev/sda
This should output information about the drive geometry and any partitions on it. This is the first piece of information to keep.

(B) file -s /dev/sda
This will usually say just

/dev/sda: x86 boot sector

(C) file -s /dev/sda1
This is more interesting and shows (at least for me!) a lot more info about the FAT partition on the drive, and its first sector in particular. For example:

/dev/sda1: x86 boot sector, code offset 0x58, OEM-ID "MSDOS5.0", sectors/cluster 32, root entries 512, Media descriptor 0xf8, sectors/FAT 123, heads 16, hidden sectors 233, sectors 999703 (volumes > 32 MB) , serial number 0x3b691afd, unlabeled, FAT (16 bit)

(D) dd if=/dev/sda count=1 2>/dev/null |LANG=C strings -o
This looks inside the first 1K of the drive and outputs any USASCII strings it finds and their offsets into that 1K of data. I don't know if it will be useful, yet. Example output:

Invalid partition table
Error loading operating system
Missing operating system

(E) dd if=/dev/sda count=1 2>/dev/null |LANG=C hexdump
This outputs the entire MBR and partition table in hex, removing repeated lines to save space. I'm not sure if it is 100% legal to post this info, since it could possibly be copyrighted code. Publish this info at your own risk!

(F) egrep "^[PST]" /proc/bus/usb/devices
So, what's on your USB bus(es)? This is some of the raw data that lsusb would interpret for us, if we had it. Here's one chunk of the output I get here, as a partial example:

T: Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 4 Spd=480 MxCh= 0
P: Vendor=0781 ProdID=5151 Rev= 0.20
S: Manufacturer=SanDisk Corporation
S: Product=Cruzer Micro
S: SerialNumber=200411006309fc919c83

That's probably enough data to collect to start with :-)

Rather than ask people to type in six commands.. here's a little script to do it for you, and format the output a bit in the process:

Code: Select all

#!/bin/sh
# usbreport.sh -- outputs various things about a USB drive 
#
DEV=${1:-/dev/sda}      # Device to probe, default to /dev/sda

if [ ! -b "$DEV" ]; then
  echo "$0: Error: $DEV is not a block device"
  exit 1
fi

newsection() { echo "-----$1-----" ;}

echo "$0: Report created at `date -u +%Y-%m-%d\ %H:%M:%S\ %Z`"
newsection
fdisk -l $DEV
newsection "$DEV and ${DEV}1 filetypes"
file -s $DEV
file -s ${DEV}1
newsection "Strings from first 1Kbtes"
dd if=$DEV count=2 2>/dev/null |LANG=C strings -o
newsection "Hex dump of first 1Kbytes"
dd if=$DEV count=2 2>/dev/null |LANG=C hexdump
newsection "Partial /proc/bus/usb output"
egrep "^[PST]" /proc/bus/usb/devices
newsection
In case it's not obvious: you can ask it to look at /dev/sdb or some other device by typing the /dev/sdb (or similar!) device name as a parameter to the script. The idea would be that people could redirect the output to a text file, and then post the results somewhere for "Mr. USB Flash Drive" (whoever he is!) to compare and analyze. Reporters should also say who they are, the make/model of their drive, and whether or not they have successfully booted Puppy from it, of course!

Hope this helps as you continue to work on figuring this stuff out :-) And no, I'm not Mr. USB Flash Drive -- all of this except for looking at /proc/bus/usb would work for normal hard disk devices too, it's just your usual Unix/Linux tools in action. You can verify this by running it as

Code: Select all

sh usbreport.sh /dev/hda |more
and see the results for your hard drive :-)

This script is intended only to read things, not write to any devices or disks. It should therefore be safe. I have run it on my system here with no problems (including running it against hda -- if I don't trust it, why should you!). However, if this somehow breaks your computer, your USB drive, or even causes your girlfriend or dog to run away from home and your house to fall down... I can't accept any responsibility for any of those things! Running code as root can have consequences. This code has no warranty, express or implied. It works for me. I hope it works for others too.

Would "Mr. USB Flash Drive" please step forward?

Jonathan

khisanth
Posts: 3
Joined: Fri 10 Mar 2006, 13:39

#15 Post by khisanth »

I'll try to answer you both, to the best of my knowledge. But i am no Linux expert, My skills are very limited with linux, i do not even consider myself a linux user.

I am working with windows terminals running windows CE or Windows XPE. Those terminals are fanless, pentiums 533, the same as a standard PC but stripped to the bone.

Using the SAME usb key on both, I was able to make puppy boot with the following terminal:
http://www.flext.ca/s170XP.html

But not with this one:
http://www.flext.ca/s150CE.html

The main difference is that the s150 has USB 1.1 ports instead of 2.0
The S150 has only 2 usb ports, while the one that works, the S170 has 4 (2 fronts, 2 back).

So i do not think the usb key format is a problem here(fat 16), since the same key works with one and not with the other pc. The same key also boots with another linux distribution. Problem should be in the puppy usb drivers somewhere.

I'd love to help you with running the usbreport.sh you posted. I saved it on the usb key under the name usbreport.sh and tried to run it in puppy with the command ./usbreport.sh

i am getting an error, bad interpreter: no such file of directory

(you remember now? my linux skills are limited!)

User avatar
babbs
Posts: 397
Joined: Tue 10 May 2005, 06:35
Location: Tijuana, BCN, Mexico

#16 Post by babbs »

I'd gladly turn over the wiki pages I have on USB to someone more knowledgable who is willing to work on them. I try my best with what I know. :)

One problem to consider with the USB 1.1 ports is that it takes longer to transfer the files from the drive to the system than it does with USB 2.0 ports. With my laptop, it would seem like it took forever to boot with its USB 1.1 ports. I routinely thought the system was hung. A couple times, I'd go away for a while (never measured the time) and Puppy would be up and running when I returned.

Some time ago, there were instructions to make the PSLEEP settings longer to overcome some errors. Although I think it was to keep the USB boot from timing out, I can't remember for sure. Try searching on psleep and usb to see what you find out.

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

#17 Post by jmarsden »

khisanth wrote:I'd love to help you with running the usbreport.sh you posted. I saved it on the usb key under the name usbreport.sh and tried to run it in puppy with the command ./usbreport.sh I am getting an error, bad interpreter: no such file of directory
Check that the first lne of the script is correct? You could also try

Code: Select all

sh usbreport.sh
instead? Or

Code: Select all

bash ./usrreport.sh
perhaps. Though I am not sure why running it directly failed for you, as /bin/sh should exist on pretty much any Puppy system, I would think?

Also, please note: running usbreport.sh isn't really helping me -- my USB keys work fine :-) It would hopefully help the community as a whole, especially if someone is willing to collect the results and try to make some sense of them.

Jonathan

Post Reply