Konfiguration unter Linux

Nach der Installation sind noch einige Änderungen an der Konfiguration notwendig, die man entweder über die graphische Schnittstelle (Edit -> Preferences) oder durch direktes Editieren der Konfigurationsdateien vornimmt.
Unter Linux ist das Editieren der üblichere Weg und soll deswegen hier kurz beschrieben werden.

Die Konfigurationsdateien liegen im Installationsverzeichnis (/opt/tivoli/tsm/client/ba/bin/) und heißen dsm.sys bzw. dsm.opt.
Die wesentlichen Einträge stehen in der nur von Root schreibbaren Datei dsm.sys, während dsm.opt optionale, von jedem Benutzer frei wählbare Attribute enthält.

Als Antwort auf Ihren Node Registrierungsantrag haben Sie eine E-Mail erhalten, in welcher der Servername und die Server Portnummer des Servers steht, auf welchem der Node registriert wurde. 
Diese müssen Sie nun in die dsm.sys eintragen. 
Hier ein Beispiel für eine dsm.sys für den Node Testnode, welcher auf dem Server S10.abs.lrz.de mit der Portnummer 2500 ist:

*### Servername is freely selectable. It only must be the same as in the dsm.opt. Our Recommendation is to call it as the NODENAME
servername Testnode
*### Configuration for the Connection to the TSM/ISP Server
nodename         Testnode
tcpserveraddress s10.abs.lrz.de
tcpport          2500
COMMMETHOD V6TCPIP
*### Please uncomment pwgen (with *) before the first login, only necessary if the Node password has not been changed yet.
PASSWORDACCESS GENERATE
*### Include Exlude List is necessary to choose which
inclexcl /opt/tivoli/tsm/client/ba/bin/dsm.excl.local
*###Setting for the automatic Backup service
managedservices schedule
QUERYSCHEDPERIOD 1
*###Logfile Location
ERRORLOGName /var/log/dsmerror.log
SCHEDLOGName /var/log/dsmsched.log
*###Logpruning after 7 Days
schedlogretention 7 D
errorlogretention 7 D

Entsprechend zum Beispiel hier auch die dazu passende dsm.opt:

*### Servername is set to the same as in the dsm.sys that the ISP Client knows which Settings belong to which node
servername Testnode
*### This Option must be set if Subdirectorys should be backuped too
SUbdir yes
*###  Specify which partitions you want to Backup
domain /media/test
domain /home/administrator

Inclexcl Datei zum Ein- bzw. Außschließen von Ordnern und Dateien aus dem Backup

In der dsm.sys kann der Pfad zu einer Datei genannt werden, in welcher Include/Exclude Anweisungen für ISP stehen. Dadurch können Sie Dateien und Verzeichnisse explizit vom Backup ausschließen.
Der Pfad zu dieser Datei wird dann so in die dsm.sys eingetragen:

InclExcl /opt/tivoli/tsm/client/ba/bin/dsm.excl.local

Hier finden Sie den ausführlichen IBM Support Artikel dazu, wie Sie Verzeichnisse und Ordner über diese Liste ausschließen können.

Automatische Sicherung nutzen

Bei der Anmeldung des Nodes müssen Sie angeben, dass Sie die Möglichkeit (in einem bestimmten Zeitfenster) nutzen wollen.
Sie können dies aber auch jederzeit nachholen, indem Sie Ihr Anliegen in einem Incident über den LRZ Servicedesk formulieren.

Unter Linux gibt es zwei verschiedene Arten, um die automatische Sicherung zu starten:

  1. Mithilfe der Shell können Sie den Scheduler für automatische Backups so starten:
    nohup dsmc schedule > /dev/null 2>&1
    Bitte beachten Sie, dass der Prozess als root laufen muss und die Option passwordaccess generate in dsm.sys gesetzt sein muss.
  2. Start bei Boot mithilfe von /etc/inittab oder einer rc-Datei:
    Dazu müssen Sie folgende Zeile in /etc/inittab oder in die rc-Datei hinzufügen:
    ISP::once:/pfad/zu/dsmc sched > /dev/null 2>&1

    Das Kommando kann aber auch mithilfe eines Cron Jobs oder ähnliches zu starten. In diesem Fall steht uns dann aber keine Möglichkeit zur Verfügung, Sie im Fehlerfall zu benachrichtigen.

Unter Ubuntu 20.04 und 22.04 wird automatisch ein Systemd Service unter /etc/systemd/system/dsmcad.service eingerichtet, welcher auch bereits aktiv ist.
Damit dieser aber funktioniert, muss man die Datei /opt/tivoli/tsm/client/ba/bin/dsmcad.lang anlegen und darin die Variablen LANG und LC_ALL entsprechend eintragen.
Beispiel für Deutsch:

LANG=de_DE.UTF-8
LC_ALL=de_DE.UTF-8

Dazu gibt es auch den Eintrag FAQ 301.

Der Schedulerdienst ISP Acceptor Daemon 

Je nach Betriebssystem muss dieser unterschiedlich eingerichtet werden. Bitte wählen Sie daher den für Ihr Betriebssystem zutreffenden Abschnitt.

Nach den Schritten zur Einrichtung finden Sie auch noch die Anleitung, um zu prüfen ob der Scheduler funktioniert. Bitte führen Sie auch diese Schritte aus.

Neue Linux Distributionen basierend auf systemctl (unter anderem SUSE Linux 15, aber nicht Debian/Ubuntu):

Führen Sie alle folgenden Befehle als root aus:

  • Tragen Sie folgende Zeilen in Ihre dsm.sys ein (Standardpfad /opt/tivoli/tsm/client/ba/bin):
    passwordaccess generate
    managedservices schedule
  • Starten Sie nun den Acceptor Daemon mit dem Kommando systemctl start dsmcad.service
  • Führen Sie einen Befehl wie dsmc query sess aus um das Kennwort für den Node zu speichern.
  • Damit der Dienst in Zukunft automatisch gestartet wird, führen Sie bitte noch systemctl enable dsmcad.service aus.

Ältere Linux Distributionen basierend auf init.d (nicht Debian/Ubuntu):

Führen Sie alle folgenden Befehle als root aus:

  • Tragen Sie folgende Zeilen in Ihre dsm.sys ein (Standardpfad /opt/tivoli/tsm/client/ba/bin):
    passwordaccess generate
    managedservices schedule
  • Starten Sie nun den Acceptor Daemon mit dem Kommando systemctl start dsmcad.service
  • Führen Sie einen Befehl wie dsmc query sess aus um das Kennwort für den Node zu speichern.
  • Damit der Dienst in Zukunft automatisch gestartet wird, fügen Sie bitte noch cad::once:/opt/tivoli/tsm/client/ba/bin/dsmcad >/dev/null 2>&1 in die Datei /etc/inittab hinzu.

Neue Debian/Ubuntu Distributionen:

Führen Sie alle folgenden Befehle als root aus:

  • Tragen Sie folgende Zeilen in Ihre dsm.sys ein (Standardpfad /opt/tivoli/tsm/client/ba/bin):
    passwordaccess generate
    managedservices schedule
  • Starten Sie nun den Acceptor Daemon mit dem Kommando systemctl start dsmcad.service
  • Damit der Dienst in Zukunft automatisch gestartet wird, führen Sie bitte noch systemctl enable dsmcad.service aus.

Ältere Debian/Ubuntu Distributionen:

Führen Sie alle folgenden Befehle als root aus:

  • Tragen Sie folgende Zeilen in Ihre dsm.sys ein (Standardpfad /opt/tivoli/tsm/client/ba/bin):
    passwordaccess generate
    managedservices schedule
  • Führen Sie die Kommandos chmod a+x /etc/init.d/dsmcad und update-rc.d dsmcad defaults aus.
  • Führen Sie das Kommando dsmc q f aus und geben Sie Ihr Nodepasswort ein.
  • Nun können Sie den Daemon mit /etc/init.d/dsmcad start starten. 
    Sollten Sie die Fehlermeldung dsmcad start this distribution is not supported sehen: 
    Dann müssen Sie die Datei rc.dsmcad unter /opt/tivoli/tsm/client/ba/bin editieren und den String redhat-release in der If-Bedingung durch debian_version ersetzen.
  • Damit der Dienst in Zukunft automatisch gestartet wird, fügen Sie bitte noch cad::once:/opt/tivoli/tsm/client/ba/bin/dsmcad >/dev/null 2>&1 in die Datei /etc/inittab hinzu.

Prüfung, ob der Scheduler Service funktioniert

Sollte der Scheduler Service erfolgreich eingerichtet worden sein, so sollten Sie in der dsmsched.log Datei (Pfad dazu können Sie in Ihrer dsm.sys durch Nutzung der Variable SCHEDLOGName setzen) einen ähnlichen Eintrag wie diesen hier sehen:

IBM Spectrum Protect-Client für Sichern/Archivieren Version 8, Release 1, Stufe 6.0 
Server wird nach dem nächsten geplanten Ereignis abgefragt.
Knotenname: Testnode
Sitzung hergestellt mit Server S10: Linux/x86_64
Serverversion 7, Realease 1, Stufe 7.300
Serverdatum/-zeit: Letzer Zugriff: 02.10.2018 10:18:16

--- ANFANG DER PLANUNGSPROTOKOLLABFRAGE
--- ENDE DER PLANUNGSPROTOKOLLABFRAGE
Nächste geplante Operation:
-------------------------------------
Zeitplan:              WD0900
Aktion:                Incremental
Objekte: 
Optionen:
Server-Fensterstart:   09:00:00 am 03.10.2018
-------------------------------------
Zeitplan wird aktualisiert in 1 Stunde.

Falls Ihr Eintrag in der dsmsched.log davon abweicht, so prüfen Sie bitte das dsmerror.log auf Fehler. Sollten Sie weiterhin Probleme mit dem Scheduler haben, so können Sie gerne einen Incident über unser LRZ Servicedesk erstellen.

Benachrichtung über den Status des automatischen Backups via E-Mail

Um den Überblick über Ihre automatischen Backups Ihrer Nodes zu behalten, können Sie im DATWeb für jeden Node die Benachrichtigung via E-Mail einschalten.
Dazu machen Sie einen Doppelklick auf den Node auf dem Sie die Benachrichtigung via E-Mail aktivieren möchten und klicken dann rechts oben auf Change Node Details.

Wählen Sie nun bei Backup-Emails: bzw. Backup-Emails: (Aux.): die gewünschte Benachrichtigungsmethode aus:

  • Unsuccessful Backup bedeutet, dass Sie nur eine Email bekommen wenn das Backup nicht gelaufen ist oder mit Fehlern abgeschlossen wurde.
  • Daily bedeutet, dass Sie jeden Tag eine E-Mail erhalten, egal ob das Backup erfolgreich war oder nicht.

Konfiguration mehrerer Nodes auf einem System

In der dsm.sys kann man mehrere Nodes eintragen:

SErvername nodename1
Nodename nodename1
TCPServeraddress isp1.abs.lrz.de
TCPPort 1500
COMMmethod TCPip
DOMAIN /mnt/test1
passworda generate
*** Kommentar Node 2
SErvername nodename2
Nodename nodename2
TCPServeraddress isp2.abs.lrz.de
TCPPort 1500
COMMmethod TCPip
DOMAIN /mnt/test1
passworda generate

Entsprechend müssen dann auch in der dsm.opt beide Servernamen eingetragen werden:

SErvername nodename1
SErvername nodename2

Jetzt können Sie mit dem Kommando dsmc -servername=nodename1 den nodename1 nutzen. Für nodename2 lautet das Kommando entsprechend dsmc -servername=nodename2.
Das funktioniert natürlich auch mit der ISP Client GUI (Kommando dsmj): dsmj -servername=node1 und dsmj -servername=nodename2 

Scheduler Daemon Service mit mehreren Nodes bei Nutzung von systemctl:

Hier ein Beispiel, wie die obigen Anleitungen für den Scheduler angepasst werden müssen auf Basis von systemctl:

  • Sie müssen für jeden konfigurierten Node eine eigene Konfigurationsdatei mit <nodename>.opt anlegen.
  • Kopieren das Skript /opt/tivoli/tsm/client/ba/bin/dsmcad.service nach /etc/systemd/system, falls dies durch die Installation des ISP Clients noch nicht passiert ist.
  • Erstellen Sie vom gerade kopierten Skript für jeden Node eine Kopie in /etc/systemd/system und bennenen Sie es nach dem Schemata dsmcad-<nodename>.service also z.B. dsmcad-nodename1.service und dsmcad-nodename2.service 
  • Ändern Sie jeweilige Skript der Nodes wie folgt ab:
    Ersetzen Sie die Zeile ExecStart=/usr/bin/dsmcad durch ExecStart=/usr/bin/dsmcad -optfile=/opt/tivoli/tsm/client/ba/bin/dsmnode.opt 
    (Der Pfad zum optfile muss zum jeweiligen Node passen, falls Sie mehrere dsm.opt Dateien nutzen.)
  • Machen Sie einen Reload des systemctl Services mit systemctl daemon-reload.
  • Aktivieren Sie den Autostart für jeden Service, bei unserem Beispiel also systemctl enable dsmcad-nodename1.service und systemctl enable dsmcad-nodename2.service.
  • Starten Sie die Services nun noch durch systemctl start dsmcad-nodename1.service und systemctl start dsmcad-nodenamen2.service.

Führen Sie bitte auch hier die Prüfung, ob der Scheduler Service funktioniert durch, welche weiter oben für einen Node gezeigt wurde.