Donnerstag, 14. September 2006

Tivoli Storage Manager (TSM) unter Debian Linux

Soeben habe ich den Tivoli Storage Manager Client unter Debian Linux installiert. Hier eine kurze Anleitung, um die wenigen Fallstricke gekonnt zu umschiffen:

Binaries

Zuerst benötigt man die Binaries. In meinem Fall hiess die gesuchte Datei TSM534C_LINUX86.tar und war satte 76MB gross. Diese wird freundlicherweise im Intranet bereitgestellt.

Man bezieht das Ding am Besten so:

cd /tmp
wget "http://www.domain.ch/TSM534C_LINUX86.tar"
tar xvf TSM534C_LINUX86.tar

Do you speak RPM? No!

Nun sollte man im /tmp-Verzeichnis einige Files rumliegen haben:

server:/tmp# ls -l
total 102239
-rw-r-----  1 root bin    186681 2006-04-26 10:01 LICENSE.TXT
-rw-r--r--  1 root bin     27011 2006-04-26 10:01 README_api_enu.htm
-rw-r--r--  1 root bin     92708 2006-04-26 10:01 README_enu.htm
-rw-r--r--  1 root bin     59366 2006-04-26 10:01 README_hsm_enu.htm
-rwxr-----  1 root bin     16846 2006-04-26 10:01 README.NEWDSMSCOUTD
-rw-r--r--  1 root bin   2195792 2006-04-26 10:05 TIVsm-API64.i386.rpm
-rw-r--r--  1 root bin   5324235 2006-04-26 09:59 TIVsm-API.i386.rpm
-rw-r--r--  1 root bin  16593919 2006-04-26 09:59 TIVsm-BA.i386.rpm
-rw-r--r--  1 root bin  55224942 2006-04-26 10:00 TIVsm-HSM.i386.rpm

Da schlägt doch des Debian-Aficionados Herz höher – wer liebt sie nicht, die RPMs? RHEL – das ist was für fehlgelenkte Windows-Admins! Hier im Debian-Land spricht man apt-get, dpkg und .deb.

alien, daher!

Glücklicherweise hat sich die Entwickler-Community diesem Problem angenommen:

apt-get install alien

und danach:

alien -d TIVsm-API.i386.rpm
alien -d TIVsm-BA.i386.rpm

Im /tmp liegen nun zwei neue Dateien herum:

server:/tmp# ls -l | grep .deb
total 102239
-rw-r--r--  1 root root  5313996 2006-09-14 20:10 tivsm-api_5.3.4-1_i386.deb
-rw-r--r--  1 root root 16580418 2006-09-14 20:10 tivsm-ba_5.3.4-1_i386.deb

Jetzt geht’s los!

Jetzt wird wieder in die Hände gespuckt, denn wir installieren uns das IBM-Produkt … *sing*

dpkg -i tivsm-api_5.3.4-1_i386.deb
dpkg -i tivsm-ba_5.3.4-1_i386.deb

Konfigurationsdateien

Unter /opt/tivoli/tsm/client/ba/bin erstellt man nun noch die zwei Konfigurationsdateien dsm.opt und dsm.sys mit folgendem Inhalt:

cat dsm.opt
SERVERNAME              xxx.yyy.ch

… und …

cat dsm.sys
SERVERNAME              xxx.yyy.ch
TCPSERVERADDRESS        10.0.6.70
PASSWORDACCESS          GENERATE

SCHEDLOGNAME            /var/log/tsm/schedule.log
ERRORLOGNAME            /var/log/tsm/error.log

Der Sinn eines korrekten Hostnamens

Als ich dsmc nun starten wollte, gab es diese blöde Fehlermeldung:

ANS1353E Session rejected: Unknown or incorrect ID entered

Auch das setzen der Variable NODENAME in dsm.opt resp. dsm.sys brachte nicht den gewünschten Effekt:

ANS1036S Invalid option 'NODENAME' found in options file '/opt/tivoli/tsm/client/ba/bin/dsm.opt'

… weshalb ich nicht darum herum kam, dem Server endlich den richtigen Hostnamen zu verpassen:

echo xxx.yyy.ch > /etc/hostname
/bin/hostname -F /etc/hostname

Als ich nun dsmc ausführte, war ich nach der Eingabe des Passwortes drin! Heureka.

Ohne Scheduler läuft nichts!

Deshalb nun noch der obligatorische Eintrag in /etc/inittab:

itsm::once:/usr/bin/dsmc sched > /dev/null 2>&1

… und beim nächsten Neustart sollte der Scheduler geladen werden (hoffentlich, ausprobiert habe ich es nicht – diese Datei war mir bisher unbekannt).

Um den Scheduler ohne Neustart zu laden, genügt folgender Shell-Befehl:

nohup dsmc schedule 2> /dev/null &

Drei Probleme und Lösungen

Fehler 1: Beim Starten von dmsc erscheint folgende Fehlermeldung:

dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory

Es ist nötig, die Datei /etc/ld.so.conf zu erstellen (wenn sie noch nicht existiert) und folgende Zeile einzufügen:

/opt/tivoli/tsm/client/api/bin/

Danach müssen die „shared objects“ neu eingelesen werden:

ldconfig

Fehler 2: Beim Starten von dmsc erscheint folgende Fehlermeldung:

dsmc: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

Es fehlt das Debian-Paket libstdc++5:

apt-get install libstdc++5

Fehler 3: Beim Starten von dmsc erscheint folgende Fehlermeldung:

ANS9999E amsgrtrv.cpp(3087): Message No 11000 could not be found.
ANS9999E amsgrtrv.cpp(3087): Message No 11000 could not be found.
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.

Ein symbolischer Link fehlt:

server:/opt/tivoli/tsm/client/ba/bin# ln -s ../../lang/en_US/

/etc/init.d/tsm

Zieht man statt der inittab ein Start-Script unter /etc/init.d/ vor, sollte dies ungefähr folgendermassen aussehen (Dank: Reto):

#!/bin/sh 

if [ $1 = "start" ]; then 
        /usr/bin/nohup /usr/bin/dsmc schedule 2> /dev/null &
        echo "Starting ADSM scheduler"
else 
        if [ $1 = "stop" ]; then 
                pid=`/bin/ps -e | /bin/grep dsmc | /bin/sed -e 's/^ *//' -e 's/ .*//'` 
                if [ "${pid}" != "" ]; then 
                        echo "Stopping ADSM scheduler" 
                        /usr/bin/kill ${pid} 
                fi 
        fi
fi

Dank

Liked this post? Follow this blog to get more. 

Tags:
Labels: Linux

Ein Kommentar Kommentare

Kommentar erfassen