1.0.3 error writing multisession to CD- aborts

Discuss anything specific to using Puppy on a multi-session disk
Post Reply
Message
Author
BungaDunga
Posts: 17
Joined: Sun 05 Jun 2005, 23:09

1.0.3 error writing multisession to CD- aborts

#1 Post by BungaDunga »

When I shut down my 1.0.3 multisession disc, it tries to write to the CD but fails, giving an error something like this:

Premature EOF on stdin
Input buffer read error, aborting.

It then just continues shutting down. The odd thing is that its certainly been able to write back to it at least twice before- is there any reason why it might refuse to now? If I start it up, do nothing, and shut down, it goes through the whole writing part without error- but, of course, writes no data.

User avatar
Ian
Official Dog Handler
Posts: 1234
Joined: Wed 04 May 2005, 12:00
Location: Queensland

#2 Post by Ian »

Have you tried the first multi-session version to see if the same error occurs.
I haven't got around to trying multi 1.0.3 but as it is using the 2.4 kernel it should work like the earlier one.

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#3 Post by BarryK »

The shutdown script is in /tmp/rc.reboot, which is a copy of /etc/rc.d/rc.reboot-cd.

There's a long line in there somewhere that feeds the list of files to cdrecord.
Here it is:

Code: Select all

mkisofs -J -R -C $SECT -M $DEV -pad -new-dir-mode 0755 -P "Puppy Linux" -p "Barry Kauler" -graft-points -path-list /tmp/listfinalshutdown.txt  $MYDATE/$LOG=$LOG | cdrecord -multi -data -eject -v speed=4 gracetime=1 dev=$CDR  -
It seems that something is wrong in here somewhere.
Maybe /tmp/listfinalshutdown.txt has an invlide entry in it ...just guessing.

You could try inserting some code just before this line, like this:

Code: Select all

echo "MYDATE is $MYDATE"
echo "LOG is        $LOG"
echo "CDR is        $CDR"
echo -n "Press ENTER: "
read xxzz
cat /tmp/listfinalshutdown.txt | more

User avatar
ezeze5000
Posts: 347
Joined: Tue 10 May 2005, 17:48
Location: Missouri U.S.A
Contact:

puppy-1.0.3 multisession

#4 Post by ezeze5000 »

I'm writing this to you on puppy-1.0.3 multisession and it works real good

It burns ok to save session.

BungaDunga
Posts: 17
Joined: Sun 05 Jun 2005, 23:09

#5 Post by BungaDunga »

BarryK wrote:The shutdown script is in /tmp/rc.reboot, which is a copy of /etc/rc.d/rc.reboot-cd.

There's a long line in there somewhere that feeds the list of files to cdrecord.
Here it is:

Code: Select all

mkisofs -J -R -C $SECT -M $DEV -pad -new-dir-mode 0755 -P "Puppy Linux" -p "Barry Kauler" -graft-points -path-list /tmp/listfinalshutdown.txt  $MYDATE/$LOG=$LOG | cdrecord -multi -data -eject -v speed=4 gracetime=1 dev=$CDR  -
It seems that something is wrong in here somewhere.
Maybe /tmp/listfinalshutdown.txt has an invlide entry in it ...just guessing.

You could try inserting some code just before this line, like this:

Code: Select all

echo "MYDATE is $MYDATE"
echo "LOG is        $LOG"
echo "CDR is        $CDR"
echo -n "Press ENTER: "
read xxzz
cat /tmp/listfinalshutdown.txt | more
Erp. It looks like I have been wasting your time rather. When I was messing around trying to get it to write, a line caught my eye as it whizzed past:

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#6 Post by BarryK »

No, the changes won't stick. You will have to remaster the CD, for which there is a script, and /root0/.etc/rc.d/rc.reboot-cd will have to be edited in image.gz.

Anyway, I have made the correction for Pup 1.0.4.

What you could do is write a little script in /etc/rc.d/rc.local, as this file does "stick". The script could modify /tmp/rc.reboot at every bootup.

Something like this:

Edit /tmp/rc.reboot and place modified version in /root/my-documents/rc.reboot

Then in /etc/rc.d/rc.local:

cp -f /root/my-documents/rc.reboot /tmp/

You can remove this after Puppy is upgraded to v1.0.4.

BungaDunga
Posts: 17
Joined: Sun 05 Jun 2005, 23:09

#7 Post by BungaDunga »

Well- I took a little break from Puppy, and just today I tried your instructions. I

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#8 Post by BarryK »

One thing you could try is put a pause into the shutdown, like

sleep 120

in the /tmp/rc.reboot script somewhere, so it will wait for 120 seconds at that point, give you time to read the messages.

BungaDunga
Posts: 17
Joined: Sun 05 Jun 2005, 23:09

#9 Post by BungaDunga »

scsidev: '0,0,0'
scsibus: 0 target: 0 lun : 0
Linux sg driver version 3.1.25
scsidev: '0,0,0'
scsibus: 0 target: 0 lun : 0
Linux sg driver version 3.1.25
scsidev: '0,0,0'
scsibus: 0 target: 0 lun : 0
Linux sg driver version 3.1.25

ln: /root/.usr/bin/iPodder: File exists
(a few more of these, I don't feel like writing out the long paths)

Track to be saved on CD/DVD is number 15
Total size to be saved to CD/DVD is 6352 bytes

All I managed to get after that was the "Premature EOF on stdin" etc.

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#10 Post by BarryK »

The problem seems to be that /tmp/listfinalshutdown.txt.

...something in that, perhaps, is causing that "premature EOF".
maybe one of the entries in there is not a valid file.

Just before the "sleep 120" line, you need to insert some code to examine and verify that file.
Something like this:

for ONEFILE in `cat /tmp/listfinalshutdown.txt`
do
echo "Looking for $ONEFILE..."
if [ -e $ONEFILE ];then
echo "Yes"
else
echo "No"
fi
echo -n "Press ENTER to check next file: "
read mmoorree
done
sleep 120

BungaDunga
Posts: 17
Joined: Sun 05 Jun 2005, 23:09

#11 Post by BungaDunga »

Hmm. As far as I can tell, every file that little snippet finds comes up as

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#12 Post by BarryK »

Oh, I'll need to check how the script works... all those files are prefixed with the CD folder name, for example 2005-10-1-6-5, rather than /root.
So, the test code I supplied won't work.

I'll attempt to do something for 1.0.4, some extra testing of the validity of the entries in the /tmp/listfinalshutdown.txt file.

kirk_22
Posts: 6
Joined: Thu 09 Jun 2005, 20:25

#13 Post by kirk_22 »

BarryK wrote:Oh, I'll need to check how the script works... all those files are prefixed with the CD folder name, for example 2005-10-1-6-5, rather than /root.
So, the test code I supplied won't work.

I'll attempt to do something for 1.0.4, some extra testing of the validity of the entries in the /tmp/listfinalshutdown.txt file.
I've seen the same problem but so far haven't been able to nail down the cause.

I trimmed down a copy of the shutdown script to just the file name collection and burning sections. I believe that it did burn fine when running from the icewm session but it failed when running the full script (with -D) during a normal shutdown. If I remember right it had problems restoring the session from the trimmed down script but I attributed that to open files in the /proc directory. (I am by no means a linux guru so take the above for what it's worth)

I would like to see more error checking in the shutdown script. I think that if there is an error, the script should prompt to save the session in a different manner or return to the session rather than loosing all changes.

Kirk

Post Reply