[Info-vax] Exabyte tapes to disk
glen herrmannsfeldt
gah at ugcs.caltech.edu
Mon Aug 31 15:15:00 EDT 2009
Bob Koehler <koehler at eisner.nospam.encompasserve.org> wrote:
< In article <h79geb$5hf$1 at naig.caltech.edu>, glen herrmannsfeldt <gah at ugcs.caltech.edu> writes:
(snip, I wrote)
<> Not completely true for unix in the case of tapes, but
<> it is for disk.
< As in all things eunichs, it depends on which one. BSD UNIX dd knows
< about blocks and records on tapes, System V knows about blocks, but
< not records.
Well, then just grab the source for BSD dd and compile it.
But more important, the OS supplies blocking information off
the tape. A read() call to the tape device will read one block,
or less if the block is too long (discarding the rest). At least
BSD style do that, I believe that is true of others.
You can, then, write a program that will read tapes and write
a block-preserving disk file. There are a few standard forms for
such files.
< So if you have an ASCII data file on tape in 80 byte records and you
< use BSD dd you can get it converted on the fly to stream-LF text
< that just happens to have 80 bytes on each line. Or you can convert
< stream-LF text files to blank padded records as long as the longest
< line of text, but if you live on a System V, you get to roll your own.
I haven't tried that one, but with conv=ascii it will convert FB80
EBCDIC input to LF terminated ASCII stream.
-- glen
More information about the Info-vax
mailing list