howto:what_are_the_various_options_for_backing_up_openvms_data

Table of Contents

NOTE: This is a work in progress. Please forgive the incompleteness until it's final result. If you have ideas or comments, please send us email and we'll be happy to review them.

INTRODUCTION

There are a wide variety of ways to back data up on an OpenVMS system. This wiki page will provide the basic concepts of how each mechanism works and provide pointers to more detailed information on how to perform each of these techniques yourself.

Much of the information is retrieved from a variety of alternative resources without their explicit permission, but it is presumed that if they’ve published it on the web then they are okay with copying it as long as they are acknowledged accordingly. That information is collated here for your review.

TYPES OF BACKUPS

There are a wide variety of ways to back data up on an OpenVMS system. This article will provide the basic concepts of how each mechanism works and provide pointers to more detailed information on how to perform each of these techniques yourself.

Tape

There are a variety of techniques that involve the use of tapes on OpenVMS:

Pseudo-tape w/LDDRRIVER

If you are familiar with, or use, LDDRIVER for disks (disk discussion found at https://wiki.parsec.com/howto/use_ldann_logical_disks which includes pointers to the freeware source kit), then you’ll be excited to know that the ability to emulate tape devices was added to the v9 code stream. The pseudo device is called ‘LM’ (Logical Magtape).

$ LM CREATE TAPE1 /SIZ=10000
$ LM CONNECT TAPE1 /LOG LMA1
%LD-I-CONNECTED, Connected $9$LMA1: to $9$DKA100:[LD]TAPE1.DSK;1
$ SHOW DEVICE /FULL LMA1

Magtape $9$LMA1: (THEBAT), device type (Generic SCSI tape), is online, file-
    oriented device.

    Error count                    0    Operations completed                  2
    Owner process                 ""    Owner UIC                         [JUR]
    Owner process ID        00000000    Dev Prot            S:RWPL,O:RWPL,G:R,W
    Reference count                0    Default buffer size                2048
    Density                     6666    Format                        Normal-11
    Allocation class              12

  Volume status:  no-unload on dismount, odd parity.
$ LM TRACE LMA1
$ MOUNT /FOREIGN LMA1:
%MOUNT-I-MOUNTED,  mounted on _$9$LMA1: (THEBAT)
$ DISMOUNT LMA1:

Remote tape w/IP Stack

MultiNet

This section is pulled from the Process Software documentation webpage. All content below is exactly as they published, except to re-format to fit within the confines of this document.

The MultiNet remote magnetic tape server (RMT) uses the BSD RMT protocol to allow UNIX and PC users to access tape drives on OpenVMS systems. Most UNIX-type systems support the rdump and rrestore commands for accessing tape drives served by RMT.

To enable and configure the MultiNet RMT server:

1. Make sure RSHELL works from the UNIX Operating system user root to the OpenVMS user ROOT. If no OpenVMS user ROOT exists, the RMT server uses the OpenVMS user SYSTEM.

Note: For ROOT and SYSTEM, the system-wide MULTINET:HOSTS.EQUIV file is ignored and an explicit entry in SYS$LOGIN:.RHOSTS is required to grant access.

2. Make sure the ROOT/SYSTEM LOGIN.COM and the system-wide SYLOGIN.COM do not print anything when you issue remote RSHELL (under OpenVMS) or rsh (under the UNIX Operating System or on PCs) commands. Anything written to SYS$OUTPUT from these command procedures interferes with the RMT protocol.

The following example shows commands that prevent output from being displayed by SYSTEM/ROOT LOGIN.COM and SYLOGIN.COM.

$ VERIFY = 'F$VERIFY(0)                ! Turn off verify without echoing
$ IF F$MODE() .EQS. "OTHER" THEN EXIT  ! If a DETACHED process (RSHELL)   . . .
$ IF VERIFY THEN SET VERIFY            ! If a batch job, may want to turn verify back on.

You can specify either UNIX- or OpenVMS-style magtape device names or an OpenVMS file name for writing to a disk file.

When you specify UNIX-style names, options are encoded in the unit number (minor device number). The correspondence between the options and their associated unit numbers is as follows:

Device          Options

mt0 - mt3	/NOMOUNT	/STREAM	    /DENS=800	/REWIND	        /NOUNLOAD
mt4 – mt7  	/NOMOUNT	/STREAM	    /DENS=800	/NOREWIND	/NOUNLOAD
mt8 – mt11	/NOMOUNT	/STREAM	    /DENS=160	/REWIND	        /NOUNLOAD
mt12 – mt15	/NOMOUNT	/STREAM	    /DENS=160	/NOREWIND	/NOUNLOAD
mt16 – mt19	/NOMOUNT	/STREAM	    /DENS=625	/REWIND	        /NOUNLOAD
mt20 – mt23	/NOMOUNT	/STREAM	    /DENS=625	/NOREWIND	/NOUNLOAD
rmt0 – rmt3	/NOMOUNT	/NOSTREAM   /DENS=800	/REWIND	        /NOUNLOAD
rmt4 – rmt7	/NOMOUNT	/NOSTREAM   /DENS=800	/NOREWIND	/NOUNLOAD
rmt8 – rmt11	/NOMOUNT	/NOSTREAM   /DENS=16	/REWIND	        /NOUNLOAD
rmt12 – rmt15	/NOMOUNT	/NOSTREAM   /DENS=16	/NOREWIND	/NOUNLOAD
rmt16 – rmt19	/NOMOUNT	/NOSTREAM   /DENS=62	/REWIND	        /NOUNLOAD
rmt20 – rmt23	/NOMOUNT	/NOSTREAM   /DENS=62	/NOREWIND	/NOUNLOAD

The OpenVMS tape drive name is chosen automatically as the first tape drive, or you can set it using the NET-CONFIG SET DEFAULT-RMT-TAPE-DEVICE command.

When you specify OpenVMS-style names, the options are encoded in qualifiers; the exact format is: vms_node_name:volume_name[/qualifiers[…]]

For example:

# rdump 0f example.com:/dev/rmt8 /usr

or:

# rdump 0f example.com:mua0:/nomount/nostream /dens=1600/nounload /USR

or:

# rdump 0f abc.com:mua0:xxx/nostream /dens=1600/nounload \ /comment=“Please mount volume XXX on drive mua0” /usr

The table below lists the qualifiers available for OpenVMS tape drive names.

QUALIFIERS	     DESCRIPTION

/BLOCKSIZE=size	     Block size at which to write the tape. Default: 65534 bytes.
/DENSITY=density     Specifies the density at which to write a tape. Default: current density.
/[NO]REWIND	     Specifies whether to rewind the drive on close; ignored unless /NOMOUNT 
                     is specified. Default: /REWIND.
/[NO]UNLOAD	     Specifies whether to unload the drive on close. Default: /UNLOAD.
/COMMENT="string"    Comment to display in the remote OPCOM message, either appended to or 
                     replacing the default text, depending on the resulting string length 
                     being less than the 78-character maximum. This message is the only 
                     opportunity to send a tape-specific message to the remote operator. 
                     (MOUNT/COMMENT strings are not passed to a remote system.) Because 
                     RMTALLOC will not complete until a tape has been loaded and the drive 
                     is online, use COMMENT to make sure the operator is aware of your request.
/[NO]MOUNT	     Mounts the tape drive using the OpenVMS MOUNT service. 
                     /NOMOUNT accesses the tape drive without mounting it. This qualifier is 
                     used for UNIX utilities which expect the tape drive to hold its current 
                     position (not rewind) if they close it. By not mounting it, the tape drive 
                     does not rewind when dismounted. Default: /MOUNT.
/[NO]STREAMING	     Accesses the tape drive as a sequential device (a UNIX character device). 
                     /NOSTREAMING accesses the tape drive as a raw device (a UNIX block device).
                     Default: /STREAMING.
TCPware

This section is pulled from the Process Software documentation webpage. All content is exactly as they published, except to re-format to fit within the confines of this document.

RMTSETUP

Configures an RMT or RCD pseudodevice, _RMTn: or _RCDn:, respectively, on your local OpenVMS system. In this way you can perform functions on remote magnetic tape or CD-ROM drives connected to an RMT or RCD server. The remote RMT or RCD server must support the rmt protocol.

Connecting to a remote CD-ROM drive requires the /CD qualifier. You can connect to the remote host with a different username by specifying the optional /USERNAME qualifier on the command line.

Format

RMTSETUP host remote-device [logical]

PARAMETERS

host

Name or internet address of the host on which the remote tape or CD-ROM drive resides. This host must have an RMT server available.

remote-device

Name of the remote tape device (such as MKB500:) or CD-ROM device (such as DKA200:) on the RMT server. If sending the device and any server options to a non-TCPware server, you must enclose this information in double quotes, such as “/dev/rst0” for a UNIX server with “readonly” privileges.

logical

Optional OpenVMS logical assigned to the newly created pseudodevice. If omitted, RMTSETUP uses the logical name TCPWARE_TAPE for tapes and TCPWARE_DISK for disks.

QUALIFIERS

Not all RMT servers support the following RMT Client qualifiers as options or qualifiers. For UNIX servers, for example, you must include options as part of remote-device as a quoted string. For example, “/dev/mt0” is a stream device and “/dev/rmt0” is a non-stream device. With a TCPware RMT server, where remote-device is not a quoted string, the Client qualifiers that are also server qualifiers are sent to the server.

/ASSIST (default) /NOASSIST

Action to take when the device cannot mount on the remote system. With /ASSIST, operator messages appear on the remote system indicating corrective action to take (if supported). With /NOASSIST, only a local message appears. Not allowed when used with /CD.

NOTE: The BACKUP command's /ASSIST and /NOASSIST qualifiers further direct messages to the local operator and user, respectively.

/BLOCKSIZE=size

Default block size of the remote tape device. Not allowed when used with /CD.

/CD

Indicates that the remote device is a CD-ROM device.

/COMMENT=“string”

Used with the /ASSIST qualifier to send a message to the remote operator when a mount operation fails. Not allowed when used with /CD.

/DENSITY=density

Density, in bits per inch, at which to write the remote tape. Not allowed when used with /CD.

/LOG /NOLOG (default)

Displays log information during RMTSETUP execution.

/MOUNT (default) /NOMOUNT

/MOUNT allows the user exclusive access to the device. /NOMOUNT disables exclusive access to the device. /NOMOUNT also prevents a remote tape from rewinding when deallocating the pseudodevice on the client. Not allowed when used with /CD.

You cannot combine /NOMOUNT with /ASSIST, /BLOCKSIZE, /COMMENT, or /DENSITY. Use /NOMOUNT carefully since it allows multiple users access to the same device.

/PASSWORD[=password] /NOPASSWORD

/PASSWORD sets the password to access the remote system and causes the RMT server to use the rexec rather than the rshell service. The password is converted to lowercase unless you enclose it in quotes. /NOPASSWORD uses the rexec service with a blank password. Without either qualifier, access to the remote tape device is controlled through the TCPWARE:HOST.EQUIV and SYS$LOGIN:.RHOSTS files. Use together with /USERNAME.

Using the password value can pose a security risk. Also, using a null password for which you have to be prompted can cause an error in a command procedure.

/REWIND (default) /NOREWIND

/REWIND rewinds a tape before its initial use. /NOREWIND causes the tape to stay in an arbitrary position after running RMTSETUP. Not allowed when used with /CD.

/STREAM /NOSTREAM (default)

A tape is normally written as a series of records. /STREAM ignores record boundaries and returns data read from the tape as a stream of bytes (the UNIX model). Not allowed when used with /CD.

Most OpenVMS utilities expect tape drives to operate in non-stream mode, so take care in overriding the /NOSTREAM default.

/TRUNCATE_USERNAME[=length]

Truncates the username sent to the RMT server to the specified length to accommodate requirements of some non-OpenVMS systems. The default length is 8.

/UNLOAD (default) /NOUNLOAD

/UNLOAD unloads the remote device when deallocating the local RMT pseudodevice. /NOUNLOAD disables this. Note that a DCL MOUNT or DISMOUNT with /UNLOAD or /NOUNLOAD overrides the RMTSETUP /UNLOAD or /NOUNLOAD. Not allowed when used with /CD.

/USERNAME=username

Username for access to the remote system. If omitted, the username of the client process is sent to the server (subject to truncation by /TRUNCATE_USERNAME). Username is converted to lowercase unless you enclose it in quotes. Use together with /PASSWORD.

/WRITE (default) /NOWRITE

Writing to the remote tape is usually enabled. /NOWRITE is a precautionary measure to prevent a remote tape from being written. Not allowed when used with /CD.

Examples

1 - This example uses tape drive MKB500: on remote OpenVMS system IRIS to back up all the TCPWARE data files that start with SM. The tape is left loaded in the drive after its use (/NOUNLOAD). MYTAPE is the logical name for the _RMT9: device created.

$ RMTSETUP IRIS MKB500: MYTAPE /NOUNLOAD /LOG
Connecting to RMT server on host IRIS through port 514 (rsh)
Opening MKB500:/NOSTREAM/NOUNLOAD
_RMT9: created
$ BACKUP /LOG TCPWARE:SM*.DAT MYTAPE:TCPWARE.BCK /SAVE_SET
%MOUNT-I-MOUNTED, TEST1 mounted on _RMT9:
%BACKUP-S-COPIED, copied SYS$SPECIFIC:[TCPWARE]SM.DAT;1
%BACKUP-S-COPIED, copied SYS$SPECIFIC:[TCPWARE]SM_BAK.DAT;1
$ DISMOUNT MYTAPE /NOUNLOAD
$ DEALLOCATE MYTAPE

2 - This example requests access to tape drive /dev/rst0 on a remote UNIX system, using a username and password. The initialize command was unrecognized by the tape drive on the UNIX system and rejected. The tar utility examines the contents of the tape, which was written from the UNIX system. (tar is available over the network and is an alternative to the EXCHANGE utility).

$ rmtsetup sigma.nene.com "/dev/rst0" -
_$ /username=system /password
Password for root on host SIGMA.NENE.COM:
$ initialize tcpware_tape test
%INIT-F-UNSUPPORTED, unsupported operation or function
$ mount /foreign /record_size=512 tcpware_tape
$ tar -ftv tcpware_tape
644 4069 Jun 1 16:29:21 2001 /etc/hosts
End of Tar file found.
Do you wish to move past the EOF mark (y/n)? n
$ dismount tcpware_tape
$ deallocate tcpware_tape

3 - This example requests access to CD-ROM drive DKA100: on remote host roman, mounts the CD-ROM using MY_CD as the logical name, and requests a directory listing:

$ rmtsetup /cd /log roman dka100: my_cd
Connecting to RCD server on host ROMAN through port 514 (rsh)
Opening DKA100:
_RCD1: created
$ mount my_cd /override=id
%MOUNT-I-WRITELOCK, volume is write locked
%MOUNT-I-MOUNTED, OPENVMS062 mounted on _ALTARF$RCD1:
$ dir my_cd:[0,0]
HPE TCP/IP

The HPE version of RMT is fairly simplistic compared to the other IP stacks available on OpenVMS. It is started through the TCPIP$CONFIG.COM utility as follows:

$ @SYS$MANAGER:TCPIP$CONFIG

        Checking TCP/IP Services for OpenVMS configuration database files.


        HP TCP/IP Services for OpenVMS Configuration Menu

        Configuration options:

                 1  -  Core environment
                 2  -  Client components
                 3  -  Server components
                 4  -  Optional components

                 5  -  Shutdown HP TCP/IP Services for OpenVMS
                 6  -  Startup HP TCP/IP Services for OpenVMS
                 7  -  Run tests

                 A  -  Configure options 1 - 4
                [E] -  Exit configuration procedure

Enter configuration option: 3

  HP TCP/IP Services for OpenVMS Server Components Configuration Menu

  Configuration options:

    1 - BIND         Disabled Stopped      12 - NTP          Enabled  Started  
    2 - BOOTP        Enabled  Started      13 - PC-NFS       Disabled Stopped  
    3 - DHCP         Disabled Stopped      14 - POP          Disabled Stopped  
    4 - FINGER       Disabled Stopped      15 - PORTMAPPER   Enabled  Started  
    5 - FTP          Enabled  Started      16 - RLOGIN       Enabled  Started  
    6 - IMAP         Disabled Stopped      17 - RMT          Disabled Stopped  
    7 - LBROKER      Disabled Stopped      18 - SNMP         Enabled  Started  
    8 - LPR/LPD      Enabled  Started      19 - SSH          Enabled  Started  
    9 - METRIC       Enabled  Started      20 - TELNET       Enabled  Started  
   10 - NFS          Enabled  Started      21 - TFTP         Enabled  Started  
   11 - LOCKD/STATD  Disabled Stopped      22 - XDM          Enabled  Started  
                                                                               

    A  -  Configure options 1 - 22
   [E] -  Exit menu

Enter configuration option: 17

RMT SERVER Configuration

Service is not enabled.
Service is stopped.

        RMT SERVER configuration options:

                 1 - Enable service on this node

                 2 - Enable & Start service on this node

                [E] - Exit RMT configuration

Enter configuration option: 2
%TCPIP-S-STARTDONE, TCPIP$RMT startup completed
Press <ENTER> key to continue ...

  HP TCP/IP Services for OpenVMS Server Components Configuration Menu

  Configuration options:

    1 - BIND         Disabled Stopped      12 - NTP          Enabled  Started  
    2 - BOOTP        Enabled  Started      13 - PC-NFS       Disabled Stopped  
    3 - DHCP         Disabled Stopped      14 - POP          Disabled Stopped  
    4 - FINGER       Disabled Stopped      15 - PORTMAPPER   Enabled  Started  
    5 - FTP          Enabled  Started      16 - RLOGIN       Enabled  Started  
    6 - IMAP         Disabled Stopped      17 - RMT          Enabled  Started  
    7 - LBROKER      Disabled Stopped      18 - SNMP         Enabled  Started  
    8 - LPR/LPD      Enabled  Started      19 - SSH          Enabled  Started  
    9 - METRIC       Enabled  Started      20 - TELNET       Enabled  Started  
   10 - NFS          Enabled  Started      21 - TFTP         Enabled  Started  
   11 - LOCKD/STATD  Disabled Stopped      22 - XDM          Enabled  Started  
                                                                               

    A  -  Configure options 1 - 22
   [E] -  Exit menu

Enter configuration option:

It is handled through the use of a communication proxy. As the official documentation states:

“A communication proxy provides an identity for remote users of RSH, RLOGIN, RMT/RCD, and LPD. For each host, be sure to define the host name and any aliases. Proxy entries are case sensitive. Be sure to use the appropriate case when adding entries for remote users. Enter the ADD PROXY command as follows:

TCPIP> ADD PROXY user /HOST=host /REMOTE_USER=user

You can use wildcards when adding proxy entries for users on remote systems. For example, the following command provides the identity STAFF to any user on the remote host STAR:

TCPIP> ADD PROXY STAFF /HOST=STAR /REMOTE_USER=*“

DECnet Task-to-Task with Tape

Since a small percentage of PARSEC customers utilize DECnet and almost nobody uses task-to-task programming, this is going to be an overview of the concept with a non-precise example. Contact the PARSEC Group for further assistance if you wish to pursue this option.

Here is an example file I found on Neil Rieck’s site at http://neilrieck.net/docs/openvms_notes_DECnet.html that shows the technique:

$!===========================================================================
$! title  : Decnet_demo_c.com (decnet demo client)
$! author : Neil Rieck
$! created: 2011-08-02
$! notes  :
$! 1. This program will start a program (TASK) on a remote node
$! 2. The DECnet task name must be <= 16 chars but some specs say 12
$! 3. If not installed in DECnet, the remote program must be in the remote
$!	user's directory
$! 4. Don't want to send a password from the script? Define a SYSUAF proxy
$!===========================================================================
$   set noon
$   say :== write sys$output
$   open/read/write server kawc15"neil password"::"task=decnet_demo_s"
$   msg = "hello there 1 2 3"
$   say "-i-sending: ",msg
$   write server msg
$   read/wait/time_out=5 server buffer
$   say "-i-received: ", buffer
$my_error:
$   close server
$   exit 

And

$	set ver				! send output to NETSERVER.LOG
$!===========================================================================
$! title  : decnet_demo_s.com (decnet demo server)
$	goto skip_comments
$! author : Neil Rieck
$! created: 2011-08-02
$! notes  :
$! 1. this program is started by a DECnet message from another node
$! 2. it receives a message then echos it back
$! 3. script output goes to NETSERVER.LOG (only in network mode)
$! 4. do not redefine sys$output to sys$net
$! 5. do not redefine sys$input to sys$net
$!===========================================================================
$skip_comments:
$	say :== write sys$output	!
$	if f$mode() .nes. "NETWORK"	!
$	then				!
$		say "-e- not NETWORK mode so exiting"
$		set nover		!
$		exit			!
$	endif				!
$!
$!	sho log/proc *
$!
$	set on				!
$	open/read/write/error=open_error client sys$net
$	read/error=read_error/end_of_file=my_eof client buffer
$	say "-i-received: ",buffer	!
$	msg = "you sent: "+ buffer	!
$	write client msg		!
$fini:					!
$	set noon			!
$	close client			!
$	logoutnow			!
$	exit				!
$!
$open_error:
$	say "-e- open error"
$	goto fini
$read_error:
$	say "-e- read error"
$	goto fini
$my_eof:
$	say "-w- EOF"
$	goto fini

The above program is more conceptual and doesn’t actually backup data to tape. However, the decnet_demo_s.com program listed above could be modified to perform backup commands instead. Thus, you’d use the decnet_demo_c.com to perform a remote DECnet backup.

NOTE: If the backup requires more than one tape for the storage, then this technique is not viable for you.

USB/Hot Swappable/Removeable Disk with Backup

If the disk on the system is hot swappable or removable, then you can perform backups to that device and swap it out as often as necessary. Some examples of that would be the R102 disk on VAXes or a USB drive on an Integrity. Basically, any disk that has no open files can be safely removed from the system for backup purposes. You just need to dismount the device to make the removal or swap, then remount it when the replacement is put into place.

Here are the PARSEC Group, we utilize several USB drives that we swap out of our environment on a regular basis. The entire process takes about two minutes and that includes the walk to the lab to perform the physical swap.

USB/Hot Swappable/Removeable Disk with Shadowing

If you have the VOLSHAD, or equivalent, license, then you can use volume shadowing with your backup. The concept is

Network File System (NFS)

DECnet w/Backup

File Transfer Protocol (FTP) & COPY/FTP

SFTP and SCP

PATHWORKS / Advanced Server / CIFS / SMB

PATHWORKS
Advanced Server for OpenVMS
CIFS
Server Message Block (SMB) Client

Remote Copy (RCP) & COPY/RCP

SAN w/Snapshot or Clone

Other/Layered

  • Archive Backup System (ABS)
  • STORServer Archive Backup Client (ABC)
  • Veritas or Symantec NetBackup
  • Storage Library System (SLS)
  • Data Protector / OmniBack
  • Legato / Dell Networker
  • Commvault
howto/what_are_the_various_options_for_backing_up_openvms_data.txt · Last modified: 2022/05/24 23:29 by mmacgregor