Pupsave Creation at First Shutdown [Alternative Solution]

Please post any bugs you have found
Message
Author
musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#21 Post by musher0 »

Ah, boot from grub. Ok. Back in a few minutes.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#22 Post by musher0 »

Here you go, Mick.

Concerning your "EDIT": I only put a diskette in the diskette drive when I
get nostalgic about FREEDos, never in Linux. It would be strange, wouldn't
it, if the Puppy detected an 1T eSATA drive as a 1.44K diskette drive. A
"snake eating its tail" kind of thing. Just a thought.

In any case, I edited the first post of this thread to make clear to those
users who may experience a similar problem that there are a couple of
valid work-arounds for this bug.

BFN.

musher0
Attachments
debogage2.zip
(1.5 KiB) Downloaded 322 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#23 Post by 01micko »

Bingo!

Found the source of the bug... initrd is not recognising that you have an ext3 filesystem!

Code: Select all

DEV1FS=''
Now to find out why :? . Hmm,.. there is a cutdown "probepart" in the initrd, I guess thats as good as any place to start.

Here's something radical to try. Remove the slacko-5.6.1.sfs (yes, the main one), leave the initrd and vmlinuz there, and boot. It will say something like "can't find slacko-5.6.1.sfs .. dropping out to initial ramdisk console".
You'll be dumped to "#". Type "/sbin/probepart_init" (no quotes). Tell me if sda2 has a filesystem according to the output, plus other partitions results as well. Sorry, there is no way to save these results, just snap or write 'em down.

----------------------------------
[a little later ]

While you in are the ramdisk shell environment run this also;

Code: Select all

guess_fstype /dev/sda2
And why not try on other partitions?

IF THAT FAILS.. try this one.

Code: Select all

blkid /dev/sda2
Puppy Linux Blog - contact me for access

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#24 Post by musher0 »

Hi, Mick.

Another requested report.

For some partitions, the last field of the probepart_init reading is unsure.
That part of my report is a transcript from blurry or overexposed pictures.
I hope it's not too important. I can send the pics in a separate archive, or
redo the tests with a steadier hand if you need them.

As you will see, the low-level Linux recognizes the file types for all the
partitions.

Thanks again. BFN.

musher0
Attachments
report.txt.zip
(781 Bytes) Downloaded 326 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#25 Post by 01micko »

Ok, my last post was crap (rdsh ? :roll: .. still crap), you can get all that from running pup anyway (pfix=ram of course).

Take a look in /initrd/tmp, zip up all those logs and post them, should cover everything and if/why there is a breakdown in the initrd.

TIA
Puppy Linux Blog - contact me for access

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#26 Post by musher0 »

01micko wrote:Ok, my last post was crap (rdsh ? :roll: .. still crap), you can get all that from running pup anyway (pfix=ram of course).

Take a look in /initrd/tmp, zip up all those logs and post them, should cover everything and if/why there is a breakdown in the initrd.

TIA
Here you are! :)
Attachments
initrd-tmp.tar.gz
(1.7 KiB) Downloaded 347 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#27 Post by musher0 »

Hello, all.

Here's a reprint from a message sent a few minutes ago:
~~~~~~~~~~~~~~~
Hello again, Mick.

I tried Godt's patch: no joy. However replacing the busybox blkid in
/sbin with the attached solves the problem, in CLI [mode] as least.

I did check BK's code with set -xe earlier and his exit script has no
errors. It's the Imperial Poodle who wrote the busybox applet for
blkid who should be chastised. (I hope you're not said Poodle!) :)

For the record: (will save you some typing)
* rename the link blkid in /sbin to blkid-NO
* unpack the attached in /sbin
* make a link from blkid-2.23 to blkid.
Done.

The attached blkid utility is a ready-made binary from archlinux, upx'd.
Version number -- of the utils-linux series it's from -- is 2.23. You may
wish to compile your own from the latest utils-linux-2.24 for your next
re-mastering / woofing of slacko.

Problem solved, as far as I'm concerned. TWYL.

Have a great day! (Which it is, isn't?) :D

musher0
~~~~~~~~~~~~

Voilà ! BFN.

musher0
Attachments
blkid-2.23.tar.bz2
(29.24 KiB) Downloaded 299 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#28 Post by musher0 »

(Was initially in the first post. Brought here in an effort to re-organize
things.)
~~~~~~~~~~~~
Edit Nov. 24, 2013
~~~~~~~~~~~~

Hello all!

I'm awaiting 01micko's diagnosis of my latest test and will edit this intro
further when it comes in.

But I think it is safe to say that:
* this problem is more likely to exist if you launch your Puppy through
__ grub4dos or similar, from a folder you have nested it in.

* the cause (has been validated) is incorrect recognition of an
__ external eSATA drive by Puppy's busybox blkid utility. If the
__ busybox utility is replaced with the full one, the problem goes away.
(Edit, Nov. 27, 2013)

* Edit, Nov. 25, 2013. On the subject of the language or locale being a
__ factor in this bug: a recent report from someone using a dual EN/PL
__ keyboard setting has come in, suggesting that locale has no effect.

* At the time of this writing, there are four known solutions at the newbie
__ level if you experience this bug:

0) (Point zero)
Before booting the new Puppy, if you don't already have a special folder
for this new Puppy, create one on your disk, with the name of said new
Puppy. Write this name down, and also the name of the partition (/mnt/
sda2, for example). You'll be working half-blind and under stress for the
next few minutes, so this note will be helpful if your memory gets short.

1) Create a pupsave file beforehand in said folder, as per instructions
listed here:
http://murga-linux.com/puppy/viewtopic. ... ost#737783
The new Puppy will pick it up correctly at 1st boot. Do some minimal
configuration changes. Exit and reboot with the same pupsave file to
validate. If things are ok, you're done. Congratulations!

If things are not ok... read on.

2) Burn the Puppy ISO to CD, and boot from this CD. Type Code:
puppy pfix=ram


at the initial prompt. Once inside Puppy, edit your configurations minimally
and reboot. Folllow the prompts to create a pupsave file. When asked
about the place where to put it, type in the name of the folder you jotted
down earlier. Once done, remove your CD, and reboot through the
grub interface to validate.

If the desktop looks fine and things are ok, you're done. Again,
congratulations!

If things are not ok... read on.

3) Boot your Puppy from the grub interface or the CD, it does not matter.
Do some minimal configuration changes. But instead of exiting directly,
open a console, type Code:
shutdownconfig


and follow the prompts. Once the process is finished, close the console.
Check in the Puppy-derivative folder to see if you now have a pupsave
file. You should.

Now exit normally. You will be asked the same questions again. Give the
appropriate answers and/or choices (same as before) until you come to
the end of the process. This time, though, the process will have saved
your configurations in the pupsave file and then kick you out! Reboot
with same pupsave file to validate. If things are ok, you're done.
Congratulations!

If things are still not ok... read on.

4) Boot your new Puppy through the grub interface. Use the replacement
solution mentioned below at
http://murga-linux.com/puppy/viewtopic. ... ost#739203.
(This a manual copy process. Double-check yourself. You will be replacing
the existing rc.shutdownconfig in folder /etc with one from an older derivative of Puppy.)
Ask to exit and follow the prompts. This is a non-recommended solution,
but if it works... hush -- and use it.

If things are still not ok... try another breed of Puppy?

I guess that's it for now.

Have a pleasant day or evening!

musher0
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#29 Post by musher0 »

Edits: Nov. 26, 2013; Nov. 30, 2013.
~~~~~~~~~~~~
Hello, everyone.

The work-arounds described above may still be needed for earlier Puppies,
but I believe that I have finally found a system solution. Please read
http://murga-linux.com/puppy/viewtopic. ... ost#739666.
Hopefully, the developers will incorporate it in the coming Puppies.

Enjoy!

musher0
Last edited by musher0 on Sat 30 Nov 2013, 08:09, edited 1 time in total.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#30 Post by musher0 »

(Re-edited Nov. 30, 2013 in an effort to re-organize the subject.)
~~~~~~~~~~~~
Bug is still present in slacko-5.6.3_alpha. Sorry for the false joy, folks!
Please use one of the work-arounds above if you have this bug, or the
attached script. It will create a 384 Mb pupsave for a number of Puppies,
not only for slacko Puppies.

As usual, once unpacked, make the script executable before running.

Later, should you need to enlarge that file, go in a console, type

Code: Select all

echo 393000 > pupsaveresize.txt
and hit < Return >. Then, reboot with the same Puppy. Upon reboot, the
Puppy will add 384M (in human-understandable numbers) to your already
existing pupsave file. You may repeat this simple process every time your
pupsave file gets nearly full.

BFN.

musher0

~~~~~~~~~~~~~~
Edit, Nov. 30, 2013.
I leave this attachment here for historical purposes, but please use the
new, more precise one, located below at
http://murga-linux.com/puppy/viewtopic. ... ost#740648
Thanks.
Attachments
alt-pupsave-create.zip
Run in terminal. Explanations are provided as you go.
(1.15 KiB) Downloaded 313 times
Last edited by musher0 on Sat 30 Nov 2013, 21:32, edited 1 time in total.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Karl Godt
Posts: 4199
Joined: Sun 20 Jun 2010, 13:52
Location: Kiel,Germany

#31 Post by Karl Godt »

echo "Let's begin."
echo
mount /dev/sda1 /mnt/sda1 >/dev/null 2>&1
cd /mnt/sda1
echo "Here are the names of some common Puppies:"
echo
WOW ! /dev/null for trouble shooting. Very informative. Thanks. Common in Puppyland .
:?
«Give me GUI or Death» -- I give you [[Xx]term[inal]] [[Cc]on[s][ole]] .
Macpup user since 2010 on full installations.
People who want problems with Puppy boot frugal :P

User avatar
L18L
Posts: 3479
Joined: Sat 19 Jun 2010, 18:56
Location: www.eussenheim.de/

#32 Post by L18L »

Karl Godt wrote:
...
echo "Here are the names of some common Puppies:"
...
WOW ! /dev/null for trouble shooting. Very informative. Thanks. Common in Puppyland .
:?
...and here is the full list: Puppy Derivatives :lol: :lol:

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#33 Post by musher0 »

Thank you, gentlemen. Your feedback is appreciated.

@Karl:
Check for (open) sda1 partition is now done at the start in an if...else
structure.

@L18N
"some" changed to "recent".
  • Your URL points to a thread on derivatives -- also of Puppy clubs. It's
    useful, but this script would need a full list of the "pupsave" file names,
    if it exists, not of the actual Puppies.

    It might be very long, so no other edit is envisioned on this sub-subject; I
    leave it to the user, to be careful.
Again, thank you both for your input.

Best regards.

musher0
~~~~~~~~~~~~~~
Edit, Nov. 30, 2013.
To the user: I've left this attachment for historical purposes, but please use the new, more precise one, located below. Thanks.
Attachments
alt-pupsave-create2.zip
(1.3 KiB) Downloaded 245 times
Last edited by musher0 on Sat 30 Nov 2013, 22:22, edited 1 time in total.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#34 Post by musher0 »

@L18N
This additional edit presents the list of recent pupsave filenames with
some checking within a case...esac structure. Thanks for the unlikely
"inspiration" ! :lol:

BFN.

musher0
~~~~~~~~~~
To the user:
Attachment left here for historical purposes. Please use version 4 below. Thanks.
Attachments
alt-pupsave-create3.zip
(1.53 KiB) Downloaded 254 times
Last edited by musher0 on Sun 01 Dec 2013, 17:35, edited 1 time in total.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
L18L
Posts: 3479
Joined: Sat 19 Jun 2010, 18:56
Location: www.eussenheim.de/

#35 Post by L18L »

musher0 wrote:...Thanks for the unlikely
"inspiration" ! :lol:
Maybe another inspiration:
running your script it wrote:ls: cannot access /mnt/sda1: No such file or directory
Please mount partition /mnt/sda1 and restart the script.
If you are on a diskless station, burn your Puppy on
DVD and use it in multi-session mode; this script is of
no use to you.
#

Really, of no use for me but hopefully for others.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#36 Post by musher0 »

L18L wrote:
musher0 wrote:...Thanks for the unlikely
"inspiration" ! :lol:
Maybe another inspiration:
running your script it wrote:ls: cannot access /mnt/sda1: No such file or directory
Please mount partition /mnt/sda1 and restart the script.
If you are on a diskless station, burn your Puppy on
DVD and use it in multi-session mode; this script is of
no use to you.
#

Really, of no use for me but hopefully for others.
Hi, L18L.

I realize this script will be useful for only a few users.

A clarification if I may: are you running on a diskless machine or is your
sda1 partition simply not mounted?

What is

Code: Select all

blkid | grep "v/sr"
telling you?

Thanks in advance.

musher0
~~~~~~~~
Edit: ok, got it. Will use blkid in combination with ls for finer detection.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#37 Post by musher0 »

Hello, all.

Another edit. This version provides additionnal checks: for ntfs drive and diskless computer.
Any constructive comments will be welcome.

Best regards.

musher0
Attachments
alt-pupsave-create4.tar.bz2
(1.92 KiB) Downloaded 227 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
Karl Godt
Posts: 4199
Joined: Sun 20 Jun 2010, 13:52
Location: Kiel,Germany

#38 Post by Karl Godt »

There is the

Code: Select all

mkdir -p /mnt/"$DRV"
missing..

Still /dev/null ..

No rox /mnt/"$DRV" .. to check for progress at least at the end ..

If I get error messages a clear will erase them ..

Nicely written and readable, but content is less than the eye .

User avatar
Karl Godt
Posts: 4199
Joined: Sun 20 Jun 2010, 13:52
Location: Kiel,Germany

#39 Post by Karl Godt »

And almost forgotten to mention that error checks are missing .

Code: Select all

mkdir -p /mnt/"$DRV"
mount /dev/"$DRV" /mnt/"$DRV" 
[ $? = 0 ] || { echo "Sorry.. unable to mount  /dev/$DRV /mnt/$DRV . Exiting.";exit 1; }
# Thanks to Karl_Godt for the feedback. Nov. 30, 2013.

Code: Select all

dd if=/dev/zero of="$NOM"save-arf.2fs bs=1k count=393000
[ $? = 0 ] || { echo "Sorry.. unable to create savefile correctly. Exiting."; return 1; }
mkfs.ext2 -q -m 0 -F "$NOM"save-arf.2fs
[ $? = 0 ] || { echo "Sorry.. unable to create filesystem in savefile. Exiting."; return 1; }
return 0

Code: Select all

       create
       [ $? = 0 ] || { echo "Some error occurred. Exiting. Sorry."; exit 1; }
  	  ;;

Code: Select all

      if [ "$A" = "y" ];then
		create
		[ "$?" = 0 ] || { echo "Some error occurred. Exiting. Sorry."; exit 1; }

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#40 Post by musher0 »

Karl Godt wrote:There is the

Code: Select all

mkdir -p /mnt/"$DRV"
missing..

Still /dev/null ..

No rox /mnt/"$DRV" .. to check for progress at least at the end ..

If I get error messages a clear will erase them ..

Nicely written and readable, but content is less than the eye .
Hi, Karl.

The above are now incorporated. Thanks.

As to your suggestions in the following post, the error check for the
"create" function is a good idea. The other ones seem to be more
trouble than they're worth, though.

I double-checked and the >/dev/null 2>&1 actually prevents an error,
given the context. Also, in the sequence

Code: Select all

if [ "$A" = "y" ];then
(line 91). the "else" statement is the error catcher. There is no need to
specifically error-catch the error-catcher, I think; the logic of the if-else-fi
structure does it.

Paranoia can be a virtuous sickness, you know. ;)

So here is version 5.

BFN.

musher0
Attachments
alt-pupsave-create5.tar.bz2
(1.97 KiB) Downloaded 231 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

Post Reply