 |
OpenVMS System Manager's Manual
10.7.5 Writing Files to Tape Volumes
When you write files to a tape volume, the tape file system performs
access checks, writes labels, and, if necessary, switches volumes.
10.7.5.1 Writing New Files That Overwrite Existing Files
If a new file will overwrite an existing file, the tape
file system performs the following tasks:
- Checks the expiration date and accessibility fields of the
existing file.
- If overwriting is allowed, the tape file system performs the
following task:
- Overwrites the header label set of the existing file
- Creates the file section
- Writes the trailer labels
- Writes two tape marks to denote the logical end-of-volume (EOV)
All files following the newly created file are lost.
To close a tape file that was opened for write access, the tape file
system issues commands to the driver to write the labels, followed by a
double tape mark that indicates the logical EOV.
10.7.5.2 Appending or Updating Files
When you use DCL to access an existing file for a write operation,
either an append or an update operation is actually performed. The
following table describes each operation.
Access Method |
Description |
Append
|
When you access a file for an append operation, the tape is positioned
before the tape mark that precedes the
trailer labels. After the file is appended and closed, all
files beyond the appended file are lost. When the positioning is
complete, the processing is handled as if the file had been created.
|
Update
|
When you access a file for an update operation, the tape is positioned
after the tape mark that follows the
header labels. After the file is written to and closed, all
files beyond the updated file are lost. The processing is handled as if
the file had been created.
|
Note that you can update or append tape files only when the header
label contains a value of 0 for the buffer offset length. For more
information about how to update and append tape files, see
Section 10.8.
If you do not specify the /OVERRIDE=EXPIRATION qualifier when you
update a file, the tape file system checks the expiration date
field on the file before it allows you
to write to that file.
In addition, before you append a file, the tape file system
checks the expiration dates of both the file being appended and the
file immediately following it. If the expiration date of either file
has not been reached, the magnetic tape file system does not allow you
to append the file.
Example
You can use the CREATE command to access a volume for a write
operation. The following CREATE command
writes a new file to the tape volume:
After entering a command similar to the one in this example, follow
these steps:
- Enter the contents of the file.
- Press Ctrl/Z to close the file and write it to the tape volume
without leaving the DCL command level.
10.8 Copying and Transferring Files
With the OpenVMS operating system, you can copy files on disks and
tapes both within the system and across other operating systems. The
OpenVMS operating system provides a number of facilities to assist you
in both types of information transfer.
Table 10-7 summarizes the methods you can use to transfer
information.
Table 10-7 Methods of Transferring Information
Method |
Description |
DCL command COPY
|
Most frequently used method for
transferring information.
|
Convert utility (CONVERT)
|
On a local system, allows you to change the organization of a file from
sequential to indexed, for example.
|
Exchange utility (EXCHANGE)
|
On a local system, allows you to access disk and tape volumes that are
formatted for operating systems other than OpenVMS. You can use
EXCHANGE to transfer files between foreign volumes and standard
Files--11 volumes.
|
DCL command EXCHANGE/NETWORK
|
Allows you to transfer files via the network between OpenVMS and other
operating systems. The command is useful for transferring files between
nodes that use OpenVMS and those that do not. The file is copied in
such a way that it is meaningful on OpenVMS and other operating systems
as well.
|
Backup utility (BACKUP)
|
With tapes, the only means of copying entire directory trees or files
that are not sequentially structured.
See Section 11.13.2 for information about using BACKUP to copy files.
|
The COPY command, the Exchange utility, and the DCL command
EXCHANGE/NETWORK are explained in the following sections.
In many cases, you can copy information without physically transporting
media. Perhaps you want to copy files between systems that are not
connected by a communications link. If so, you must be able to move
your files physically from one location to another. A convenient way is
to copy your files to a portable volume, such as a tape reel, tape
cartridge, or disk pack, and then carry that volume to the location of
the other system.
The following sections describe how to perform these tasks:
10.8.1 Copying Files to Disk Volumes
Before you can copy files to a disk volume, you must perform the
following actions:
- Prepare the volume, as explained in Section 9.3.
- Because disks are random-access devices, and because files must be
listed in directories, you must create a directory to contain your
files on the disk volume after you initialize the volume.
Copying from Disks
The default format for files on disk volumes is Files--11 Structure
Level 2. You can also initialize disks in the Files--11 Structure Level
1 format, which is the format used by other Compaq operating systems,
including RSX--11M, RSX--11M-PLUS, RSX--11D, and IAS.
When you copy files from disks to standard-labeled disk volumes, the
following items are not preserved:
- Directory specifications
- Individual file protections
- User identification codes (UICs)
- Creation times (but the dates are preserved)
- Revision and backup dates and times
You can use the COPY command to copy the highest version of all the
files in your default directory to another directory on that volume.
Copying from Tapes
The default format for files on tapes is the standard-labeled volume.
The OpenVMS system supports sequential, relative, and indexed files on
disks, but you can copy only sequential files to standard-labeled disk
volumes. The only valid record formats are variable-length and
fixed-length.
When you copy files
with tape file names from magnetic tape to disk, specify a standard
OpenVMS file name for the output file name specification. If you do not
specify an OpenVMS file name on output, your process receives the
following error message:
RMS-F-FNM, error in file name
|
This message indicates that the tape file name is not a valid OpenVMS
file name.
If you enter the COPY command with the /LOG qualifier, the system sends
a message to the current SYS$OUTPUT device after each file has been
copied. To
verify that the files were successfully copied, use the DIRECTORY
command.
Examples
-
CREATE/DIRECTORY DMA3:[PUBS]
$ DEFINE P DMA3:[PUBS]
$ COPY *.* P
$ COPY [PRIMER]*.* P
$ COPY [COMMANDS]*.* P
|
The CREATE/DIRECTORY command in this example creates a disk
directory file named [PUBS] on DMA3:, and the DEFINE command defines
the logical name P as DMA3:[PUBS]. The COPY command copies the highest
version of each file in the current default directory and in the
directories [PRIMER] and [COMMANDS] to the newly created directory.
-
$ COPY *.* DMA5:[PRIVATE]
|
For this example, assume that the disk device DMA5: has been
allocated to your process and that a disk volume has been initialized
and mounted on that device. Also assume that you have a directory
called PRIVATE already created on that volume.
-
$ COPY/LOG MTA1:"%&*?!SKI! """ SEASON.DAT
%COPY-S-COPIED, MTA1:[]"%&*?!SKI! """.;1
copied to WRKD:[MANUAL]SEASON.DAT;1 (120 records)
|
The COPY/LOG command in this example copies the tape file
%&*?!SKI!#" (# means space) to the file SEASON.DAT on the default
disk and directory, WRKD:[MANUAL]. To copy the file to disk, you must
specify a new file name. (The OpenVMS software provides defaults for
segments of the file specification that are not specified.) Because
this example uses the /LOG qualifier, the system returns a message that
confirms the file was copied from the MTA1: tape volume; the message
also tells how many records were copied.
-
$ COPY/LOG MTA0:*.* *
%COPY-S-COPIED, MTA0:[]TASTETEST.DAT;1
copied to WRKD:[FOOD]TASTETEST.DAT;1 (249 records)
%COPY-S-COPIED, MTA0:[]ALLAT;1 copied to WRKD:[FOOD]ALALL;1 (48 records)
%COPY-S-NEWFILES, 2 files created
|
In this example, the COPY/LOG command specifies wildcard characters
for the file name and file type. Therefore, the system copies the only
two files on the tape volume to the disk volume.
-
$ COPY/LOG MTA1:*.* [EX]
%COPY-S-COPIED, MTA1:[].DAT;1 copied to WRKD:[EX]TEST.DAT21 records
%COPY-E-OPENOUT, error opening WRKD:[EX]"%&*()!SKI! """.;1 as output
-RMS-F-FNM, error in file name
%COPY-W-NOTCOPIED, MTA1:[]"%&*()!SKI! """.;1 not copied
%COPY-E-OPENOUT, error opening WRKD:[EX]"SANFRAN%%%""".;1 as output
-RMS-F-FNM, error in file name
%COPY-W-NOTCOPIED, MTA1:[]"SANFRAN%%%""".;1 not copied
%COPY-S-COPIED, MTA1:[]OPENVMS_LONG$FILE_NAME.LONG_EXT;1
copied to WRKD$:[EX]OPENVMS_LONG$FILE_NAME.LONG_EXT;1 (80 records)
%COPY-S-COPIED, MTA1:[]C6.JOU;1 copied to WRKD:[EX]C6.JOU;1 (4 records)
%COPY-S-NEWFILES, 2 files created
|
The COPY/LOG command string specifies that all files on the volume
mounted on tape volume MTA1: are to be copied to the current default
disk and directory WRKD:[EX]. However, the system does not copy files
with tape file names, but, instead, returns an error message.
-
$
COPY/FTP sys$login:login.com -
$_
system.bldg.corp.com"username password"::sys$login:login.tmp
This example transfers the OpenVMS RMS file SYS$LOGIN:LOGIN.COM to
the remote file SYS$LOGIN:LOGIN.TMP over a TCP/IP connection while
specifying the user name and password on the remote system.
10.8.2 Copying Files to Tape Volumes
You can use the COPY command to copy files from a disk volume to a tape
volume. The procedures are similar to those for copying files from one
disk volume to another. One difference, however, is that magnetic tapes
are sequential-access devices and do not have directories.
You must set up (initialize and mount) a tape device before copying
disk files to a tape volume. (The characteristics of tape files are
described in Section 10.7.)
The entire set of Files--11 file names is supported for magnetic tapes.
You can copy a disk file with the following file name to a magnetic
tape volume without having to modify the file name:
THIS_IS$AN_OPENVMSLONG_FILE.LONG_TYPE
|
Note
Most systems that are not OpenVMS do not use file names longer than 17
characters.
|
Although the OpenVMS system supports stream and variable with
fixed-length control (VFC) records, it encodes these records in a
variable-length format on standard-labeled volumes. Systems that are
not OpenVMS do not distinguish stream records or VFC records from
variable-length records; instead, they interpret both as
variable-length records. Therefore, do not create either stream or VFC
records on volumes that will be used for information interchange to a
system that is not OpenVMS.
The following steps show how to use DCL commands to copy files from a
default directory on a disk volume to a standard-labeled magnetic tape
volume. Included in the steps are examples showing how to allocate,
initialize, and use a magnetic tape to copy a set of your disk files.
How to Perform This Task
To copy files from a default directory on a disk volume to a
standard-labeled tape volume, follow these steps:
- First, allocate a drive as follows:
$ ALLOCATE MT: TAPE_DEVICE
%DCL-I-ALLOC _MARS$MTA2: allocated
|
This ALLOCATE command requests the allocation of a tape drive whose
name begins with MT. The logical name TAPE_DEVICE in this case refers
to the MARS$MTA2: drive. The system response indicates that unit 2
on controller A was available and is
now allocated to you. You can now physically load the tape on the
drive. Be sure the write ring on the tape is in place; if it is not,
you cannot write to the tape.
- Initialize the tape by entering a command similar to the following:
$ INITIALIZE TAPE_DEVICE: GMB001/PROTECTION=(GROUP:R,WORLD)
|
The INITIALIZE command specifies the logical name for the volume
(TAPE_DEVICE, which in this case refers to MTA2:) and the volume label
for the tape volume (GMB001). The label can be no longer than six
characters. The /PROTECTION qualifier defines a protection code
restricting
group access to read and allowing no world access.
- Enter the MOUNT command to mount the volume and write files to it,
as in the following example:
$ MOUNT TAPE_DEVICE: GMB001
%MOUNT-I-MOUNTED, GMB001 mounted on _MTA2:
$ COPY *.* TAPE_DEVICE:
|
The MOUNT command specifies the device name and volume label of the
volume on the device. The COPY command copies the highest version of
each file in your default directory onto the tape. The file names, file
types, and version numbers of the output files default to the same file
names, file types, and version numbers as the input files.
If you enter the COPY command with the /LOG qualifier, the system sends
a message to the current SYS$OUTPUT device after it copies each file.
- You can also use the DIRECTORY command to verify that the files
were copied successfully.
This DIRECTORY command lists the file names and file types of all
files on the tape.
- When you finish using the magnetic tape, dismount and deallocate it
as follows:
$ DISMOUNT TAPE_DEVICE:
$ DEALLOCATE TAPE_DEVICE:
|
If you do not dismount and deallocate the magnetic tape, the system
does so automatically when you log out.
The following examples illustrate ways of copying files to tape volumes.
Examples
-
For this example, assume that MTA2: has been allocated to your
process and that a tape volume has been initialized and mounted on that
device. The COPY command writes files to the MTA2: tape volume. The
highest versions of all files in your default disk directory are copied
to the tape volume. The file names, file types, and version numbers of
the output files default to the same file names, file types, and
version numbers as the input files.
-
$ COPY/LOG FORTAP.DAT MTA1:"%&*?!SKI! "" "
%COPY-S-COPIED, WRKD:[MANUAL]FORTAP.DAT;1
copied to MTA1:[]"%&*?!SKI! """.;0 (120 records)
|
In this command for copying from disk to tape, a tape file name is
specified as the output file specification. Note that the trailing
space in the file name %&*?!SKI!#"# (where # means space) is not
present because trailing spaces are not significant in tape names.
-
$ COPY/LOG OPENVMS_LONG$FILE_NAME.LONG_EXT MTA1:
%COPY-S-COPIED, WRKD:[MANUAL]OPENVMS_LONG$FILE_NAME_EXT;1
copied to MTA1:OPENVMS_LONG$FILE_NAME.LONG_EXT;1 (80 records)
|
In this example, a long file name with a long file type is copied
to the tape volume MTA1: with the same file name and type as on the
disk volume.
-
$ COPY/LOG %%.JOU;* MTA1:*.*
%COPY-S-COPIED, WRKD:[MANUAL]C6.JOU;1 copied to MTA1:[]C6.JOU;1 (4 records)
|
In this example, all files with a two-character file name and a
file type of .JOU are copied to the tape volume MTA1: with the same
file name and type as on the disk volume. Version numbers are preserved.
10.8.3 Continuing to Copy at the End of a Tape
When you are copying to or from a tape and that tape reaches the end,
the system suspends processing and sends a request to mount the next
tape in the volume set. An operator communication manager (OPCOM)
message similar to the following one is displayed at the terminal:
%%%%%%%%%%% OPCOM, 14-MAY-2000 15:23:31.78 %%%%%%%%%%%
request 3, from user PLAW
MOUNT new relative volume 2 (DW0QT2) on MTA1:
|
Note
Because messages are sent only to the operator's terminal that is
enabled for tape messages, you do not usually see this message and
might not realize that another tape is needed to complete the read or
write operation.
|
See Section 20.6 for more information about OPCOM messages.
If automatic volume switching is disabled or if the tape file system
cannot mount a given volume, you might need to mount a continuation
volume in a volume set. See Section 9.8.2 for information about
mounting continuation volumes.
10.8.4 Using the Exchange Utility (EXCHANGE)
The Exchange utility (EXCHANGE) converts the format of files, as
appropriate, when copying files between volumes of different
structures. EXCHANGE recognizes all Files-11 and RT-11 disk volumes on
OpenVMS devices, as well as all DOS-11 and RT-11 formatted volumes on
9-track tape devices.
For more information about how to use EXCHANGE and for a description of
all EXCHANGE commands, qualifiers, and parameters, refer to online help
or the archived manual OpenVMS Exchange Utility Manual.
10.8.5 Using the EXCHANGE/NETWORK Command
Use the DCL command EXCHANGE/NETWORK to transfer files to and from
operating systems that do not support OpenVMS file organizations. This
transfer occurs over a DECnet communications link that connects nodes
that are both OpenVMS and not OpenVMS operating systems.
Use the EXCHANGE/NETWORK command to perform the following operations:
- Transfer files between an OpenVMS node and a node that is not
OpenVMS.
- Transfer a group of input files to a group of output files.
- Transfer files between two nodes that are not OpenVMS, provided
those nodes share DECnet connections with the OpenVMS node that issues
the EXCHANGE/NETWORK command.
For details on using the EXCHANGE/NETWORK command, refer to online help
or the OpenVMS DCL Dictionary.
How to Perform This Task
To issue the EXCHANGE/NETWORK command, use the following format:
EXCHANGE/NETWORK input-filespec[,...] output-filespec
|
where:
input-filespec
|
Specifies the name of an existing file to be transferred. (Wildcard
characters are allowed.)
|
output-filespec
|
Specifies the name of the output file into which the input is to be
transferred.
|
Example
$ EXCHANGE/NETWORK MYSYS_FILE.DAT FOO::FOREIGN_SYS.DAT
|
The command in this example transfers the file MYSYS_FILE.DAT, which is
located in the current default device and directory, to the file
FOREIGN_SYS.DAT on node FOO, which is not an OpenVMS node. By default,
the command automatically determines whether the transfer method should
be block or record I/O.
|