- To: George Vieira <georgev@xxxxxxxxxxxxxxxxxxxxxx>
- Subject: Re: [SLUG] CPIO backups
- From: luke@xxxxxxxxxxx
- Date: Wed Aug 2 11:17:56 2000
- Cc: "'slug@xxxxxxxxxxx'" <slug@xxxxxxxxxxx>
On 24 May, George Vieira wrote:
> Hi all,
>
> I have a wonderful script I used on SCO which I have modified a bit for
> Linux but have this problem with the device /dev/nst0.
> To cut it short this is what I do for an example:
>
> cd /home/georgev
> find . -mount -depth -print | cpio -ocvB -O /dev/nst0
> cd /home/flintstone
> find . -mount -depth -print | cpio -ocvB -O /dev/nst0
>
> This all works fine but when I try to restore from it, it gets this error
> and ejects the tape.
> "Found end of tape. To continue, type device/file name when ready."
>
> Sometimes it happens immediately when trying to restore/verify the tape
> after a backup and other times it happens after the first volumn
> "/home/georgev" has finished and starts the /home/flinstone volumn that it
> happens.
This is probably way too late a reply, sorry.
But the answer is that the idiots who improved cpio reassigned the old
ascii-mode c flag to have a new meaning.
You can read the old data by using
cpio -ivbH odc
-H odc means "the format that used to be specified with the old c
option"
And it gets worse - I believe that if you write data using the -H odc
specifier, it corrupts the data and cannot be read.
I think of it as a kind of Microsoft-style forced upgrade. You
basically have to switch over to using the new c format, though you can
still read old data written with an earlier version of cpio.
luke