Debian/Ubuntu Linux (64-bit)

This document describes how to manually install IBM TSM on Debian or Ubuntu Linux (64-bit).

Since the latest release, 7.1.2, IBM ships .deb archives, so you can get them directly. For older deb/ubuntu machine the procedure below may still be useful.

Deb archives available on our local mirror here: https://api.cloud.ipnett.se/dist/tsm/mirror/maintenance/storage/tivoli-storage-management/maintenance/client/v7r1/Linux/LinuxX86_DEB/ and at IBMs site: https://www3.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v7r1/Linux/LinuxX86_DEB/

1. Fetch TSM installation files:

In this example, files are fetched from the IPnett TSM mirror.

wget https://api.cloud.ipnett.se/dist/tsm/mirror/maintenance/storage/tivoli-storage-management/maintenance/client/v7r1/Linux/LinuxX86/BA/v711/7.1.1.0-TIV-TSMBAC-LinuxX86.tar

2. Unpack installation files

tar xf *-TIV-TSMBAC-LinuxX86.tar

3a. Convert IBM GSKIT and TSM

Make sure you have alienand rpm installed first. With root privileges, run

for rpm in gsk*.rpm TIVsm-API64*.rpm TIVsm-BA.x86_64.rpm ; do sudo alien -c -d $rpm ; done

3b. Install IBM GSKIT and TSM

With root privileges:

sudo dpkg -i *.deb

3c. Setup ldconfig

Edit /etc/ld.so.conf.d/tsm.conf and add, for a 64-bit system:

/opt/tivoli/tsm/client/api/bin64/
/usr/local/ibm/gsk8_64/lib64/

With root privileges:

sudo ldconfig

4. Add the IPnett BaaS CA to the TSM Trust database

wget https://raw.githubusercontent.com/safespring/cloud-BaaS/master/pki/IPnett-Cloud-Root-CA.sh
wget https://raw.githubusercontent.com/safespring/cloud-BaaS/master/pki/IPnett-Cloud-Root-CA.pem
sh ./IPnett-Cloud-Root-CA.sh

5. Install TSM configuration files

The TSM configuration files are unique to each node, and can be generated via the BaaS API or the portal. Place the two files at this location:

  • /opt/tivoli/tsm/client/ba/bin/dsm.sys
  • /opt/tivoli/tsm/client/ba/bin/dsm.opt

6. Initialize TSM (set client password)

When you start the TSM client for the first time, you will be prompted for your password. If you get asked for the nodename, accept the default which is configured in dsm.sys already (see previous step).

dsmc query session

7. Enable TSM autostart

The provided init script from IBM does not work on Debian or Ubuntu: Replace the /etc/init.d/dsmcad file with the a file with these contents instead:

#!/bin/sh
# kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing.
if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then
    set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script
fi
### BEGIN INIT INFO
# Provides:          dsmcad
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: DSMCAD initscript
# Description:       This script replaces the /etc/init.d/dsmcad script
#                       from IBM that only works on Red Hat variants
#                       to start the dmscad service on Debian variants
### END INIT INFO

# Author: Gabriel Paues <gabriel.paues@safespring.com>
#

DESC="DSMCAD Start Script"
DSMCAD_DIR=/opt/tivoli/tsm/client/ba/bin
DAEMON=$DSMCAD_DIR/dsmcad
PIDFILE=/var/run/dsmcad.pid
WORKING_DIR=/var/log/tsm

mkdir -p $WORKING_DIR

test -x $DAEMON || exit 0

. /lib/lsb/init-functions

case "$1" in
  start)
        log_daemon_msg "Starting dsmcad" "dsmcad"
        cd $WORKING_DIR
        start_daemon -p $PIDFILE $DAEMON
        log_end_msg $?
    ;;
  stop)
        log_daemon_msg "Stopping dsmcad" "dsmcad"
        killproc -p $PIDFILE $DAEMON
        log_end_msg $?
    ;;
  force-reload|restart)
    $0 stop
    $0 start
    ;;
  status)
    status_of_proc -p $PIDFILE $DAEMON atd && exit 0 || exit $?
    ;;
  *)
    echo "Usage: /etc/init.d/dsmcad {start|stop|restart|force-reload|status}"
    exit 1
    ;;
esac