Hi:
This hopefully ought to be a simple question, but I don't know how one goes
about it. Is there a way, under VMS 5.5-2 to cause BACKUP to overwrite the
last saveset on a tape? I know that /REWIND will overwrite all of it. Is it
still true that, without /REWIND, BACKUP would go to the end of the last
saveset before writing?
Please e-mail me directly, and I'll post a summary of whatever I hear. Thanks
greatly!
++++ Chuck McDaniels, Systems Consultant ++++
++++ Academic Computing Services, Univ. of California, Riverside ++++
++++ BITNET: ChuckM@UCRVMS Internet: Chu...@UCRAC1.UCR.EDU ++++
++++ Disclaimer: I don't speak for UCR. Go ahead. Ask anybody! ++++
1) Answer #1.
No. The only supported write to a tape is write at end. The /REWIND
is not a write start at file 1, but a initialize + write at end.
2) Answer #2.
You can write a dirty little program using SYS$QIOW and logical IO to
skip n files and write two EOF marks. I do not think that it is
supported and I am not even sure, that it will work on all types of
drives (I know that it do work on good old 9 track tapes !).
Arne
Arne Vajhøj local DECNET: KO::ARNE
Computer Department PSI: PSI%238310013040::ARNE
Business School of Southern Denmark Internet: AR...@KO.HHS.DK
You can write a dirty little program using SYS$QIOW and logical IO to
skip n files and write two EOF marks. I do not think that it is
supported and I am not even sure, that it will work on all types of
drives (I know that it do work on good old 9 track tapes !).
DEC has already written that "dirty little program" for you; it's
called SET MAGTAPE. The only problem is to count the correct number
of files. Each saveset is (to SET MAGTAPE) three files (header, saveset,
and trailer), while the number of files in the volume label depends on
the type of label and I can't remember what the numbers are.
Jan
There's only one thing that could conceivably work, and I don't know if it
will; try it and let us know: Mount the tape /FOREIGN, then use SET MAGTAPE
to skip to just before the last file on the tape. (Each BACKUP saveset is
a single tape file. If you know how many files there are, you can do this
directly; otherwise, skip to the end of the tape, then back by one file.)
Now do a BACKUP/NOREWIND.
Depending on how BACKUP is coded, this will either overwrite the last saveset,
or skip over that last saveset and write at the end of the tape. I would
guess the latter - what you are trying to do would not come up in common
backup situations, and that's what BACKUP is coded for. If so, you could
certainly write a simple program to truncate the tape at that point (i.e.,
write a logical EOT) - I don't think you can do this directly with any DCL
commands, though you might try two SET MAGTAPE/END_OF_FILE's in a row.
-- Jerry
I think "$ Set MagTape/End" will write the EOF for you. I have NOT
used it myself to 'overwrite' backups at the end of a tape.
--
Brian R Cuttler | bitnet: sysbrc@albnyvms
Senior System Programmer | internet: sys...@uacsc1.albany.edu
State Univ of NY at Albany | phone: 518-442-3906 fax: 518-442-3697
NO! Each backup save set file is THREE files to SET MAGTAPE! BACKUP uses
ANSI/ASCII labels, each of which look like a separate file, one header label
and one trailer label per saveset.
In order to "remove" the last saveset from a tape having n savesets:
$MOUNT/FOREIGN drive (or if already mounted, SET MAGTAPE/REWIND drive)
$SET MAGTAPE/SKIP=FILE:x drive (where x = (n - 1) * 3)
$COPY NLA0: drive (puts logical end of volume where you are)
------------------------------------------------------------------------------
Bob Koehler | Any illusion to these opinions being other
rkoe...@author.gsfc.nasa.gov | than just mine alone is just that.