Installare il client TSM su Ubuntu

Posted by Cristian | Posted in Backup | Posted on 06-03-2010

2

Come prima cosa è necessario scaricare il client TSM dall’area ftp IBM o dall’ area Passport Adwantage a voi riservata.

ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/…

una volta scaricato il file .tar è necessario installare questi due pacchetti:

apt-get install ksh libstdc++5

scompattare il file tar:

tar xvf x.x.x.x-TIV-TSMBAC-LinuxX86.tar
(le x fanno riferimento alla versione scaricata)

utilizzando ALIEN una sorta di “convertitore” di pacchetti creo i miei pacchetti .deb:

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

mv TIVsm-API-x.x.x/debian TIVsm-API-x.x.x/DEBIAN
mv TIVsm-BA-x.x.x/debian TIVsm-BA-x.x.x/DEBIAN

(le x fanno riferimento alla versione scaricata)

è necessario editare i due file riducendoli come segue:

vim TIVsm-API-x.x.x/DEBIAN/control

Source: tivsm-api
Section: alien
Priority: extra
Maintainer: who are you
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: x.x.x

vim TIVsm-BA-x.x.x/DEBIAN/control

Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: who are you
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: x.x.x

ora creo i pacchetti:

dpkg -b TIVsm-API-x.x.x
dpkg -b TIVsm-BA-x.x.x

e li installo (a vostro rischio e pericolo)

dpkg -i TIVsm-API-x.x.x.deb
dpkg -i TIVsm-BA-x.x.x.deb

edito i file di configurazione:

vim /opt/tivoli/tsm/client/ba/bin/dsm.opt

ServerName Nome-del-server-client
Domain ALL-LOCAL
DateFormat 3

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

ServerName Nome-del-server
CommMethod TCPip
HTTPPort 1580
TcpPort 1500
TcpServerAddress ip-del-server-tivoli-tsm
NodeName Nome-del-nodo-definito-sul-server-tivoli-tsm
PasswordAccess generate
Compression On
ErrorLogName /var/log/Tivoli/dsmerror.log
ErrorLogRetention 15 D
SchedLogName /var/log/Tivoli/dsmsched.log
SchedLogRetention 15 D
* InclExcl /opt/tivoli/tsm/client/ba/bin/dsm.inclexcl

imposto i permessi sui file principali:

chown root.root /opt/tivoli/tsm/client/ba/bin/dsmc
chown root.root /opt/tivoli/tsm/client/ba/bin/dsm.opt
chown root.root /opt/tivoli/tsm/client/ba/bin/dsm.sys

chmod 600 /opt/tivoli/tsm/client/ba/bin/dsm.opt

chmod 600 /opt/tivoli/tsm/client/ba/bin/dsm.sys
chmod 700 /opt/tivoli/tsm/client/ba/bin/dsmc

a questo punto possiamo provare a fare un backup:

dsmc i /path-da-backuppare -subdir=yes

se ho tralasciato qualcosa potrebbero apparari uno dei seguenti errori:

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

Soluzione:
ldd /usr/bin/dsmc

apparirà qualcosa di questo tipo:
linux-gate.so.1 => (0xffffe000)
libcrypt.so.1 => /lib32/libcrypt.so.1 (0xf7eaa000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf7e92000)
libdl.so.2 => /lib32/libdl.so.2 (0xf7e8d000)
libgpfs.so => not found
libdmapi.so => not found
librt.so.1 => /lib32/librt.so.1 (0xf7e84000)
libha_gs_r.so => not found
libstdc++.so.5 => /usr/lib32/libstdc++.so.5 (0xf7dc9000)
libm.so.6 => /lib32/libm.so.6 (0xf7da4000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf7d99000)
libc.so.6 => /lib32/libc.so.6 (0xf7c4a000)
/lib/ld-linux.so.2 (0xf7eed000)

lancio:
echo “/opt/tivoli/tsm/client/api/bin/” > /etc/ld.so.conf.d/tivoli.conf
ldconfig

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

Soluzione:
aptitude install libstdc++5

3) error ANS0101E:

Soluzione:
ln -s /opt/tivoli/tsm/client/lang/en_US /opt/tivoli/tsm/client/ba/bin/en_US

Di seguito lo script per l’avvio dello scheduler da init.d.

vim /etc/init.d/dsm
# inizio script
#!/bin/bash
#
# dsmc       Start/Stop IBM Tivoli Storage Scheduler
#
# processname: dsmc
# pidfile: /var/run/dsmc.pid
case $1 in
start)
/opt/tivoli/tsm/client/ba/bin/dsmc sched -servername=
nome_del_nodo_definito_sul_server_tivoli_tsm -schedmod=pr  >/dev/null 2>&1 &
echo `pidof dsmc` > /var/run/dsmc.pid
exit 0
;;
stop)
kill -9 `cat /var/run/dsmc.pid`
rm -f /var/run/dsmc.pid
exit 0
;;
restart)
/etc/init.d/dsm stop
sleep 5
/etc/init.d/dsm start
exit 0
;;
*)
echo “Usage: $0 {start|stop|restart}”
;;
Esac
### fine script

ora lanciando ps -ef | grep dsmc e verifico che il processo dsmc sia attivo.

Di seguito lo script per l’avvio della web gui da init.d.

vim /etc/init.d/dsmcad
#
## inizio script
#! /bin/sh
#
# /etc/init.d/dsmcad
#
### BEGIN INIT INFO
# Processname: dsmcad
DSMCAD_BIN=/opt/tivoli/tsm/client/ba/bin/dsmcad
test -x $DSMCAD_BIN || { echo “$FDSMCAD_BIN not installed”;
if [ "$1" = "stop" ]; then exit 0;
else exit 5; fi; }

#Source function library.
. /etc/rc.status

# Reset status of this service
rc_reset

case “$1″ in
start)
echo -n “Starting dsmcad”
startproc $DSMCAD_BIN
rc_status -v
;;

stop)
echo -n “Shutting down dsmcad”
killproc -TERM $DSMCAD_BIN
rc_status -v
;;

try-restart)
$0 status
if test $? = 0; then
$0 restart
else
rc_reset # Not running is not a failure.
fi
rc_status
;;

restart)
$0 stop
$0 start
rc_status
;;

force-reload)
echo -n “Reload service dsmcad”
$0 try-restart
rc_status
;;

reload)
echo -n “Reload service dsmcad, not supported”
rc_failed 3
rc_status -v
;;

status)
echo -n “Checking for service dsmcad”
checkproc $DSMCAD_BIN
rc_status -v
;;

*)
echo “Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}”
exit 1
;;
esac
rc_exit

## fine script

Comments posted (2)

Riguardo “lo script per l’avvio dello scheduler da init.d”
è possibile se necessario aggiungere un comando di preschedulercmd così:

/opt/tivoli/tsm/client/ba/bin/dsmc sched -preschedulecmd=/path_mio_script.sh -servername=nome_del_nodo_definito_sul_server_tivoli_tsm -schedmod=pr

se si hanno problemi ad installare libstdc++5 possiamo scaricare il .deb da qui –> http://packages.ubuntu.com/search?searchon=names&keywords=libstdc%2B%2B5 ed installarlo con dpkg -i [pacchetto]

Write a comment