Installation der Backupsoftware für Unixclients (Netbackup Version 7.1)

Die meiste Software wird unterhalb eines Verzeichnisbaums /usr/openv/ installiert. Die wichtigste zentrale Konfigurationsdatei ist /usr/openv/netbackup/bp.conf. Weitere Komponenten der Software werden in /opt/VRTSpbx/ und /etc/vx/ installiert. Ab dieser Version der Software werden die Backup-Dienste auf Ihrem Server (dem Backup-Client) nicht mehr über (x)inetd gestartet, sondern laufen als eigenständige Daemonen: bpcd (tcp Port 13782), vnetd (tcp Port 13724) und pbx_exchange (tcp Port 1556). Eine Absicherung dieser Dienste über die xinetd Konfiguration oder tcp-wrappers ist damit nicht mehr möglich. Knfigurieren Sie daher einen Firewall, der Zugriffe auf diese Dienste nur lokal (localhost und eigene IP-Adressen) und aus dem Backup-Netz 130.133.8.64/27 zulässt! Wir haben bisher allerdings nicht feststellen können, dass die Software Probleme hat, wenn Port 1556 nicht vom Backupnetz zugreifbar ist. Blockieren Sie diesen Port also ruhig... Im Normalfall erzeugt die Software keine Logfileeinträge außer in /var/log/VRTSpbx. Bei Problemen kann die Software so konfiguriert werden, dass umfangreiche Logfiles in /usr/openv/netbackup/logs und /usr/openv/logs anfallen. Ein DNS Cache liegt in /usr/openv/var/host_cache/.

Installation der Software

Die NetBackup-7.1 Software unterstützt folgende Plattformen: 32 bit Unix-Plattformen werden in NetBackup-7 nicht mehr unterstützt (Ausnahme: FreeBSD und Mac OS X), daher ist das spätere Upgrade auf NetBackup-7 für diese Plattformen nicht mehr möglich. Wir rechnen aber damit, dass etwa bis zum Jahr 2015 weiterhin die NetBackup-6.x Clients funktionabel bleiben. Die Installation besteht aus sechs Schritten: Die folgende Anleitung wurde am Beispiel einer SLES-11SP1 ia64 Distribution erstellt, sollte aber sinngemäß auf alle Mac OS X, Linux- und Unix-Varianten passen. Wo uns bekannt, wird das Vorgehen um distributionsspezifische Hinweise erweitert.
Ab dieser Major Release (7) werden verschiedene Linux-Distributionsfamilien unterschieden und die Software mit dem Paketmanagement dieser Distributionen installiert (d.h. rpm Pakete, jedoch bei Debian nicht). D.h. das Installationsprogramm versucht die für Ihre Distribution am besten geeignete Softwarevariante festzustellen und zu installieren. Es sollte also passieren, dass bei einer Fedora- oder CentOS-Distribution die RedHat-Variante, bei Ubuntu die Debian Variante und bei einer Opensuse-11-Distribution die Suse-2.6.16 (und damit SLES-10) Variante selektiert wird. Im Allgemeinen wird diese Empfehlung wohl die richtige sein.
Schritt 1: Feststellen der bisherigen Version und Vorarbeiten
Falls Sie bereits eine ältere Version der NetBackup-Software installiert hatten, sichern Sie vorsichtshalber die Dateien /usr/openv/netbackup/bp.conf und eventuell vorhandene Dateien /usr/openv/netbackup/exclude_list* und stellen Sie die Version Ihrer bisherigen NetBackup-Software fest. Ihr Versionslevel ergibt sich aus dem Inhalt der Datei /usr/openv/netbackup/bin/version .

Stellen Sie (nur) bei Linux das Vorhandensein der Bibliotheken libstdc++-libc6.2-2.so.3 (bin mir nicht sicher!), libstdc++.so.5 oder libstdc++.so.6 und libpam.so.0 sicher: Stellen Sie dazu sicher, dass im Falle von SLES/openSUSE-Linux (10.x bis 11.x) das Paket libstdc++33 bzw. (bei openSUSE 12.2 64 bit) libstdc++47 installiert ist. Ähnliches gilt für alle anderen neueren Distributionen. Lesen Sie dazu am besten http://backup.zedat.fu-berlin.de/faq.php?item=libstdcpp. Falls diese Kompatibilitätsbibliothek fehlt, erscheint schon während der Installation eine Fehlermeldung wie:

/usr/openv/netbackup/bin/bmrsetupclient: error while loading shared libraries: libstdc++.so.5:
cannot open shared object file: No such file or directory
und selbst wenn die Meldung nicht erscheint, können die binaries nicht ausgeführt werden.
[SLES11-SP1 -11.1 64]% rpm -qi libstdc++33 || zypper install libstdc++33

Sie können erkennen, dass alle nötigen Bibliotheken vorliegen, wenn nach der Installation der Befehl ldd angewendet auf die Binaries bpcd, bpjava-msvc und bplist (aus /usr/openv/netbackup/bin/ ) und der Start von jbpSA keine Fehlermeldungen schmeißt.

Beachten Sie, dass von NetBackup offiziell nur die üblichen kommerziellen Distributionen unterstützt werden. Erfahrungsgemäß verursachen alle anderen Distributionen aber keine unlösbaren Probleme.

Die Backup-Dienste werden beim Systemstart über die init-Skripte in /etc/init.d/ gestartet. Ein (x)inetd wird nicht mehr benötigt, alte Einträge für NetBackup in /etc/xinit.d/ entfallen bzw. können gelöscht werden: vnetd, bpcd, bp*, vopied.

Wenn Sie einen Firewall verwenden, stellen Sie sicher, dass auch eingehende Verbindungen vom Backup-Netz zu den NetBackup-Dienstprogrammen auf Ihrem Rechner nicht blockiert sind:
Bei openSuSE vor 11.2 mit SuSEfirewall2 ergänzen Sie dazu beispielsweise die Zeile FW_SERVICES_EXT_TCP in der Datei /etc/sysconfig/SuSEfirewall2 um die vier Services "vnetd vopied bpcd bpjava-msvc"
Bei openSuSE ab 11.2 ergänzen Sie stattdessen die Zeile FW_CONFIGURATIONS_EXT in der Datei /etc/sysconfig/SuSEfirewall2 um den Namen netbackup, so dass sie beispielsweise aussieht wie FW_CONFIGURATIONS_EXT="sshd netbackup" und legen eine neue Datei /etc/sysconfig/SuSEfirewall2.d/services/netbackup an mit folgendem Inhalt:

## Name: netbackup
## Description: Open ports for NetBackup

# space separated list of allowed TCP ports
TCP="bpcd vnetd veritas_pbx"
Dann starten den Firewall bei allen openSuSE-Versionen neu: rcSuSEfirewall2 reload. Das ist weiter unten in Schritt 6 noch einmal beschrieben. (Hinweis: Wenn Sie den SuSE-Firewall bereits so konfiguriert haben, dass Sie EXT-, INT- und DMZ-Zonen unterscheiden, müssen Sie die Backup-Services für diejenige Zone freigeben, in der Sie das Backup-Netz 130.133.8.64/27 zu stehen haben.)
Die Zuordnungen der Backup-Services zu ihren Port-Nummern werden während der folgenden Installation in der Datei /etc/services nachgetragen, wenn sie dort noch nicht stehen. Bei openSuSE stehen sie dort schon. Dort ist für alle möglichen Dienste das Mapping von Dienstname zu Portnummer aufgelistet. Achtung! Ohne Firewall öffnen Sie nun Ihren Rechner für weltweite Zugriffe auf die Backup-Dienstprogramme.
Schritt 2: Herunterladen der Software
Falls Sie noch nicht eine 7.1 Version der Backup-Software installiert haben, laden Sie die für Ihr Betriebssystem passende tar-Datei der Basissoftware NetBackup-7.1 von dieser Seite herunter.

Falls Sie stattdessen bereits Version 7.1 installiert haben, laden Sie die Basissoftware nicht herunter, sondern nur die Upgrade-Pakete im nächsten Absatz und lassen Sie Schritt 3 aus.

Dann laden Sie die Upgrade-Pakete NB_CLT... und NB_JAV_... von Version 7.1 zu Version 7.1.x von derselben Seite herunter, falls es diese dort geben sollte.

Bei Mac OS X lassen Sie das Java-Paket NB_JAV... aus, das gibt es nicht für Mac OS X.

Vergewissern Sie sich, dass Sie in /tmp/ mindestens 14 GB und in /usr/ mindestens 500 MB freien Platz haben. Sollte der Platz in /tmp/ nicht ausreichen, wählen Sie einen beliebigen anderen Ort als /tmp/ und verfahren sinngemäß. 500 MB Platz in /usr/ für /usr/openv/ muss aber sein.

Sie müssen root sein, um die Software zu installieren:

% id
uid=0(root) gid=0(root) groups=0(root)
Bei Mac OS X nehmen Sie die Installation vollständig innerhalb von Terminal.app vor, ihr Benutzer-Account muss über Administrator-Rechte verfügen.
Sie sollten die MD5-Summen der Archive prüfen, um sicherzustellen, dass alle Pakete vollständig und unversehrt heruntergeladen wurden. Für Suse sieht der Vorgang etwa so aus, für andere Unix-Varianten sinngemäß:
[root]% cd /tmp
[root]% wget http://backup.zedat.fu-berlin.de/NetBackup_7.1_CLIENTS.tar
[root]% wget http://backup.zedat.fu-berlin.de/NB_CLT_7.1.0.3.tar
[root]% tar -xvf NetBackup_7.1_CLIENTS.tar
[root]% tar -xvf NB_CLT_7.1.0.3.tar
[root]% ls -l NetBackup_7.1_CLIENTS.tar NB_CLT_7.1.0.3.tar
-rw-r--r-- 1 root root 3386757120 Aug  4 13:23 NetBackup_7.1_CLIENTS.tar
-rw-r--r-- 1 root root 3281807360 Feb 27 13:50 NB_CLT_7.1.0.3.tar
[root]% md5sum NetBackup_7.1_CLIENTS.tar NB_CLT_7.1.0.3.tar
03214145fe5be80af25474db8f96c01a  NetBackup_7.1_CLIENTS.tar
94cbb049965624442b19f94bc11fd3a6  NB_CLT_7.1.0.3.tar
Wenn Sie nicht unter Linux arbeiten und beim Auspacken der tar-files die Fehlermeldung ././@LongLink: typeflag 'L' not recognized, converting to regular file oder ähnlich erscheint, benutzen Sie bitte GNU-tar zum Auspacken.
Unter Mac OS X laden Sie Dateien mit curl herunter und berechnen die MD5-Summen mit openssl md5 NetBackup_7.1_CLIENTS.tar.
Die 7.1-Basissoftware liegt nun in /tmp/NetBackup_7.1_CLIENTS/. Wenn die MD5-Summen nicht stimmen, vergleichen Sie die Dateigrößen, vielleicht wurde eine Datei nicht vollständig übertragen. Stimmen die Dateigrößen oder MD5-Summen nicht überein, sollten Sie auf keinen Fall weitermachen!
Schritt 3: Installation der NetBackup-7.1 Basissoftware
Die Basissoftware alleine ist bereits funktionsfähig. Trotzdem sollten Sie nach diesem Schritt noch das Upgrade auf 7.1.x installieren, um eine sichere und fehlerarme Software zu erhalten. Wenn es Sie denn gäbe.

Sichern Sie bei Vorhandensein einer früheren Version der NetBackup-Software vorsichtshalber eine Kopie der Datei /usr/openv/netbackup/bp.conf und möglicher Exclude-Listen /usr/openv/netbackup/exclude_list* an einen anderen Ort. Während der Installation könnten sonst möglicherweise weitere Einträge in der Datei verloren gehen. Normalerweise passiert das nicht.

Achtung bei Linux Kerneln 3.x.x Zwei Installationsskripte sind so doof, dass sie auf 3.x.x Kerneln (ab opensuse-12.1, SLES11-SP2, Ubuntu-11.10, Linux Mint 12, ...) nicht mehr funktionieren.
Symantec hat dazu folgende Vorschläge: http://www.symantec.com/docs/TECH176428
Ihre Kernelversion können Sie ermitteln mit uname -r. Wenn Sie davon betroffen sind, helfen zwei kleinere Bugfixes:
1.Suchen Sie die zu Ihrer Distribution passende Datei cp_to_client:

[root]% cd /tmp/
[root]% find . -name cp_to_client
...
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/IBMzSeriesSuSE2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/IBMpSeriesSuSE2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/Debian2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/RedHat2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/IBMpSeriesRedHat2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/IBMzSeriesRedHat2.6/cp_to_client
./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client
...
Für Debian, Ubuntu und Linux Mint ist die passende Datei ./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/Debian2.6/cp_to_client. Für Opensuse-12.x ist die passende Datei ./NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client. Laden Sie die Datei in den Editor und ändern sie ungefähr ab Zeile 278, die etwa so aussieht:
Linux)
  suse=no
  if [ -f /etc/SuSE-release -o -f /sbin/SuSEconfig ] ; then
    suse=yes
  fi
  oslevel_f1=`uname -r | cut -f1 -d"."`
  oslevel_f2=`uname -r | cut -f2 -d"."`
  oslevel_f3=`uname -r | cut -f3 -d"." | cut -f1 -d"-"`
das Skript so, dass Sie unterhalb der Zeile mit oslevel_f3=... sechs neue Zeilen einfügen:
  oslevel_f3=`uname -r | cut -f3 -d"." | cut -f1 -d"-"`
  # fake Linux 3.x.x as 2.6.40
  if [ $oslevel_f1 = 3 ]; then
    oslevel_f1=2
    oslevel_f2=6
    oslevel_f3=40
  fi
ODER ersetzen Sie die passende Datei ..../cp_to_client durch die Datei cp_to_client.nbu71_kernel3patched sinngemäß wie folgt:
wget   http://backup.zedat.fu-berlin.de/cp_to_client.nbu71_kernel3patched
mv   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client.org
mv   cp_to_client.nbu71_kernel3patched   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client
chmod   555   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/cp_to_client
Statt SuSE2.6.16 wählen Sie das für Ihre Distribution passende Verzeichnis aus!

2. Ähnlich gehen Sie für die Datei installpbx im selben Verzeichnis vor: Gehen Sie ungefähr zu Zeile 1919 und ändern Sie die dortigen Zeilen:

Linux)
  OS_RELEASE_MAJOR=`uname -r | cut -d '-' -f 1 | cut -d '.' -f 1`
  OS_RELEASE_MINOR=`uname -r | cut -d '-' -f 1 | cut -d '.' -f 2`
  OS_RELEASE_BUILD=`uname -r | cut -d '-' -f 1 | cut -d '.' -f 3`
derart, dass Sie unterhalb der Zeile mit OS_RELEASE_BUILD... folgende x Zeilen einfügen:
  OS_RELEASE_BUILD=`uname -r | cut -d '-' -f 1 | cut -d '.' -f 3`
  # fake Linux 3.x.x as 2.6.40
  if [ $OS_RELEASE_MAJOR = 3 ]; then
    OS_RELEASE_MAJOR=2
    OS_RELEASE_MINOR=6
    OS_RELEASE_BUILD=40
  fi
ODER ersetzen Sie die passende Datei ..../installpbx durch die Datei installpbx.nbu71_kernel3patched sinngemäß wie folgt (ersetzen Sie auch hier den Namen der passenden Distribution:
wget   http://backup.zedat.fu-berlin.de/installpbx.nbu71_kernel3patched
mv   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/installpbx   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/installpbx.org
mv   installpbx.nbu71_kernel3patched   NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/installpbx
chmod 555 NetBackup_7.1_CLIENTS/NBClients/anb/Clients/usr/openv/netbackup/client/Linux/SuSE2.6.16/installpbx
So einfach ist das. Ein ähnlicher Bugfix wird beim Upgrade von 7.1 auf 7.1.0.x fällig, siehe unten.
Ende des Kernel 3.0.0 Bugfixes.

Starten Sie das Installationsskript mit einer bourne-shell und folgen Sie den Anweisungen. Hier am Beispiel von SLES-11SP1. Unter Mac OS X starten Sie die Installation mit sudo ./NetBackup_7.1_CLIENTS/install. Den vom Installationsskript vorgeschlagenen Rechnernamen Ihres Rechners ersetzen Sie bitte durch den voll qualifizierten Namen, d.h. Name plus Domain:

[root]% cd /tmp/
[root]% sh ./NetBackup_7.1_CLIENTS/install

Symantec Installation Script
Copyright 1993 - 2011 Symantec Corporation, All Rights Reserved.


        Installing NetBackup Client Software

Do you wish to continue? [y,n] (y) y
Do you want to install the NetBackup client software for this client? [y,n] (y) y

This package will install Linux-IA64/SuSE2.6 client.
(bei ubuntu steht hier beispielsweise: "This package will install Linux/Debian2.6 client.")
oder es kommt eine Auswahl:
        OS Level Options
        ----------------
        1. Debian2.6
        2. IBMpSeriesRedHat2.6
        3. IBMpSeriesSuSE2.6
        4. IBMzSeriesRedHat2.6
        5. IBMzSeriesSuSE2.6
        6. RedHat2.6
        7. SuSE2.6.16
        q To quit from this script

        If your Operating System is a newer level than those listed,
        choose the highest level.

	Enter Choice [1 - 7] 7

This package will install NetBackup client 7.1.

Installing PBX...
Please wait while installation is in progress...
Installation completed Successfully
Installation log located here: /var/tmp/installpbx-10279-032012104649.log

Unpacking SYMCnbclt package.
Checking for pre-existing SYMCnbclt package.
Installing SYMCnbclt package.
Installation of SYMCnbclt was successful.
More details regarding SYMCnbclt can be found in file
/tmp/install_cltpkg_trace.10212 on heulsuse.

Terminating NetBackup and/or Media Manager processes.

Installing NB-Java.

Unpacking SYMCnbjava package.
Checking for pre-existing SYMCnbjava package.
Installing SYMCnbjava package.

Enter the name of the NetBackup server : hoovix.zedat.fu-berlin.de

Would you like to use "auricle" as the configured
name of the NetBackup client? [y,n] (y)n

Enter the name of this NetBackup client : blabla.ihr.rechnername.fu-berlin.de
(Hier setzen Sie den Namen Ihres Rechners mit Domain ein ^^^^^^^^^)

Installing PBX...
Please wait while installation is in progress...
Installation completed Successfully
Installation log located here: /var/tmp/installpbx-8703-083111105750.log


Unpacking SYMCnbclt package.
Checking for pre-existing SYMCnbclt package.
Installing SYMCnbclt package.
Installation of SYMCnbclt was successful.
More details regarding SYMCnbclt can be found in file
/tmp/install_cltpkg_trace.8645 on auricle.

Terminating NetBackup and/or Media Manager processes.

Installing NB-Java.

Unpacking SYMCnbjava package.
Checking for pre-existing SYMCnbjava package.
Installing SYMCnbjava package.
Installation of SYMCnbjava was successful.
More details regarding SYMCnbjava can be found in file
/tmp/install_javapkg_trace.9502 on auricle.

Unpacking SYMCnbjre package.
Checking for pre-existing SYMCnbjre package.
Installing SYMCnbjre package.
Installation of SYMCnbjre was successful.
More details regarding SYMCnbjre can be found in file
/tmp/install_jrepkg_trace.9502 on auricle.
+ /bin/cp ./nbj.conf /usr/openv/java


Directory /usr/openv/logs does not exist.
No log files to migrate.

Checking network connections.
bp.conf: IP_ADDRESS_FAMILY = AF_INET: default value, no update needed

No [x]inetd process found.

Running insserv command to enable /etc/init.d/netbackup init script.
(bei ubuntu:
 Removing any system startup links for /etc/init.d/netbackup ...
update-rc.d: warning: netbackup stop runlevel arguments (0 1) do not match LSB Default-Stop values (0 1 6)
 Adding system startup for /etc/init.d/netbackup ...
   /etc/rc0.d/K01netbackup -> ../init.d/netbackup
   /etc/rc1.d/K01netbackup -> ../init.d/netbackup
   /etc/rc2.d/S95netbackup -> ../init.d/netbackup
   /etc/rc3.d/S95netbackup -> ../init.d/netbackup
   /etc/rc5.d/S95netbackup -> ../init.d/netbackup
)

Successfully updated the session cache parameters.
Starting vnetd...
Starting bpcd...
Starting nbftclnt...

Installation of Java LiveUpdate agent succeeded.  Refer to file
/tmp/JLU-Log/JavaLiveUpdate-Install.log on auricle
for installation details.


Checking LiveUpdate registration for the following products: CLT 
This may take a few minutes.

Product CLT is installed and will be registered.

Updating LiveUpdate registration now...this may take some time.

File /usr/openv/tmp/install_trace.4120 contains a trace of this install.

Nun können Sie die tar-Datei und die 7.1-Quellen der Basissoftware wegwerfen:

[root]% cd /tmp
[root]% rm -rf NetBackup_7.1_CLIENTS.tar NetBackup_7.1_CLIENTS/
Während der Installation wurden drei Verzeichnisse /usr/openv/, /opt/VRTSpbx/und etc/vx angelegt, die in weiteren Unterverzeichnissen alle benötigten Dateien enthalten. Außerdem werden in /etc/init.d/ zwei Startskripte netbackup und vxpbx_exchanged -> /opt/VRTSpbx/bin/vxpbx_exchanged abgelegt, die die Backup-Dienste zukünftig beim Rechnerstart als Daemonen starten. Offenbar werden in dieser Softwareversion keine (x)inetd-Konfigurationen mehr angelegt.
Im netbackup-init-Skript werden die zwei Dienste bpcd (Port 13782/tcp) und vnetd (Port 13724/tcp) gestartet. Im vxpbx_exchanged-init-Skript wird der Dienst pbx_exchange (Port 1556/tcp) gestartet.
Auch bei Mac OS X wird die Software beim Booten des Rechners automatisch über ein vom Installer angelegtes StartupItem "netbackup" im Verzeichnis /Library/StartupItems/ gestartet.

Das NetBackup Paket SYMCpddea installiert mir bei openSUSE-12.2 64 bit in /lib64 einen symbolischen Link /lib64/libssh2.so.1 -> /usr/openv/pdde/pdopensource/lib/libssh2.so.1.0.0 den ich löschen musste, damit andere Programme (z.B. zypper) wieder funktionierten: rm /lib64/libssh2.so.1.

Die Man-Pages (als HTML und nroff) und die PDF-Handbücher finden Sie bei http://www.zedat.fu-berlin.de/fab/man/7.1/. Kopieren Sie bei Bedarf die manpages in Ihren bevorzugten Ordner für eigene manpages, beispielsweise /usr/local/man/man1/ und fügen Sie ggf. den Pfad dazu in den Suchpfad für manpages ein:

[root]%  cd /tmp
[root]%  wget http://www.zedat.fu-berlin.de/fab/man/7.1/NetBackup-Man-7.1.tar.gz
[root]%  cd /usr/local/man/man1
[root]%  tar -xvzf /tmp/NetBackup-Man-7.1.tar.gz
[root]%  rm /tmp/NetBackup-Man-7.1.tar.gz
Schritt 4: Upgrade der 7.1 Basissoftware auf den aktuellen Patchlevel 7.1.0.x
Damit die Software stabil und halbwegs sicher läuft, sollte das aktuelle Maintenance-Pack gleich hinterher installiert werden.

Achtung bei Linux Kerneln 3.x.x Auch hier müssen die Dateien cp_to_client und installpbx wie oben bereits erwähnt bei ähnlichen Zeilennummern angepasst werden. Dummerweise sind diese Dateien noch einmal verpackt im Archiv VrtsNB_CLT_7.1.0.x.Linux.tar.gz. Nach dem Auspacken des Archivs NB_CLT_7.1.0.3.tar ersetzen Sie daher bitte die Datei VrtsNB_CLT_7.1.0.3.Linux.tar.gz durch die bereits von uns gepatchte Version VrtsNB_CLT_7.1.0.3.ZEDAT.Linux.tar.gz wie folgt:

wget   http://backup.zedat.fu-berlin.de/VrtsNB_CLT_7.1.0.3.ZEDAT.Linux.tar.gz
mv   VrtsNB_CLT_7.1.0.3.Linux.tar.gz   VrtsNB_CLT_7.1.0.3.Linux.tar.gz.org
mv   VrtsNB_CLT_7.1.0.3.ZEDAT.Linux.tar.gz   VrtsNB_CLT_7.1.0.3.Linux.tar.gz
Die md5 Summe und die Größe des von uns gepatchten Archivs und des Originalarchivs:
7f76cccec9d8a271b2beac8ac75e61d2  VrtsNB_CLT_7.1.0.3.ZEDAT.Linux.tar.gz  1208482153
94d541af2d3a23675c978b7432c89ac6  VrtsNB_CLT_7.1.0.3.Linux.tar.gz.org    1208469644

Ende des Hinweises zu Linux Kerneln 3.x.x.

Sie müssen wieder nur die markierten Worte eingeben:

[root]% cd /tmp
[root]% sh ./NB_update.install

There is 1 pack available in /tmp:
(* denotes installed pack)

        NB_CLT_7.1.0.x
	    
Enter pack name (or q) [q]: NB_CLT_7.1.0.x

Install pack NB_CLT_7.1.0.x Fri Dec 16 15:09:19 CET 2011 Rev. 1.42.24.7
Can not install pack when NetBackup daemons are running.
    Do you want to kill all NetBackup daemons? [y,n] (y) y
Looking for NetBackup processes that need to be terminated.

Looking for more NetBackup processes that need to be terminated.
Stopping bpcd...
Stopping vnetd...
Pack install will continue.
Creating /usr/openv/netbackup/client/Linux/RedHat2.6 
Performing install of Linux/RedHat2.6 client binaries locally.

Running preinstall script.
...
There is 1 pack available in /home:
(* denotes installed pack)

        NB_CLT_7.1.0.x *

Enter pack name (or q) [q]: q

There are stopped daemons.
    
    Do you want to restart all NetBackup daemons? [y,n] (y) y
Starting vnetd...
Starting bpcd...
Starting nbftclnt...
Starting bmrbd...
Exiting NB_update.install
Schritt 5: Entfernen der Installationspakete
Alle Installationspakete können Sie jetzt löschen. Die deinstallierte Software einer früheren Version wird außerdem gepackt nach /usr/openv/pack und belegt dort weit mehr als 100 MB. Die sollten ebenso gelöscht werden. Es verbleiben dann etwa 500 bis 800 MB in /usr/openv:
[root]% cd /tmp
[root]% rm -rf NB_*.tar NetBackup*.tar NB_update.install Vrts*
[root]% rm -rf /usr/openv/pack/ /usr/openv/.phistory
Schritt 6: Überprüfen und Anpassen der Konfiguration, Absichern der Dienste (Firewall)
Das Backup kann nur funktionieren, wenn folgende Bedingungen erfüllt sind:
Prüfen Sie nach der Installation das Vorhandensein und den Inhalt der Konfigurationsdatei /usr/openv/netbackup/bp.conf und gleichen Sie den Inhalt mit einer möglicherweise bereits von einer früheren NetBackup-Installation bestehenden Version dieser Datei ab. Der Name des Backup-Servers muss buchstabengetreu hoovix.zedat.fu-berlin.de lauten und Ihre Rechner muss den Namen in Kleinbuchstaben mit Domain (FQDN) enthalten:
SERVER = hoovix.zedat.fu-berlin.de
CLIENT_NAME = rechnername.mit.domain.in.kleinschreibung
Statt rechnername.mit.domain.in.kleinschreibung setzen Sie hier den Namen Ihres Rechners mit voller Domain in Kleinschreibung ein. Wenn Sie die Angabe der DNS-Domain vergessen und rechnername anstatt rechnername.mit.domain.in.kleinschreibung schreiben, werden Sie zumindest keine Restores machen können.

Wenn vorher bereits eine ältere Version der Software installiert war, ergänzen Sie fehlende Einträge aus der ursprünglichen bp.conf, z.B. die Hinweise auf ein bestimmtes zu benutzendes Netzwerkinterface oder Debug-Parameter.

In der Informationsdatei /etc/services müssen die Dienste bpcd, vnetd, bpjava-msvc und veritas_pbx mit den passenden Ports aufgeführt sein und ggf. ergänzt werden:

[root]% egrep '(bpcd|vnetd|bpjava-msvc)' /etc/services
Ergänzen Sie fehlende Einträge wie folgt: Die Datei /etc/services muss sinngemäß mindestens folgende Einträge enthalten:
#
# ZEDAT NetBackup services
#
bpcd        13782/tcp    # ZEDAT Netbackup client daemon
vnetd       13724/tcp    # ZEDAT Netbackup vnetd
bpjava-msvc 13722/tcp    # ZEDAT Netbackup Java GUI
veritas_pbx  1556/tcp    # VERITAS Private Branch Exchange

Um die Backup-Dienste beim Systemstart zu starten, müssen Sie bei Suse-Linux beispielsweise eingeben

[root@suse]% chkconfig netbackup on
[root@suse]% chkconfig vxpbx_exchanged on
Bei anderen Linux-Distributionen (z.B. ubuntu) reicht dazu die passende Verlinkung der init.d-Skripte in die rcx.3 Verzeichnisse aus, die NetBackup bei der Installation selbst vollzieht:
 Adding system startup for /etc/init.d/netbackup ...
   /etc/rc0.d/K01netbackup -> ../init.d/netbackup
   /etc/rc1.d/K01netbackup -> ../init.d/netbackup
   /etc/rc2.d/S95netbackup -> ../init.d/netbackup
   /etc/rc3.d/S95netbackup -> ../init.d/netbackup
   /etc/rc5.d/S95netbackup -> ../init.d/netbackup
Sie erkennen das Laufen der drei Dienste an den Ausgaben des ps-Befehls:
# ps -lfC bpcd,vnetd,pbx_exchange
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
1 S root      1202     1  0  80   0 - 10522 poll_s 11:06 ?        00:00:00 /opt/VRTSpbx/bin/pbx_exchange
1 S root      1258     1  0  80   0 - 14612 poll_s 11:06 ?        00:00:00 /usr/openv/netbackup/bin/vnetd -standalone
1 S root      1261     1  0  80   0 - 17257 poll_s 11:06 ?        00:00:00 /usr/openv/netbackup/bin/bpcd -standalone
Falls Ihre Installation die Dienste nicht über init.d sondern weiterhin über (x)inetd startet, prüfen Sie die Installation wie in der Anleitung für die Version 6.5 dieser Software.

Mac OS X 10.5.x

Die Aufgaben des (x)inetd wurden ab Version Mac OS X 10.5 vom launchd übernommen. In der Zedat wurde die Installation mit Mac OS X 10.6.8 erfolgreich durchgeführt. Da NetBackup nun keinen (x)inetd mehr verwendet, nutzt NetBackup auch keinen launchd mehr. Die Dienste werden beim Systemstart über das StartupItem "netbackup" gestartet. Im graphischen Konfigurationstool von Mac OS X Server namens Server Admin, kann der Service Firewall gestartet werden. Unter Firewall --> Settings --> Services können dann Ports freigegeben werden. Geben Sie dort bpcd (13782/tcp) und vnetd (13724/tcp) für Zugriffe von Außen frei,

Exclude-Listen

Die Pfade, die von Ihrem Rechner im Backup sind, sind nur auf dem Backup-Server(!) konfiguriert. Dabei werden symbolische Links, Netzwerklaufwerke (nfs, cifs, sshfs, ...) und Mountpoints in Unterverzeichnissen nicht verfolgt. Enthalten die gesicherten Pfade Verzeichnisse oder Dateimuster, die nicht gesichert werden sollen, müssen diese in eine Datei /usr/openv/netbackup/exclude_list aufgenommen werden. Das Upgrade einer Installation lässt diese Datei unangetastet. Diese Datei kann beispielsweise wie folgt aussehen:

*.tmp
*.[mM][pP]3
[cC]ache/*
/tmp/*
Im Regelfall empfehlen und erwarten wir von unseren Kunden die Konfiguration dieser Datei!
Ausführlichere Informationen finden Sie im Handbuch und in unseren FAQs.

Die grafischen Oberflächen xbp und jbpSA

Das alte Motif-GUI aus NetBackup bis Version 4.5 xbp entfällt in NetBackup ab dieser Version 6. Es wird ersetzt durch ein Java-GUI /usr/openv/netbackup/bin/jbpSA, falls das für Ihr Betriebssystem zur Verfügung steht. Das curses-Interface /usr/openv/netbackup/bin/bp und die Kommandozeilenwerkzeuge stehen immer zur Verfügung, auch wenn es wie bei Mac OS X kein Java-GUI gibt.

  Firewall konfigurieren

Auf die nun auf Ihrem Rechner installierten Dienste soll nur der Backup-Server (und der eigene Rechner) zugreifen, sichern Sie Ihre Dienste daher ab. Die Backup-Dienste berücksichtigen keine tcp-wrappers Konfiguration ( /etc/hosts.allow u.s.w) mehr, da sie nicht mehr über den (x)inetd gestartet werden. Jede Distribution hat jedoch zumindest einen Personal Firewall, der die Dienste zuverlässig schützen kann.

Ihren Firewall konfigurieren Sie so, dass ESTABLISHED-Verbindungen immer durchgelassen werden. Außerdem erlauben Sie NUR aus dem Backup-Netz 130.133.8.64/255.255.255.224 (in anderer Schreibweise 130.133.8.64/27 ) Verbindungen auf die Ports der Backup-Dienste (s.o.: 13724, 13782 und 1556).

Bei Suse-Linux 9 bis 11.4 und SLES 9 und 10 mit aktiviertem Firewall "SuSEfirewall2" erweitern Sie in der Datei /etc/sysconfig/SuSEfirewall2 die Liste der Variable FW_SERVICES_EXT_TCP um die vier NetBackup-Dienste vnetd, vopied, bpcd und bpjava-msvc, also beispielsweise:

FW_SERVICES_EXT_TCP="ssh www"
ändern zu
FW_SERVICES_EXT_TCP="ssh www vnetd bpcd veritas_pbx"

Bei openSuSE ab 11.2 und SLES 11 erweitern Sie stattdessen in der Datei /etc/sysconfig/SuSEfirewall2 die Liste der Variable FW_CONFIGURATIONS_EXT um den String netbackup, also beipielsweise
FW_CONFIGURATIONS_EXT="sshd"
ändern zu
FW_CONFIGURATIONS_EXT="sshd netbackup"
und legen eine Datei /etc/sysconfig/SuSEfirewall2.d/services/netbackup an mit dem Inhalt
## Name: netbackup
## Description: Open ports for NetBackup

# space separated list of allowed TCP ports
TCP="bpcd vnetd veritas_pbx"

Dann starten den Firewall neu:
[root]% SuSEfirewall2 restart

Den ufw Firewall bei Ubuntu ab Version 9.04 konfigurieren Sie wie folgt. Hinweise zur Konfiguration finden Sie im Ubuntu-Wiki und in der man page. Legen Sie eine Datei /etc/ufw/applications.d/netbackup-clients.ufw an mit dem Inhalt

[NetBackupClient]
title=ZEDAT NetBackup-Client
description=Firewall Rules for ZEDAT NetBackup-Client 6.x and 7.1
ports=bpcd,vnetd,bpjava-msvc,veritas_pbx/tcp
Die Datei /etc/services muss dazu folgende Zeilen mit enthalten, gegebenenfalls fügen Sie diese Zeilen ein:
veritas_pbx     1556/tcp    # VERITAS Private Branch Exchange
veritas_pbx     1556/udp    # VERITAS Private Branch Exchange                        
bpcd            13782/tcp  # VERITAS NetBackup
bpcd            13782/udp  # VERITAS NetBackup
vnetd           13724/tcp  # Veritas Network Utility
vnetd           13724/udp  # Veritas Network Utility
bpjava-msvc     13722/tcp  # BP Java MSVC Protocol
bpjava-msvc     13722/udp  # BP Java MSVC Protocol
Laden Sie den firewall beim Systemstart, verifizieren Sie die NetBackup-Regeln und stellen Sie sicher, dass diese Liste verstanden wird:
# service ufw start
# ufw enable
# ufw app list
Verfuegbare Anwendungen:
  ...
  NetBackupClient
  ...
# ufw app update NetBackupClient
Regeln fuer Profil 'NetBackupClient' aktualisiert
Neustart der Firewall übersprungen
# ufw app info NetBackupClient
Profil: NetBackupClient
Titel: ZEDAT NetBackup-Client
Beschreibung: Firewall Rules for ZEDAT NetBackup-Client 6.x and 7.1

Ports:
  bpcd,vnetd,bpjava-msvc,veritas_pbx/tcp
Machen Sie die Regeln aktiv und verifizieren dies:
# ufw allow from 130.133.8.64/27 to any app NetBackupClient
Regel hinzugefuegt
# ufw status
Status: active

Zu                         Aktion      Von
--                         ------      ---
...
NetBackupClient            ALLOW       130.133.8.64/27
...
Ihre Regeln sind nun in der Datei /lib/ufw/user.rules gespeichert und werden beim nächsten Systemstart erneut aktiv:
# grep 130.133 /lib/ufw/user.rules
### tuple ### allow tcp 1556,13722,13724,13782 0.0.0.0/0 any 130.133.8.64/27 NetBackupClient - in
-A ufw-user-input -p tcp -m multiport --dports 1556,13722,13724,13782 -s 130.133.8.64/27 -j ACCEPT -m comment --comment 'dapp_NetBackupClient'
Achtung: Bietet Ihr Rechner weitere Dienste an (z.B. ssh, http) und sind keine Regeln dafür hinterlegt, sind diese Dienste nun blockiert. Mit ufw reset setzen Sie alle Regeln auf Auslieferungszustand zurück und mit ufw disable schalten Sie den Firewall komplett aus.

Für ipfilters unter FreeBSD wurde folgende Konfiguration getestet:

oif="xl0"            # name of the outbound interface
myip="xxx.yy.zz.abc"     # my static IP address from ISP
/sbin/ipf -Fa -f - << EOF
...

# Allow out Zedat Netbackup
pass out log first quick on $oif proto tcp from $myip to 130.133.8.64/27 flags S keep state             
pass in log first quick on $oif proto tcp from 130.133.8.64/27 to $myip port = 13782 flags S keep state
pass in log first quick on $oif proto tcp from 130.133.8.64/27 to $myip port = 13724 flags S keep state
pass in log first quick on $oif proto tcp from 130.133.8.64/27 to $myip port = 1556 flags S keep state

EOF

Lassen Sie außerdem bei bpjava-msvc und vnetd Verbindungen von Ihrer eigenen IP-Adresse zu, sonst können Sie sich nicht in das Java-GUI jbpSA einloggen (das es bei Mac OS X, Irix und FreeBSD sowieso nicht gibt)!

Die Uhrzeit auf Ihrem Rechner muss unbedingt richtig gehen, damit das Backup korrekt funktioniert. Richten Sie einen ntp-Dienst ein, der die Uhr regelmäßig mit dem Time-Server time.fu-berlin.de abgleicht oder starten sie stündlich einen cronjob: Für den Cronjob tragen Sie in die crontab von root ("crontab -e") sinngemäß folgende Zeile ein:

13 * * * * /usr/sbin/ntpdate time.fu-berlin.de > /dev/null
um 13 Minuten nach jeder vollen Stunde die Uhrzeit zu justieren.

Holen Sie Dateien mit Zeitstempeln aus der Zukunft in die Gegenwart zurück, damit Sie bei einem Restore die richtigen Versionen zurückerhalten und die Dateien nicht jeden Tag erneut im Backup landen. Solche Dateien kann man z.B. wie in unseren FAQs beschrieben behandeln.

Schritt 7: Gewissenhafte Lektüre der manpages und Handbücher
Die manpages (als HTML und die nroff-Quellen) und die Handbücher im PDF-Format erhalten Sie auf der Doku-Seite http://www.zedat.fu-berlin.de/fab/man/7.1/.
Fertig!
Die Installation ist jetzt vollendet.
Achtung!
Erst nach einer Mitteilung an uns können wir Ihren Backup-Client aktivieren. Ohne diese Mitteilung an uns wird kein Backup angefertigt!

Ergänzende Hinweise

Wie erfahre ich, ob das Backup wirklich funktioniert?

Wenn Sie Ihren Rechner beim Backupservice angemeldet haben, teilen Sie uns zwei E-Mail-Adressen als Ansprechpartner mit. Gelingt ein Backup nicht, wird an diese Adressen am nächsten Morgen automatisch eine Meldung gesendet.

Falls Sie wochenlang auf diese Meldungen nicht reagieren, weil Sie gerade auf Dienstreise in Afrika sind und Ihre Vertretung eine Krise hat, kann Ihr Backup-Client vorläufig aus dem Backupdienst ausgeschlossen werden. In keinem Fall gehen die Daten im Backup vor Ablauf Ihres Haltbarkeitsdatums (bei automatischen Backups in der Regel drei Monate für Full Backups) verloren.

Es gibt die Möglichkeit, unmittelbar nach jedem Backup(-Versuch) eine ausführliche Statusmeldung zugeschickt zu bekommen, siehe hier. Melden Sie sich dazu bei uns.

Sicherheit

Die Mitarbeiter des Backupdienstes müssen aus technischen Gründen gelegentlich Einsicht in die Liste der Dateinamen einzelner Backups nehmen. Der Inhalt der Dateien wird nach kurzer Verweildauer im Platten-Cache des Backup-Servers auf Magnetbänder in die angeschlossene Tape-Library transferiert und muss nie aus technischen Gründen eingesehen werden.

Falls notwendig können alle Dateien zusätzlich verschlüsselt übertragen und gespeichert werden. Das belastet jedoch die CPU des Backup-Clients stark und limitiert die Datenrate, so dass das oft nicht empfehlenswert ist.

ergänzende Hinweise

Für Clients, die die Netbackupsoftware von einem Server mounten, ist zu beachten, daß die Konfigurationsdatei /usr/openv/netbackup/bp.conf für jeden Rechner spezifisch ist.

Folgende Dateien oder Verzeichnisse werden im Regelbetrieb der Software u.U. beschrieben, sollten also nicht auf einem Read-Only Filesystem liegen:

/usr/openv/logs/
/usr/openv/netbackup/logs/
/opt/VRTSpbx/log/
Sie können die bp.conf und die Log-Verzeichnise über symbolische Links beliebig umleiten.

Rechner mit mehreren Netzwerkinterfaces

Sie können die Backup-Software an ein bestimmtes Netzwerkinterface binden. Verwenden Sie dazu in der Konfigurationsdatei bp.conf eine zusätzliche Zeile
REQUIRED_INTERFACE = aaa.bbb.ccc.ddd
wobei Sie aaa.bbb.ccc.ddd durch die IP-Nummer des gewünschten Interfaces ersetzen.

Alias Namen im Nameserver

Falls Ihr Rechner im Nameservice Aliasnamen eingetragen hat, dürfen diese nicht in der Konfigurationsdatei /usr/openv/netbackup/bp.conf auftauchen. Nur der echte Name ist hier gültig. Den echten, voll qualifizierten Namen können Sie beim Nameserver mit dem Kommando nslookup erfragen. Betrachten Sie beispielsweise folgenden Dialog:
% nslookup wurps.zedat.fu-berlin.de
Server:  ns1.fu-berlin.de
Address:  160.45.8.8

Name:    wurps.cis.fu-berlin.de
Address:  160.45.12.166
Aliases:  wurps.zedat.fu-berlin.de
Der Name wurps.zedat.fu-berlin.de ist nur ein alias auf wurps.cis.fu-berlin.de. In der bp.conf muß in diesem Falle also stehen:
SERVER = hoovix.zedat.fu-berlin.de
CLIENT_NAME = wurps.cis.fu-berlin.de

Kopieren der Installation

Wenn Sie weitere Rechner durch Klonen oder Kopieren der Festplatte(npartition) eines Rechners mit bestehender Netbackupinstallation einrichten, müssen Sie die Individualität einiger Dateien sicherstellen: Andernfalls wird das Backup sowohl auf dem alten als auch auf dem neuen Rechner nicht mehr funktionieren. Außerhalb von /usr/openv/ liegen weitere notwendige Dateien in /etc/vx/, in /opt/VRTSpbx/ und im Init-Verzeichnis /etc/init.d/.