Für die automatische Datensicherung auf einen Streamer habe ich einen Windows-Befehlsscript geschrieben, bei dem die Medienbezeichnung egal ist und immer eine Datensicherung gemacht wird, egal welches Band eingelegt ist. Was passiert, wenn das Band voll ist, weis ich nicht.
@rem Automatische Datensicherung
@rem ===========================
@rem *************************************************************************************
@rem Nachfolgende set-Befehle sind anzupassen:
@rem Die Datei mit den Namen der zu sichernden Ordner und Dateien:
@rem =============================================================
@set Source="@D:\Backups\BackupOnTape.Dateien.bks"
@rem Name des Laufwerkes, das verwendet werden soll:
@rem ===============================================
@rem Der Name ist den Ressourcen des Microsoft Windows Wechselmediendienstes zu entnehmen.
@set RessourceName="SEAGATE DAT 06240-XXX SCSI Sequential Device"
@rem *************************************************************************************
@rem Ueberschrift
@rem ============
@echo.Datensicherung auf Bandkassette
@echo.===============================
@echo.
@echo.Sicherungsdatei:%Source%
@echo.
@echo.Laufwerk:%RessourceName%
@echo.
@echo.-----------------------------------------------------
@rem Den Zustand des Laufwerks feststellen
@rem =====================================
@rsm refresh /lf%RessourceName%
@rem Warten, bis der Zustand des Laufwerks festgestellt ist
@rem ======================================================
@sleep 15
@rem Die GUID des Laufwerks ermitteln
@rem ================================
@set RessourceGuid=
@for /f "delims= tokens=1,2" %%i in ('rsm view /tlibrary /guiddisplay') do @if "%%i"==%RessourceName% @set RessourceGuid=%%j
@rem Hinter delims= steht ein Tabulatorzeichen (in vielen Editoren nicht sichtbar) und ein Leerzeichen!
@rem Pruefen, ob die GUID gefunden wurde
@rem ===================================
@if defined RessourceGuid goto A
@rem Fehler: Keine GUID gefunden!
@rem ============================
@echo Fehler: Keine GUID fuer das Laufwerk gefunden!
@goto Z
@:A
@rem Die Bezeichnung des Mediums im Laufwerk ermitteln
@rem =================================================
@set Medium=
@for /f "delims=" %%i in ('rsm view /tphysical_media /cg%RessourceGuid% /b') do @set Medium=%%i
@rem Pruefen, ob sich ein Medium im Laufwerk befindet
@rem ================================================
@if defined Medium goto B
@rem Das Laufwerk ist leer!
@rem ======================
@echo.
@echo.Das Laufwerk ist leer!
@goto Z
@:B
@rem Das Laufwerk enthaelt ein Medium!
@rem =================================
@echo.
@echo.Im Laufwerk steckt das Medium: %Medium%
@rem Die eigentliche Datensicherung
@rem ==============================
@echo.
@echo.Datensicherung
@ntbackup backup %Source% /P "4mm DDS" /V:yes /R:no /L:s /M normal /RS:no /HC:on /UM
@rem Parameter:
@rem /P "..." = Pool aus dem das Medium genommen werden soll
@rem /V:yes = Daten nach Abschluß der Sicherung überpruefen
@rem /R:no = Dieses Band darf von jedem verwendet werden
@rem /L:s = Zusammenfassendes Protokoll
@rem /M normal = Es werden alle Dateien gesichert und als gesichert markiert
@rem /RS:no = Keine Sicherung der Datenbank der Wechselmedien
@rem /HC:on = Hardwarekomprimierung ein
@rem /UM = Das erste verfuegbare Medium suchen und verwenden
@rem Die Bezeichnung des Mediums im Laufwerk ermitteln
@rem =================================================
@set Medium=
@for /f "delims=" %%i in ('rsm view /tphysical_media /cg%RessourceGuid% /b') do @set Medium=%%i
@echo.
@echo.Das Medium wurde umbenannt in: '%Medium%'
@rem Das Medium auswerfen
@rem ====================
@rsm eject /pf"%Medium%" /astart
@rem Das Backupprotokoll ausgeben
@rem ============================
@set V=%USERPROFILE%\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data
@set Logfile=
@for /f "delims=" %%i in ('dir "%V%\Backup??.log" /o:d /t:w /b') do @set Logfile=%%i
@echo.
@echo.Protokoll des Sicherungsvorgangs
@echo.================================
@type "%V%\%Logfile%"
@:Z
@rem In diesem Script gesetzte Umgebungsvariablen wieder loeschen:
@rem =============================================================
@set RessourceName=
@set RessourceGuid=
@set Source=
@set Medium=
@set Logfile=
@set i=
@set j=
@echo.