Skip to main content

TSM as a home backup solution

I previously reported on how to install TSM on Ubuntu. Today I'm going to explain how to use TSM as a backup solution for everyday use. This might sound weird, as most people think professional backup solutions only offer VTL or tape backups; however, we'll create a FILE devclass as a virtual tape, which will allow us to use disk (eg an external USB disk) to store our backup data.


Here's the setup : a typical Windows/Linux client base, combined with one TSM server running on Linux. We're assuming that the backups will be put on an external USB disk, mounted at /mnt/DATA on the server, that TSM has been installed (and is up and running), and that the client package has been installed. In the install article about TSM, we placed our DB and log volumes in the TSM install directory. If you're really paranoid, you can place them on the external USB disk, but then you must take care that the disk is connected every time TSM starts up.


First, start up TSM by typing ./dsmserv from the TSM Server install directory (/opt/tivoli/tsm/server/bin); time to register an admin, and grant him system authorities :

reg admin myname mypasswd passe=9999
granth auth myname classes=system

Time to create the device class, we'll call it VTAPE, and we'll assign a capacity of 256 MB to it, which means our virtual tapes can hold 256 MB on them :

# mkdir -m 755 -p /mnt/DATA/Backups/TSM/Volumes
define devc VTAPE devtype=file maxcapacity=256M directory=/mnt/DATA/Backups/TSM/Volumes
define stgpool TAPEPOOL VTAPE pooltype=primary maxscratch=1000

The last command defines a tape pool containing maximum 1000 tapes, using our virtual tape device class.
Don't forget to change the default Policy Set's destination to the TAPEPOOL storage pool :

upd copygroup STANDARD destination=TAPEPOOL
validate policyset STANDARD STANDARD
activate policyset STANDARD STANDARD



We'll create a maintenance script with the TSM webadmin interface; an example of a maintenance script is something like :

backup db devc=vtape type=full wait=yes
expire inventory skipdirs=NO wait=yes
prepare
delete volhist todate=today type=stgreuse
delete volhist todate=today type=stgnew
delete volhist todate=today type=stgdelete



Time to configure the client(s). Let's back up our Ubuntu workstation by defining a client UBUNTU :

reg node UBUNTU passwd passexp=9999 USERID=NONE domain=STANDARD type=client

Create the following dsm.sys file in the /opt/tivoli/tsm/client/ba/bin directory which will backup the /home and /etc directories :

SErvername mytsmsrv
COMMmethod TCPip
TCPPort 1500
TCPServeraddress UBUNTU

PASSWORDACCESS GENERATE
SCHEDMODE POLLING
NODENAME UBUNTU
SCHEDLOGNAME /opt/tivoli/tsm/client/ba/bin/dsmsched.log
errorlogretention 3
resourceutilization 10
SCHEDLOGRETENTION 3


DOMAIN / /home
EXCLUDE /.../*
INCLUDE /etc/.../*
INCLUDE /home/.../*



Now time to test the client connection; run the dsmc binary, the first time it will ask you for a user id (just press enter, it's offering our client node name). The password is the 'passwd' password string we entered in the 'reg node' command :

# ./dsmc
IBM Tivoli Storage Manager
Command Line Backup/Archive Client Interface - Version 5, Release 2, Level 3.0
(c) Copyright by IBM Corporation and other(s) 1990, 2004. All Rights Reserved.


Node Name: UBUNTU
Session established with server SERVER1: Linux/i386
Server Version 5, Release 2, Level 2.0
Server date/time: 07/30/2007 19:10:37 Last access: 07/30/2007 18:42:27


Please enter your user id :


Please enter password for user id "UBUNTU":


Session established with server SERVER1: Linux/i386
Server Version 5, Release 2, Level 2.0
Server date/time: 07/30/2007 19:10:56 Last access: 07/30/2007 19:10:37



That's it ! You can start a backup session using :

# ./dsmc i



Happy backupping !