tsm_services_install

@echo off
setlocal
color 2F
title Installation der ISP-Dienste

rem Version vom 27.05.2013
rem Aenderung am 11.09.2014: evtl. Start des TSM-Client-Akzeptors
rem Aenderung am 14.06.2017: Namensaenderung TSM -> ISP

set tsm_nodename=


rem Registry-Pfad
rem -------------
set reg_path="HKEY_LOCAL_MACHINE\SOFTWARE\IBM\ADSM\CurrentVersion\BackupClient"

rem ISP-Optionsdatei
rem ----------------
set dsm_opt=dsm.opt

rem ISP-Dienstenamen
rem ----------------
set scheduler_name=TSM-Backup-Scheduler
set cad_name=TSM-Client-Acceptor

rem Ausgabe-Texte
rem -------------
set text_weiter=*** Zur Fortfuehrung druecken Sie die Return-Taste ...
set text_fehler=*** Zum Beenden druecken Sie eine beliebige Taste ...
set text_passwd_fehler=*** Evtl. Fehlermeldungen beginnend mit "Error 2 ... password ..." koennen Sie ignorieren.


echo.
echo ================================
echo = Installation der ISP-Dienste =
echo ================================
echo.
echo Die Installation erfolgt in vier Schritten.

echo.
echo 1. Schritt: Wechseln in das ISP Programmverzeichnis
echo ---------------------------------------------------
echo.
rem set /p dummy=%text_weiter%


rem Wie lautet der ISP-Pfad?
rem ------------------------
for /f "tokens=3,4*" %%A in ('%systemroot%\system32\reg query %reg_path% ^| find /i "REG_SZ" ^| find /i "Path"') do set tsm_path="%%A %%B %%C"
if [%tsm_path%] NEQ [] goto TSMPATH
echo.
echo In der Registry wurde kein Eintrag fuer den ISP-Pfad gefunden.
echo Wurde ISP ueberhaupt installiert?
goto EXIT

:TSMPATH
if exist %tsm_path% goto DSMOPT
echo.
echo Das ISP-Programmverzeichnis "%tsm_path%" 
echo wurde nicht gefunden.
echo Moeglicherweise ein falscher Eintrag in der Registry.
echo.
echo Bitte kontaktieren Sie das Backup-Team des SCC.
goto EXIT

:DSMOPT
echo.
echo Das ISP-Programmverzeichnis "%tsm_path%" existiert.
cd /d %tsm_path%

if exist %dsm_opt% goto NODENAME
echo.
echo Die ISP-Optionsdatei "%dsm_opt%" wurde nicht gefunden.
echo Kopieren Sie die Optionsdatei zuerst in das Verzeichnis
echo %tsm_path%
echo oder korrigieren Sie ggfls. in dieser Batch-Datei den Wert
echo der Variablen "dsm_opt".
goto EXIT

:NODENAME
echo Die ISP-Optionsdatei "%dsm_opt%" existiert.
rem ISP-Nodename feststellen
rem ------------------------
for /f "tokens=2 eol=*" %%A in ('type %dsm_opt% ^| find /i "nodename"') do set tsm_nodename=%%A
if [%tsm_nodename%] neq [] goto PASSWORDACCESS
echo.
echo Die ISP-Optionsdatei "%dsm_opt%" enthaelt keine
echo Option "nodename".
echo Korrigieren Sie die ISP-Optionsdatei "%dsm_opt%".
goto EXIT

:PASSWORDACCESS
rem Wert der Option "passwordaccess" feststellen
rem --------------------------------------------
for /f "tokens=2 eol=*" %%A in ('type %dsm_opt% ^| find /i "passwordaccess"') do set tsm_passwordaccess=%%A
if /i [%tsm_passwordaccess%] neq ["generate"] goto INSTALL
echo.
echo Die ISP-Optionsdatei "%dsm_opt%" enthaelt fuer die
echo Option "passwordaccess" einen falschen Wert (%tsm_passwordaccess%).
echo Der Wert der Option "passwordaccess" muss 'generate' sein.
echo Korrigieren Sie die ISP-Optionsdatei "%dsm_opt%".
goto EXIT

:INSTALL
echo Die ISP-Optionsdatei "%dsm_opt%" enthaelt die Option "nodename".
echo Der ISP-Nodename lautet "%tsm_nodename%".
echo.
set /p dummy=%text_weiter%

echo.
echo 2. Schritt: Dienst "ISP Backup Scheduler" installieren
echo ------------------------------------------------------
echo.
rem set /p dummy=%text_weiter%

dsmcutil install /name:%scheduler_name% /node:%tsm_nodename% /autostart:NO /startnow:NO /password:tsm-passwort

echo.
echo.
echo %text_passwd_fehler%
echo.
set /p dummy=%text_weiter%

echo.
echo 3. Schritt: Dienst "ISP Client Acceptor" installieren
echo -----------------------------------------------------
echo.
rem set /p dummy=%text_weiter%

dsmcutil install CAD /name:%cad_name% /node:%tsm_nodename% /cadschedname:%scheduler_name% /autostart:YES /startnow:YES /password:tsm-passwort

echo.
echo.
echo %text_passwd_fehler%
echo.
set /p dummy=%text_weiter%

echo.
echo 4. Schritt: Pruefung, ob Dienst "ISP Client Acceptor" gestartet
echo ---------------------------------------------------------------
echo.
rem set /p dummy=%text_weiter%

for /f "tokens=4" %%A in ('dsmcutil query /name:%cad_name%' ^| find /i "current status"') do set cad_status=%%A

if /i "%cad_status%" == "Started" (
echo Dienst "%cad_name%" bereits gestartet
echo.
echo.
set /p dummy=%text_weiter%
goto LISTE
)
dsmcutil start /name:%cad_name%
echo.
echo.
set /p dummy=%text_weiter%

:LISTE
echo.
echo 5. Schritt: Liste der installierten ISP-Dienste
echo -----------------------------------------------
echo.
rem set /p dummy=%text_weiter%

dsmcutil list


:EXIT
echo.
set /p dummy=%text_fehler%
endlocal
exit