The IBM® TS3500 Tape Library Command Line Interface (CLI) is a java program, can be used to access the TS3500 Tape Library from a CLI. This is in addition to the TS3500 Tape Library Web Specialist.


The TS3500 CLI accesses TS3500 Tape Library Web Interface, provides the ability to access library functions through a command line interface, also you can redirect the output to a file.

Prerequisites

In order to use the TS3500 CLI, the following prerequisites apply: 

The TS3500 Tape Library must be at a firmware level 8xxx (or higher). 
The Advanced Library Management System (ALMS) must be installed and enabled.
Java 5.0 or later must be installed.

Download

The TS3500 CLI can be downloaded from the web at the following URL:

 http://www-01.ibm.com/support/ docview.wss?uid=ssg1S4000854.

Examples:

View System Summary

java -jar TS3500CLI.jar -a <Library IP> --viewSystemSummary -u <admin> -p <pass>
          Accessor status,   OK
 LTO Capacity Utilization,  98%
      Total storage slots, 5937
    LTO Licensed Capacity, 5937
  LTO Unlicensed Capacity,    0
Total empty storage slots,   84
    Offline storage slots,    0
                Accessors,    1
          Total I/O slots,   16
          Empty I/O slots,   16
Total LTO data cartridges, 5869
            LTO Ultrium-1,    0
            LTO Ultrium-2,    0
            LTO Ultrium-3,    0
            LTO Ultrium-4, 1949
            LTO Ultrium-5, 2600
            LTO Ultrium-6, 1320
  LTO Ultrium Not Labeled,    0
      Cleaning cartridges,    2
                   Drives,   24
               Node cards,    5
             Total frames,    6
            Active frames,    6
             Service bays,    0

View Library VPD

java -jar TS3500CLI.jar -a <Library IP> --viewLibraryVPD -u <admin> -p <pass>

View Logical Libraries

java -jar TS3500CLI.jar -a <Library IP> --viewLogicalLibraries -u <admin> -p <pass>
Logical Library, Type, Dedicated Drives, Shared Drives, Assigned Cartridges, Max Cartridges,
           LTO6,  LTO,                8,             0,                3248,           3320,
           LTO5,  LTO,               14,             0,                2600,           2620,
      LTO6TEST1,  LTO,                1,             0,                  10,             30,
      LTO6TEST2,  LTO,                1,             0,                  10,            120,

View Data Cartridges

java -jar TS3500CLI.jar -a <Library IP> --viewDataCartridges -u <admin> -p <pass>
...
A03891L5, LTO5, 2917, LTO Ultrium-5,   Slot(F5,C1,R1,T5), Not Encrypted, 2014-07-03 13:05:53
A03892L5, LTO5, 2918, LTO Ultrium-5,  Slot(F5,C7,R30,T5), Not Encrypted, 2014-07-03 15:28:40
A03893L5, LTO5, 2919, LTO Ultrium-5,   Slot(F4,C1,R7,T5), Not Encrypted, 2014-07-05 13:52:28
A03894L5, LTO5, 2920, LTO Ultrium-5,  Slot(F4,C5,R36,T5), Not Encrypted, 2014-07-19 23:45:35
A03895L5, LTO5, 2921, LTO Ultrium-5,  Slot(F2,C2,R14,T0), Not Encrypted, 2014-09-01 08:46:03
A03896L5, LTO5, 2922, LTO Ultrium-5,  Slot(F1,C3,R40,T0), Not Encrypted, 2014-08-17 17:10:07
A03897L5, LTO5, 2923, LTO Ultrium-5,  Slot(F5,C5,R28,T5), Not Encrypted, 2014-07-20 02:28:38
A03898L5, LTO5, 2924, LTO Ultrium-5,   Slot(F2,C7,R8,T0), Not Encrypted, 2014-08-04 14:16:11
A03899L5, LTO5, 2925, LTO Ultrium-5,  Slot(F4,C8,R40,T0), Not Encrypted, 2014-08-06 20:25:10
A03900L5, LTO5, 2926, LTO Ultrium-5,   Slot(F1,C8,R2,T0), Not Encrypted, 2014-10-11 00:34:42
...

Note: this command takes very long time if you have many tape cartridge

View Drive details

In case below, it checks the drive in Frame 1, Row 11. a mew drive
java -jar TS3500CLI.jar -a <Library IP> --viewDriveDetails -f 1 -r 11 -u <admin> -p <pass>
Pending Firmware Activation,                None
                 Encryption,            Disabled
                      Loads,                  56
                    Unloads,                  56
                 MB written,                1347
                    MB read,                1591
                  Cleanings,                   0
             Power on hours,                 119
                  Port 0 ID,                  27
           Port 0 Node Name, 5005 0763 0F13 2C0B
           Port 0 Port Name, 5005 0763 0F53 2C0B
                  Port 1 ID,                  91
           Port 1 Node Name, 5005 0763 0F13 2C0B
           Port 1 Port Name, 5005 0763 0F93 2C0B

View I/O status

java -jar TS3500CLI.jar -a <Library IP> --viewIoStation -u <admin> -p <pass>
I/O Station Empty
There are no data or cleaning cartridges in any I/O station

Assign tape cartridge to logical library

java -jar TS3500CLI.jar -a <Library IP> --assignDataCartridges <file full path> -u <admin> -p <pass>

File format:
<Vosor>, <Logical Library>
A00001L4, LTO6
A00002L4, LTO6
A00003L4, LTO6

Note: it's very slow if you have many tape cartridges in the library

Bulk tape cartridge assignment

java -jar TS3500CLI.jar -a <Library IP> --bulkAssignDataCartridges <file full path> -u <admin> -p <pass>
File format:
<Vosor>, <Logical Library>
A00001L4, LTO6
A00002L4, LTO6
A00003L4, LTO6

Faster than assignDataCartridges

Bulk tape cartridge assignment by logical library

java -jar TS3500CLI.jar -a <Library IP> --bulkAssignDataCartridgesByLogicalLibrary <file full path> -ll <logical library> -u <admin> -p <pass>
File format:
<Vosor>, <Logical Library>
A00001L4, LTO6
A00002L4, LTO6
A00003L4, LTO6

For the bulkAssignDataCartridgesByLogicalLibrary action, only cartridges that are already assigned to the specified source logical library will be searched and then assigned to their new logical library, specified in the input file. This method is faster than bulkAssignDataCartridges if you only need cartridges from one logical library.

Move tape from I/O station

java -jar TS3500CLI.jar -a <Library IP> --moveFromIo <Tape Slot F,C,R,T> -u <admin> -p <pass>

Move tape to I/O station

java -jar TS3500CLI.jar -a <Library IP> --removedatacartridge <VOser>-u <admin> -p <pass>

Move from All drives

java -jar TS3500CLI.jar -a <Library IP> --moveFromAllDrives -u <admin> -p <pass>

The action will first attempt to move back to the home slot and if home slot is full, it will move to first empty storage slot

Mover from drive

java -jar TS3500CLI.jar -a <Library IP> --moveFromDrives -f <frame> -r <row>-u <admin> -p <pass>

Either –f and –r, or –w , can be used to designate which tape drive.

The –f and –r options supply the frame and row location of the drive. 
The –w option is the last 2 characters of the drive's WWNN.

Same like moveFromAllDrives, the moveFromDrive action will first attempt to move back to the home slot and if home slot is full, it will move to first empty storage slot

Power Cycle Drive

Power Cycle drive F1, R11

java -jar TS3500CLI.jar -a <Library IP> --powerCycleDrive -f 1 -r 11 -u <admin> -p <pass>

Download logs

java -jar TS3500CLI.jar -a <Linurary IP>--downloadLogs ALL -u <admin> -p <pass>

Log type could be the list of them,

<ALL,EVENT,SHUTTLE_EVENT,SERVO,NVRAM_EVENT,VIO,ESM,ES_DATA,EXCEPTION,ERROR,NVRAM_DUMP,
MASTER_CONSOLE,MRPD,STATISTICS,CAR_LOGS>

Note: Multiple log types must be separated by commas without spaces. An optional argument -f <frame
number> will download only that frame's logs for the specified log type(s). To get both accessors' logs for
that type when specifying a frame number, use frame 1

 

If you prefer to read the full instruction, see TS3500 CLI instructions