Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

NAS-Backups via Batchfiles

Frage Entwicklung Batch & Shell

Mitglied: BlueBones

BlueBones (Level 1) - Jetzt verbinden

10.01.2010, aktualisiert 23:24 Uhr, 2800 Aufrufe

In meiner kleinen Windows-Umgebung mit NT5.1 und NT6.0-Rechnern (also ohne Server) betreibe ich eine kleine NAS.
Hersteller: Synology Disk Station DS 209 mit RAID-1; Kapazität ca. 1,3 TByte; Linux-Basis).
Bekanntlich ist selbst ein RAID-1-Verbund kein wirkliches Backup unersetzbarer Datenbestände.
Daher betreibe ich über einen vorhandenen freien USB-Anschluss eine externe HDD (NTFS, Kap. ca. 930 GByte), auf die ich einmal pro Woche über einen Batch-Job die wichtigsten Verzeichnisse per robocopy wegsichere bzw. synchronisiere.

Hierzu verwende ich zwei verschiedene Batch-Files

Einmal eine (ich lasse die Namen im Originalzustand, dann muss ich Inhalte hier nicht anpassen) Verz_eintragen.bat.
Mit der "echo"e ich einzelne Verzeichnisse in eine GETDIRS.txt. Diese erstelle ich selbstredend nicht jedes Mal neu, ich lasse sie stehen und ergänze sie nur ggf.
Die besagte Verz_eintragen.bat sieht - verkürzt - so aus:

@ECHO OFF
SETLOCAL
SET TRGT=%CD%\Backups
ECHO Definiertes Ziel: %TRGT%

:WORK
TITLE Warte auf Ordner-Definierung...
SET /P ECHODIR=Verzeichnis in Liste eintragen:
IF /I "%ECHODIR%."=="." goto :end
FOR /F "TOKENS=2 DELIMS=:\ " %%a IN ("%ECHODIR%") DO IF NOT EXIST "%TRGT%\%%~na" (MKDIR "%TRGT%\%%~na")
ECHO %ECHODIR%>>GETDIRS.txt
GOTO :WORK

:END
ENDLOCAL
ECHO Das war's!
PAUSE >NUL:


Hier beginnt schon mal mein Dilemma, da beim Schritt (MKDIR "%TRGT%\%%~na") DOS (wie sonst auch) Probleme mit Verzeichnisnamen hat, die Leerzeichen haben.
Nun, wie auch immer. Jedenfalls sorgt folgende GetBackups.bat dafür, die in GETDIRS.txt genannten Verzeichnisse ins Unterverzeichnis \Backups per robocopy zu schaufeln.
Wobei ich klar sagen muss, die Einträge an sich im TXT sind okay. Fehler treten beim folgenden Kontrukt auf:
Hier die GetBackups.bat, die imselben Verzeichnis liegt, wie die txt und die verz_eintragen.bat:

@ECHO off
SETLOCAL
SET TRGT=%CD%\Backups
::Anmerkung für das Forum: Mit %OPT% kann man mit Eingabe OFF angeben, ob man nach Abschluss des Jobs einen Forced Shutdown möchte oder nicht)
SET OPT=%1

IF /I %TRGT%.==. GOTO :ERRTRGT
ECHO Definiertes Ziel: %TRGT%
IF NOT EXIST %CD%\GETDIRS.txt (
ECHO Keine Verzeichnisliste %CD%\GETDIRS.txt gefunden. Abbruch...
GOTO :END
) else (
ECHO Verzeichnisliste gefunden. Weiter geht's...
)
ECHO.
TYPE GETDIRS.txt
ECHO.
goto :work
IF (%OPT%)==(OFF) GOTO :WORK

SET /P ASK4OFF=Eingabe "OFF" l”st nach Synch-Vorgang %COMPUTERNAME% herunter:
IF (%ASK4OFF%)==(OFF) ECHO Achtung: %COMPUTERNAME% wird nach Sync-Vorgang heruntergefahren. Abbruch ist sp„ter m”glich...
IF (%ASK4OFF%) NEQ (OFF) ECHO %COMPUTERNAME% wird nach Sync-Vorgang NICHT heruntergefahren.
ECHO.

:WORK
for /f "tokens=2* delims=:\" %%a in (GETDIRS.txt) do @if not exist "%TRGT%\%%~na" (MD "%TRGT%\%%~na")
for /f " usebackq delims=" %%b in (GETDIRS.txt) do @echo %TIME:~0,8%: Synchronisiere %TRGT%%%~npb & start /wait "Ziel: %TRGT%%%~npb" robocopy.exe "%%b" "%TRGT%%%~npb" /S /E /W:10 /R:15 /ZB
GOTO :END

:ERRTRGT
ECHO Ziel ist unklar. Abbruch...
ENDLOCAL
GOTO :EOF

:END
ECHO.
IF (%ASK4OFF%)==(OFF) GOTO :OUT
ECHO Das war's!
ENDLOCAL
PAUSE >NUL:
GOTO :EOF

:OUT
shutdown.exe -s -f -t 100 -c "Synchronisation abgeschlossen. Fahre %COMPUTERNAME% herunter..."
ENDLOCAL
ECHO Das war's! Tastendruck verhindert lokalen Shutdown...
PAUSE >NUL:
ECHO Lokaler Shutdown wird unterbunden...
shutdown.exe -a
PAUSE >NUL:


Wer von Euch Weisen sieht den Fehler, der dazu führt, dass Verzeinisse mit Leerzeichen trotz der "" nicht sauber erzeugt werden und der Job abbricht?
Danke Euch schon mal für Eure bisherige Geduld beim Durchlesen und für die Mühe Eurer evtl. Antworten im Voraus!
Ähnliche Inhalte
LAN, WAN, Wireless
Wie Backups von einem in in das andere Netzwerk transportieren? (5)

Frage von GemeinerPinguin zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Batchdatei für Aufgabenplanung zum Löschen von Backups (2)

Frage von Winuser zum Thema Batch & Shell ...

SAN, NAS, DAS
Kaufberatung: NAS zur Verwendung mit Bareos Backup (4)

Frage von vip3234 zum Thema SAN, NAS, DAS ...

Backup
Backups - Kontrolle und Dokumentation (16)

Frage von PK5003 zum Thema Backup ...

Neue Wissensbeiträge
Humor (lol)

Wo ist der Fehler auf dem Bild?

(2)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Proxy Server Settings Cloud + EWS (17)

Frage von SomebodyToLove zum Thema Exchange Server ...

Windows Server
PDF Editor für den Einsatz auf Terminal Servern (16)

Frage von kwame501 zum Thema Windows Server ...

Windows Installation
Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen (14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Virtualisierung
Unterschied zwischen VDI und Terminal Server Lösungen (12)

Frage von tukawi06 zum Thema Virtualisierung ...