Tape Library

 View Only

 TS4500 MTX command support on Linux ?

Pierre-Henry Deliège's profile image
Pierre-Henry Deliège IBM Champions posted 08/06/26 05:31 AM

Hi there,

I'm writing a doc for a project and I would like to have some confirmation and some Copy/Paste example of commands from Linux with a TS4500 Tape Library.

First, I would like to see the result of lsscsi -g command with multiple partitions created on the TS4500.

Also, I would like to make sure the mtx command is well supported.

For example, the result of: 

#mtx -f /dev/sgXX status

# mtx -f /dev/sgXX transfer 30 40

# mtx -f /dev/sgXX load 30 0#

Does someone using a TS4500 on Linux could send me some Copy/Paste of those commands ?

I would really appreciate.

Thanks in advance,

Vladimir Bahyl's profile image
Vladimir Bahyl

Bonjour Pierre-Henry,

YES, mtx is well supported on IBM TS4500 tape libraries. Here is the output of some of the commands you requested:

[root@tpsrv444 ~]# cat /etc/redhat-release
AlmaLinux release 9.8 (Olive Jaguar)

[root@tpsrv444 ~]# uname -a
Linux tpsrv444.cern.ch 5.14.0-611.16.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Dec 22 03:40:39 EST 2025 x86_64 x86_64 x86_64 GNU/Linux

[root@tpsrv444 ~]# lsscsi -g | grep IBM
[15:0:0:0]   tape    IBM      ULT3580-TD8      S2T0  /dev/st0   /dev/sg0
[15:0:0:1]   mediumx IBM      03584L32         1B02  /dev/sch0  /dev/sg1

[root@tpsrv444 ~]# mtx -f /dev/sg1 inquiry
Product Type: Medium Changer
Vendor ID: 'IBM     '
Product ID: '03584L32        '
Revision: '1C01'
Attached Changer API: No

The purpose of the tape library partitioning is that tape equipment in one partition can not access the equipment in the other partition.
It means that the lsscsi command will always give you only the view of the partition it has access to.

The status command on our tape library gives a very large output since it is a fully sized one with 18 frames. Here is a sample of that output:

[root@tpsrv444 ~]#  mtx -f /dev/sg1 status
  Storage Changer /dev/sg1:28 Drives, 22611 Slots ( 255 Import/Export )
Data Transfer Element 0:Empty
Data Transfer Element 1:Full (Storage Element 8648 Loaded):VolumeTag = L77670M8
Data Transfer Element 2:Full (Storage Element 2710 Loaded):VolumeTag = L72223M8
Data Transfer Element 3:Full (Storage Element 16794 Loaded):VolumeTag = L50020L9
Data Transfer Element 4:Full (Storage Element 7979 Loaded):VolumeTag = L77109M8
Data Transfer Element 5:Full (Storage Element 1987 Loaded):VolumeTag = L72413M8
      Storage Element 1:Full :VolumeTag=LW0001M8
      Storage Element 2:Full :VolumeTag=LW0003M8
      Storage Element 3:Full :VolumeTag=LW0002M8
      Storage Element 4:Full :VolumeTag=L40658L9
      Storage Element 5:Full :VolumeTag=L40659L9
          :
      Storage Element 19680:Empty:VolumeTag=
      Storage Element 19681:Empty:VolumeTag=
      Storage Element 19682:Empty:VolumeTag=
      Storage Element 19683:Empty:VolumeTag=
      Storage Element 19684:Empty:VolumeTag=
      Storage Element 19685:Empty:VolumeTag=
          :
      Storage Element 22360 IMPORT/EXPORT:Empty:VolumeTag=
      Storage Element 22361 IMPORT/EXPORT:Empty:VolumeTag=
      Storage Element 22362 IMPORT/EXPORT:Empty:VolumeTag=
      Storage Element 22363 IMPORT/EXPORT:Empty:VolumeTag=
      Storage Element 22364 IMPORT/EXPORT:Empty:VolumeTag=
      Storage Element 22365 IMPORT/EXPORT:Empty:VolumeTag=

Here is the output of the transfer command:

[root@tpsrv444 ~]# mtx -f /dev/sg1 transfer 5 19680
[root@tpsrv444 ~]#

As you can see, there is no particular output, but after that move the status of those slots shown above changes to this:

      Storage Element 5:Empty:VolumeTag=
      Storage Element 19680:Full :VolumeTag=L40659L9

During the mtx transfer command, the prompt hanged for a couple of seconds suggesting that the library was actually doing the physical move.
However, I am not 100% as I was not by the library at that moment in time to observe the move.
Because the slot numbers are logical (i.e. not physical) it could be that all the library did was just an index swap in the internal inventory.

Here is the output of the load command:

[root@tpsrv444 ~]# mtx -f /dev/sg1 load 3 0
Loading media from Storage Element 3 into drive 0...done
[root@tpsrv444 ~]#

after which the status changes to this:

Data Transfer Element 0:Full (Storage Element 3 Loaded):VolumeTag = LW0002M8
      Storage Element 3:Empty:VolumeTag=

Let me know if you need more assistance.

Cordialement,

Vladimir Bahyl
CERN

Pierre-Henry Deliège's profile image
Pierre-Henry Deliège IBM Champions

Thank you very much Vladimir.

Best regards,