TAPESYS®

The OpenVMS Tape Management System

V6.1

JB User's Guide

How To Install and Use JB

The Leader in Storage Management Software Solutions

TAPESYS V6.1 ManualTable of Contents

JB User’s Guide

JB USER’S GUIDE

AN OVERVIEW: THE JUKEBOX MANAGER

Introduction

Incorporation of the JB Database into Tapesys V6.1

New Parameters in Setup.par for JB V4.1

JB INSTALLATION AND SETUP

Installing JB

Setting up the Jukebox

USING JB WITH DIFFERENT TYPES OF JUKEBOXES

Overview

Using JB with the DCSC Jukebox Type

Using JB with the GK Jukebox Type

Using JB with the ODATLSLI Jukebox Type

Using JB with the SADISK Jukebox Type

Using JB with the SLM Jukebox Type

Using JB with the SYSMOUNT Jukebox Type

Using JB with the RTM Jukebox Type

Using JB with the MRU Jukebox Type

THE JB COMMANDS

Overview

Configure

Define Alias

Define Jukebox

Define Volume

Dismount

Display Slots

Eject

Inquire

List

Load

Lock Panel, Unlock Panel

Mount

Remove Alias

Remove Jukebox

Remove Volume

Sequence

Set Volume

JB ERROR GUIDE

Introduction

Messages for the JB Facility

Messages for the SP32 Facility

TAPESYS V6.1 ManualAn Overview: The Jukebox Manager

JB User’s Guide

AN OVERVIEW: THE JUKEBOX MANAGER

Introduction

Introduction / This overview provides a general introduction to JB™, The Jukebox Manager from Software Partners, Inc. It includes
•A brief description of the services provided by JB
•Important JB terms and definitions
•General system requirements.
Product Description / JB is a general-purpose jukebox-controlling utility. It is designed to interface with a wide variety of jukeboxes to provide a uniform high-level interface.
JB maintains a database of volumes that are currently loaded in the jukebox as well as those that are not resident in the jukebox.
Warning!When specifying volumes, capital letters must always be used for volumes that were defined in all capital letters.
JB terms and definitions / A list of important JB terms and their definitions appear below.
Term / Definition
jukebox / A device that stores optical or magnetic volumes
platter / A physical unit of media consisting of one or
two sides
alias / A name given to represent a sequence of volumes
volume / Software unit of media. A platter has two sides; each side is considered a volume
JB database / Files that the jukebox software uses to keep track of the locations of the volumes
sequence / A group of volumes defined in a particular order
System requirements / To install JB, a minimum of 4300 free blocks is needed on a system running VMS 6.2 or later.
JB is particularly well suited for use with Software Partners’ TAPESYS® and HIERARCHY® products.
Supported jukeboxes / The following jukeboxes are supported by JB at this time:
•MRU
•DCSC
•GK
•SYSMOUNT
Note:The jukebox types listed in this document are current as of this printing
Viewing allocation class device names / To view the allocation class, issue the following command on the node on which the jukebox is attached:
$WRITE SYS$OUTPUT -F$GETDVI(“<devicename>”,”ALLDEVNAM")
Where the [devicename] is something like “HSC000$DUA21:”
The output should look something like_$1$DUA21:, indicating that 1 is the allocation class.
Accessing database files / JB is now installed with SYSPRV to access the database files (JBDRIVES and JBVOLUMES), so the jukebox may be accessed by users who do not have SYSPRV. Note, however, that standard VMS device-, volume-, and file-protection rules apply to the data stored on volumes for which they have access.

Incorporation of the JB Database into Tapesys V6.1

Introduction / TAPESYS V6.1 provides the option of maintaining the JB database within the TAPESYS database. This eliminates the need to keep the two separate databases synchronized. The fields of the JB volume record have been incorporated into the TAPESYS master record, and the fields of the JB drive/jukebox record have been incorporated into the new TAPESYS location record. In other words, a jukebox is a special type of location. JB V4.1 has been modified to optionally access the new TAPESYS database rather than, or in addition to, its own native database.
Not all of the fields of the original JB records were carried over to TAPESYS. For instance, the fields related to sequencing of volumes for HIERARCHY are redundant, since TAPESYS volumes already have sequencing built in. Also, the side A/B fields for two-sided optical platters are not carried over. Therefore, JB commands relating to these fields, such as SEQ, are not available for JB databases handled by TAPESYS. Note that JB V4.1 can operate in a split-database mode so that tape jukeboxes can be maintained in the TAPESYS database and optical jukeboxes can be maintained in the original JB native database.

New Parameters in Setup.par for JB V4.1

In JB V4.1, new functionality has been introduced that allows TAPESYS V6.1 and JB to both access one database (the TAPESYS database) for their data. Also, TAPESYS V6.1 can start JB automatically. Accordingly, two new parameters have been added to SETUP.PAR, JB_HOME and JB_OPTION.
JB_HOME
/ Given that the JB V4.1 volume data can be contained within the TAPESYS database, TAPESYS must be available before JB can function. Therefore, it becomes desirable to have TAPESYS automatically start JB. In order for this to work, TAPESYS must know where the JB startup procedure resides. By default, this is SYS$SYSDEVICE:[JB], but the user is allowed to install JB elsewhere. JB_HOME contains the fully-qualified directory containing the JBSTART command procedure. If JB_HOME is blank (the default), JB will not be automatically started by TAPESYS.
Examples:
$ JB_HOME == "somedisk:[JB]"
$ JB_HOME == "sys$sysdevice:[JB]"
$ JB_HOME == ""! do not automatically start JB
JB_OPTION
/ While JB V4.1 can use the TAPESYS database, it is still capable of using its own database for HIERARCHY-type databases. When using JB with HIERARCHY, most of the information in the TS master record is not used and disk space is wasted. Therefore, with jukeboxes not being used with TAPESYS, it makes sense to use the original JB database for such jukeboxes. Some sites may have mixed configurations, in which some jukeboxes are used with TAPESYS and others with HIERARCHY. JB can use both databases in this case. The records related to the TAPESYS jukeboxes are stored in the TAPESYS database, while the data for the HIERARCHY jukeboxes is stored in the original JB database.
On startup, JB needs to know what mode to use. A separate command procedure is supplied with the JB kit to perform the initial splitting of the original data into the two databases. If the TAPESYS-only option is specified, the JB startup procedure will convert the old standalone database to TAPESYS automatically the first time it is run.
$ JB_OPTION == "tapesys_database" ! use only the TAPESYS $!! database
$ JB_OPTION == "both_databases" ! use both the TAPESYS $!! database and the JB
$!! local database
$ JB_OPTION == "" ! use only the JB local database

1

TAPESYS V6.1 ManualJB Installation and Setup

JB User’s Guide

JB INSTALLATION AND SETUP

Installing JB

Introduction / This section describes the procedure to be followed when installing the JB software.
Shareable images / When installing JB, please note that the program links several shareable images, all beginning with the prefix JBSHR_. This suffix denotes the jukebox interface currently supported.
For example, the JB installation kit currently contains the following shareable interface: JBSHR_MRU, indicating that jukeboxes using MRU control routines are currently supported for use with HIERARCHY® and TAPESYS®.
Note:All the runtime objects to link all of the shareable images may not exist on your system. If this is the case, error messages might display during the linking process. Those shareable images will not be installed in your system, thereby preventing access to those types of jukeboxes.
Cluster installations / If you are performing a cluster installation
•The JB software should be installed on a cluster-served disk
•The device names used in the DEFINE JUKEBOX command (See Chapter 3—The JB Commands) should be the allocation class device names of the jukebox drives, or system-wide logicals that directly equate to the allocation class device names. In this way, the JB software will be able to properly synchronize access to the jukebox across all nodes in the cluster.
Before you begin / Check to make sure the system meets general system requirements as stated in the introduction.
Procedure / The procedure for installing JB is detailed below:
Step / Action
1 / Install and start up any vendor-supplied software received with the jukebox(es).
2 / To install the JB software
•Use VMSINSTAL with a product name of JB
•When prompted for a disk on which to put the [JB] directory, use the default of SYS$SYSDEVICE.
Note:This will be adequate, as the JB files take only a few hundred blocks. Using another system- or cluster-mounted disk is an acceptable alternative.
3 / The startup file must then be executed to define logicals and install images by entering:
$ @<disk>:[JB]JBSTART
4 / Determine the jukebox type by accessing the online help for JB and referring to SUPPORTED_TYPES. Use the table provided in the help file and note the jukebox type.
To access the JB software online help, type:
$ JB :== $JB
$ JB HELP
Example: $ JB HELP SUPPORTED_TYPES
Note:Remember the jukebox type when defining the jukebox with theJB DEFINE JUKEBOXcommand as described in Chapter 3—The JB Commands.
5 / Modify the system startup file (probably SYSTARTUP_VMS.COM) to contain the following sequence:
$ @<disk>:[JB]JBSTART

Setting up the Jukebox

Introduction / This section describes the steps used to set up (enable) the jukebox.
Before you begin / Study the JB documentation and install the JB software. Only certain jukebox types are supported.
Procedure / To enable jukebox processing:
Step / Action
1 / Access the online help file determine your type of jukebox.
Note:Contact Software Partners, Inc. if you need further information.
2 / Define jukeboxes using JB DEFINE JUKEBOX commands.
3 / Define volumes using JB DEFINE VOLUME commands.
4 / Load initialized volumes in the jukebox using JB LOAD commands.

1

TAPESYS V6.1 ManualUsing JB with Different Jukebox Types

JB User’s Guide

USING JB WITH DIFFERENT TYPES OF JUKEBOXES

Overview

Introduction / This section describes the various JB-supported jukebox types and how to use them with the JB utility.
Determining the jukebox type / To determine the jukebox type, access the online help for JB and refer to SUPPORTED_TYPES.
Example:$ JB :== $JB
$ JB HELP SUPPORTED_TYPES
Use the table provided in the help file and note the jukebox type.
In this chapter / The following supported jukebox types are discussed in this chapter:
DCSC Jukebox Type
GK Jukebox Type
ODATLSLI Jukebox Type
SADISK Jukebox Type
SLM Jukebox Type
SYSMOUNT Jukebox Type
RTM Jukebox Type
MRU Jukebox Type

Using JB with the DCSC Jukebox Type

Introduction / If the DCSC jukebox type is specified, most JB commands that would normally be used for moving volumes into the silo will be effectively disabled. The only JB operation that will function is the loading of a volume into a drive, such as with the JB MOUNT or JB LOAD command.
Use the CARTRIDGE commands to actually move volumes into or out of the silo.
Using JB with the HIERARCHY OPTICAL interface / The HIERARCHY HIST and TAPESYS interfaces have separate parameters for use with the silo and do not require using JB to access it. However, the OPTICAL interface requires use of JB to access the silo, as it does not have special parameters for doing so.
The OPTICAL interface software is designed to leave the last-used volume in its drive, in case it is needed again shortly. The DCSC software is designed to put any volumes left in drives back in their slots. When it does so, it sends an OPCOM message saying that it has recovered a drive and/or cartridge. This message can be safely ignored.
Defining the jukebox / The silo must be defined in the JB database by issuing the following command:
$ JB DEFINE JUKEBOX <jukebox_name> DCSC <location> -
drives>/ROBOT=<acs_id
WHERE… / IS…
jukebox_name / the name of the jukebox (such as JUKE_1); a maximum of 12 characters
location / the physical location of the jukebox; a maximum of 12 characters
drives / a list of all magtape drives associated with the silo
acs_id / the ACS library ID number, in the range of 1-4
Example / $ JB DEFINE JUKEBOX SILO_2 DCSC LOCATION -
COMP_ROOM $2$MUA4:,$2$MUA5:,$2$MUA6:/ROBOT=2
Defining volumes / All volumes that will be used with JB must be defined using JB DEFINE VOLUME commands. All volumes should have NORMAL status, i.e., not SCRATCH. The CARTRIDGE RESERVE/SCRATCHcommand should be used to reserve some SCRATCH volumes, and the CARTRIDGE SET VOLUME/NORMAL command should be used to set them to NORMAL status. The JB DEFINE VOLUME commands are then used to enter the volumes into the JB database. The JB DEFINE VOLUME commands must have the format:
$ JB DEFINE VOLUME <volume_idjukebox_name
WHERE… / IS…
volume_id / the volume ID of the volume with NORMAL status
jukebox_name / the name of the silo jukebox given in the JB DEFINE JUKEBOX command
JB LIST command / The JB LIST command will always show the volume as being ejected, but this status should be ignored. To find where the volume is actually located, the CARTRIDGE SHOW VOLUME command must be issued.
Syntax note / The syntax of the above CARTRIDGE commands may differ depending upon the DCSC version.

Using JB with the GK Jukebox Type

Introduction / The GK jukebox type is used for SCSI jukeboxes plugged directly into the SCSI port of a Digital workstation.
There are two procedures for configuring GK jukeboxes, configuring GK jukeboxes on ALPHA workstations and configuring GK jukeboxes on VAX workstations.
Configuring GK jukeboxes (ALPHA only) / Follow the procedure below to configure a GK jukebox on an ALPHA workstation.
Note:This procedure must be performed prior to defining the device on the system.
Step / Action
1 / In SYS$MANAGER, copy the file SYCONFIG.TEMPLATE to SYCONFIG.COM.
2 / Add the highlighted lines to the SYCONFIG.COM file:
$! Remove the comment from the line below if you $! wish to prevent VMS from configuring devices
$! with a SYSGEN AUTOCONFIGURE ALL command.
$! This is typically only required if
$! you are debugging new device drivers.
$!
$!
$! STARTUP$AUTOCONFIGURE_ALL == 0
$!
$ SET NOON
$!
$! Configure scsi robot before autoconfig so
$! autoconfig won't think it's a tape drive
$!
$ MCR SYSMAN IO CONNECT -
GKA600/NOADAPT/DRIVER=SYS$GKDRIVER
$!
$ EXIT 1
3 / Reboot the system.
Result:The robot device has been configured as GKA600.
4 / Define the jukebox in the JB database by issuing the following command:
$ JB DEFINE JUKEBOX <jukebox_name> GK <location> - drives>/ROBOT=<robot
WHERE… IS…
jukebox_name the name of the jukebox (such as JUKE_1); maximum of 12 characters.
location the physical location of the jukebox;maximum of 12 characters.
drives a list of disk or tape drive devices associated with the jukebox.
robot the robot device name.
Example:A 600mb jukebox has a robot SCSI ID 3; the two disk drives have SCSI IDs4 and 5:
$ JB DEFINE JUKEBOX 600MB GK COMP_ROOM -
DKB400:,DKB500:/ROBOT=GKB300:
An 8mm jukebox has a robot SCSI ID 2 and the tape drive has a SCSI ID 1:
$ JB DEFINE JUKEBOX 8MM GK DESK_TOP -
MKB100:/ROBOT=GKB200:
Note:On some systems the devices will beGKA and MKA devices. All devices should be checked before entering JB commands.
Configuring GK jukeboxes (VAX only) / Follow the procedure below to configure a GK jukebox on a VMS workstation.
Note:This procedure should be performed prior to defining the device on the system.
Step / Action
1 / To configure a GK jukebox on a VMS workstation, the commands below should be added to SYSTARTUP_VMS.COM.
$ SYSGEN := $SYSGEN
$ SYSGEN CONNECT GKBn00/NOADAPT
Note:It is assumed that the disk or tape drive in the jukebox will autoconfigure as either DKBx00 or MKBx00 devices.
2 / Define the jukebox in the JB database by issuing the following command:
$ JB DEFINE JUKEBOX <jukebox_name> GK <location> - drives>/ROBOT=<robot
WHERE… IS…
jukebox_name the name of the jukebox (such as JUKE_1); maximum of 12 characters.
location the physical location of the jukebox; maximum of 12 characters.
drives a list of disk or tape drive devices associated with the jukebox.
robot the robot device name.
Example:A 600mb jukebox has a robot SCSI ID 3; the two disk drives have SCSI IDs 4 and 5:
$ JB DEFINE JUKEBOX 600MB GK -COMP_ROOM - DKB400:,DKB500:/ROBOT=GKB300:
An 8mm jukebox has a robot SCSI ID 2 and the tape drive has a SCSI ID 1:
$ JB DEFINE JUKEBOX 8MM GK DESK_TOP -
MKB100:/ROBOT=GKB200:
Note:On some systems the devices will be GKA and MKA devices. All devices should be checked before entering JB commands.

Using JB with the ODATLSLI Jukebox Type

Introduction / The ODATLSLI type is used with the Odetics ACL 5480 Automated Tape Library system, using the serial port interface to the robot.
Defining the jukebox / The jukebox must be defined in the JB database by issuing the following command:
$ JB DEFINE JUKEBOX <jukebox_name> ODATLSLI/EJECT_DOOR=3 -
<locationdrive>/ROBOT=<robot_port
WHERE… / IS…
jukebox_name / any name of the jukebox (such as JUKE_1); maximum of 12 characters.
location / the physical location of the jukebox; maximum of 12 characters.
drives / a list of all 3480 tape drives associated with the carousel.
robot_port / the serial port used to access the robot.
Example / $ JB DEFINE JUKEBOX ODATL - ODATLSLI/EJECT_DOOR=3/LOAD_DOOR=2 MRVAX
$ 12$MIA4:,$12$MIA5:/ROBOT=TXA2:
Defining the volumes / The cartridges that should be used in the jukebox must be defined by issuing the following command:
$ JB DEFINE VOLUME <volume_idjukebox_name
/BARCODE=<barcode
WHERE… / IS…
volume_id / the volume ID of a cartridge with normal status.
jukebox_name / the name of the jukebox given in JB DEFINE.
barcode / The barcode on the outside of the cartridge.
This may be done by loading cartridges one by one via the operator door, or by using the JB LOADcommand. Alternatively, it may be accomplished by pre-loading the ATL with cartridges and using the JB CONFIGURE command to update the database.

Using JB with the SADISK Jukebox Type

Introduction / This jukebox type is used with the DISK.EXE program from Software Partners, Inc. for use in testing. The program emulates removable disk drives, and in conjunction with JBSHR_SADISK.EXE it emulates a disk-class jukebox.
Defining the jukebox / The jukebox must be defined in the JB database by issuing the following command:
$ JB DEFINE JUKEBOX <jukebox_name> SADISK -
location drives
WHERE… / IS…
jukebox_name / the name of the jukebox (such as JUKE_1); a maximum of 12 characters.
location / the physical location of the jukebox; a maximum of 12 characters.
drives / the names of virtual disk drives created by the DISK.EXE program (usually the logical names.)
Example / $!
$!Create drives TESTDA: and TESTDB:
$ RUN/DETACH/AUTHORIZE/INPUT=SYS$SYSTEM:DISK -
SYS$SYSTEM:LOGINOUT/PROCESS=TESTDA/OUTPUT=TESTDA.LOG
$ RUN/DETACH/AUTHORIZE/INPUT=SYS$SYSTEM:DISK -
SYS$SYSTEM:LOGINOUT/PROCESS=TESTDB/OUTPUT=TESTDB.LOG
$!
$! Define jukebox TESTDB
$!
$JB DEFINE JUKEBOX TESTJB SADISK TRASH TESTDA:,TESTDB:
Defining the volumes / The volumes must be named by volume ID; the names must end in A for side A. If double-sided volumes are being emulated, the other side must have the same volume ID and must end in B.
The JB DEFINE VOLUME commands should have the format:
$ JB DEFINE VOLUME <volume_id>A [,<volume_id>B] jukebox_name
The data files that JBSHR_SADISK will look for are named JB_SA:<volid>.A(and .B if specified in JB DEFINE VOLUME). Thus, all files must be placed in one directory and system logical JB_SA must be defined to point to that directory.
Example / $!
$! Point to a scratch directory somewhere
$!
$ DEFINE/SYSTEM JB_SA SCRATCH_DISK:[<SCRATCH_DIRECTORY>]
$!
$! Create 1200 block data files to hold sides A and B -
$! of TESTD1
$!
$ DISK CREATE JB_SA:TESTD1.A 1200
$ DISK CREATE JB_SA:TESTD1.B 1200
$!
$! Define them in the database
$!
$JB DEFINE VOLUME TESTD1A,TESTD1B TESTJB
Loading an SADISK volume / When the operator is asked to load a SADISK volume in the jukebox, it is important to make sure the above-named files exist, and then reply to the request.
Note:If the files do not exist, the software behaves as if the operator did not load the volume in the jukebox (i.e., the operator is re-prompted to load the volume.)

Using JB with the SLM Jukebox Type

Introduction / Some jukeboxes are supplied with routines, called SLM, that are used to control the jukebox. JB interfaces to SLM directly, allowing it to access and manage the jukebox. SLM should be installed as per instructions, but its database should not be configured. SYS$MANAGER:SLMSETUP.COM is not needed, but SYS$MANAGER:SLMSTARTUP.COM is needed.
There are several JBSHR shareables for use with SLM. The actual jukebox hardware types supported are dependent upon SLM software.
Refer to the SLM documentation for specific information.
Restrictions / When installing JB, using SLM commands to define the jukebox or database files is not recommended, as the two databases will conflict. SLM commands should not be used to manipulate volumes in the jukebox. The JB commands provide a superset of the functionality provided by SLM and thus may be used in place of SLM commands.
Starting SLM and installing the shareable / The SLM logicals must be defined by executing SLMSTARTUP and installing the SLM shareable at system startup time for use with JB. This is done by issuing the following commands to SYS$MANAGER:SYSTARTUP_VMS.COM:
$ @SYS$MANAGER:SLMSTARTUP
$ INSTALL <jukebox_type
Example / When using the SLM_DEV_C1710A_CMD shareable, the following commands should be placed in SYS$MANAGER:SYSTARTUP_VMS.COM and executed interactively:
$ @SYS$MANAGER:SLMSTARTUP
$ INSTALL SLM_DEV_C1710A_CMD
When using the SLM_JUKE_LIBRARY shareable, the following commands should be placed in SYS$MANAGER:SYSTARTUP_VMS.COM and executed interactively:
$ @SYS$MANAGER:SLMSTARTUP
$ INSTALL SLM_JUKE_LIBRARY
Selecting a jukebox type / The jukebox type should be selected based on the following table:
SLM shareable for use with specific jukeboxes… / Corresponding JB jukebox type…
SLM_JUKE_LIBRARY / SLM
SLM_DEV_C1710A_CMD / SLMC1710ACMD
SLM_DEV_C1710A_HSC / SLMC1710AHSC
SLM_DEV_all others / SLMGEN
Creating a logical for type SLMGEN / JB requires that the following logical be manually created at system startup time for each jukebox of type SLMGEN by issuing the following command:
$ DEFINE/SYSTEM/EXECUTIVE JBSHR_SLMGEN<jukebox_name> -
slm_shareable_logical>,<n_doors>,<n_drives>,<n_slots>
WHERE… / IS…
jukebox_name / the name of the jukebox given in the JB DEFINE JUKEBOX command.
slm_shareable_logical / the logical name of the SLM share-able for use with the particular jukebox.
n_door / the number of doors on the jukebox.
n_drives / the number of drives in the jukebox.
n_slots / the number of usable storage slots in the jukebox.
Example / $DEFINE/SYSTEM/EXECUTIVE JBSHR_SLMGEN_MYJBOX -
SLM_DEV_NKK_CMD,1,2,56
Configuring procedure / The JB database must be configured by issuing the following commands:
$ JB :== $JB
$ JB DEFINE JUKEBOX <jbname> SLM <location> -
<drives>/ROBOT=<robot
WHERE… / IS…
jbname / the jukebox name (such as JUKE_1). Maximum of 12 characters.
location / the physical location of the jukebox. Maximum of 12 characters.
drives / a comma-separated list of tape drive device names in the jukebox. Drive 1 is first, followed by drive 2 (if any), etc.
robot / device name of the robot device.
Example / $JB DEFINE JUKEBOX EXB10I SLM DESK $12$MIA4: -
/ROBOT=$12$MIA2:

Using JB with the SYSMOUNT Jukebox Type