Bei der :
Susan
Bulloch hat einen Vortrag zum
Thema "Server Maintenance Toolkit" gehalten: Wie hält
man seine Domino-Server am Laufen, wie kann man die notwendigen Wartungsjobs
automatisieren und wie kann man Fehler möglichst vermeiden, bevor sie überhaupt
auftreten.
Innerhalb des Vortrags ist eine Frage
aufgekommen:
Können Programm-Dokumente Windows-Batch-Dateien
starten?
Meine Antwort ist: "Ja, sie können
das." Aber nicht direkt.
Der Trick dabei ist es,CMD.exe mit dem
Parameter /c gefolgt vom kompletten Dateinamen inklusive Pfad der Batch-Datei
(.bat oder .cmd-Datei) aufzurufen. Wenn der Dateiname oder -pfad Leerzeichen
enthält, muss in ein doppelten Anführungsstrichen stehen.
Beispiel eines Programm-Dokuments:
Auf diese Weise kann man sogar den Domino-Dienst
stoppen, etwas tun (z. B. Domino-Tasks ausführen oder Dateien kopieren),
während der Server heruntergefahren ist, und dann den Domino-Server neu
starten.
Beispiel für eine Batch-Datei:
@ECHO OFF
REM variable parts; to be adapted for each installation
SET DOMINO_SERVICE=Lotus Domino Server (notesdomino6)
SET DOMINO_PROGS=C:\Programme\Domino6
SET DOMINO_DATA=D:\Notes\Domino6
SET BATCH_FILE_LOG=%DOMINO_DATA%\weekly-maintenance.log
REM log settings
ECHO Weekly maintenance started >>"%BATCH_FILE_LOG%"
date /t >>"%BATCH_FILE_LOG%"
time /t >>"%BATCH_FILE_LOG%"
ECHO DOMINO_SERVICE: %DOMINO_SERVICE% >>"%BATCH_FILE_LOG%"
ECHO DOMINO_PROGS: %DOMINO_PROGS% >>"%BATCH_FILE_LOG%"
ECHO DOMINO_DATA: %DOMINO_DATA% >>"%BATCH_FILE_LOG%"
ECHO. >>"%BATCH_FILE_LOG%"
ECHO Stopping Domino service >>"%BATCH_FILE_LOG%"
net stop "%DOMINO_SERVICE%" >>"%BATCH_FILE_LOG%"
ECHO Compacting system databases >>"%BATCH_FILE_LOG%"
"%DOMINO_PROGS%\ncompact" -c -i names.nsf
>>"%BATCH_FILE_LOG%"
"%DOMINO_PROGS%\ncompact" -c -i admin4.nsf
>>"%BATCH_FILE_LOG%"
"%DOMINO_PROGS%\ncompact" -c -i events4.nsf
>>"%BATCH_FILE_LOG%"
REM Domino 7+ only
REM "%DOMINO_PROGS%\ncompact" -c -i ddm.nsf
>>"%BATCH_FILE_LOG%"
ECHO Refreshing view in Domino Directory >>"%BATCH_FILE_LOG%"
"%DOMINO_PROGS%\nupdall" -R names.nsf >>"%BATCH_FILE_LOG%"
ECHO Save log database (4 generations) >>"%BATCH_FILE_LOG%"
DEL "%DOMINO_DATA%\log.nsf.4" >>"%BATCH_FILE_LOG%"
REN "%DOMINO_DATA%\log.nsf.3" "%DOMINO_DATA%\log.nsf.4"
>>"%BATCH_FILE_LOG%"
REN "%DOMINO_DATA%\log.nsf.2" "%DOMINO_DATA%\log.nsf.3"
>>"%BATCH_FILE_LOG%"
REN "%DOMINO_DATA%\log.nsf.1" "%DOMINO_DATA%\log.nsf.2"
>>"%BATCH_FILE_LOG%"
REN "%DOMINO_DATA%\log.nsf" "%DOMINO_DATA%\log.nsf.1"
>>"%BATCH_FILE_LOG%"
ECHO Restarting Domino service >>"%BATCH_FILE_LOG%"
net start "%DOMINO_SERVICE%" >>"%BATCH_FILE_LOG%"
ECHO. >>"%BATCH_FILE_LOG%"
ECHO Weekly maintenance completed >>"%BATCH_FILE_LOG%"
date /t >>"%BATCH_FILE_LOG%"
time /t >>"%BATCH_FILE_LOG%"
ECHO. >>"%BATCH_FILE_LOG%"