Advertisement
Guest User

Fullbackupscript

a guest
Sep 23rd, 2014
348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.95 KB | None | 0 0
  1. @echo off
  2.  
  3. rem ****** Cleaning up (empty the trash, reconnect the net-folder and delete old logs) ******
  4. echo Cleaning up (empty the trash, reconnect the net-folder and delete old logs)
  5. echo.
  6. del /F /S /Q C:\$RECYCLE.BIN
  7. rem net use /delete /yes O:
  8. net use O: \\nas\backup /USER:backup /persistent:NO
  9. rmdir /S /Q O:\pc-juli\daten\logs
  10. mkdir O:\PC-Juli\Daten\logs\
  11. echo "empty" > O:\pc-juli\daten\logs\fulllog.txt
  12.  
  13. rem ****** Move old backups into old directory ******
  14. color 0E
  15. echo Move old backups into old directory
  16. echo.
  17. mkdir \\nas\backup\pc-juli\daten\old
  18. for /F %%a in ('dir O:\pc-juli\daten\full_* /ad /b') do move O:\pc-juli\daten\%%a O:\pc-juli\daten\old\%%a
  19. for /F %%a in ('dir O:\pc-juli\daten\incremental_* /ad /b') do move O:\pc-juli\daten\%%a O:\pc-juli\daten\old\%%a
  20.  
  21.  
  22. rem ****** Set variable for foldernames ******
  23. color 07
  24. echo Set variable for foldernames
  25. echo.
  26.  
  27. set CURRENTTIME=%TIME::=.%
  28.  
  29. set ARCHIVNAME=%DATE%
  30.  
  31. rem ****** Create sub-directories for backup-files ******
  32. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\Fotos
  33. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\Timelapse
  34. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\Video
  35. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\gopro
  36. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\"Lokale_Musik"
  37. mkdir O:\PC-Juli\Daten\full_%ARCHIVNAME%\Handybackup
  38.  
  39.  
  40.  
  41. rem ****** initialize error-variables ******
  42.  
  43. set seriousfail=0
  44. set fail=0
  45. set success=0
  46. set nodata=0
  47.  
  48. rem ********************************* ROBOCOPY PERFORMS BACKUP *********************************
  49. color 06
  50. echo Creating new backup
  51. echo.
  52. robocopy K:\Fotos\ O:\pc-juli\daten\full_%ARCHIVNAME%\Fotos /E /B /Z /UNILOG:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  53. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  54. IF ERRORLEVEL 8 set /a fail=%fail%+1
  55. IF ERRORLEVEL 1 set /a success=%success%+1
  56. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  57.  
  58.  
  59.  
  60. robocopy K:\Timelapse\ O:\pc-juli\daten\full_%ARCHIVNAME%\Timelapse /E /B /Z /UNILOG+:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  61. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  62. IF ERRORLEVEL 8 set /a fail=%fail%+1
  63. IF ERRORLEVEL 1 set /a success=%success%+1
  64. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  65. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  66.  
  67.  
  68.  
  69. robocopy K:\Video\ O:\pc-juli\daten\full_%ARCHIVNAME%\Video /E /B /Z /UNILOG+:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  70. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  71. IF ERRORLEVEL 8 set /a fail=%fail%+1
  72. IF ERRORLEVEL 1 set /a success=%success%+1
  73. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  74.  
  75.  
  76.  
  77. robocopy K:\gopro\ O:\pc-juli\daten\full_%ARCHIVNAME%\gopro /E /B /Z /UNILOG+:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  78. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  79. IF ERRORLEVEL 8 set /a fail=%fail%+1
  80. IF ERRORLEVEL 1 set /a success=%success%+1
  81. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  82.  
  83.  
  84.  
  85. robocopy K:\Lokale_Musik\ O:\pc-juli\daten\full_%ARCHIVNAME%\Lokale_Musik /E /B /Z /UNILOG+:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  86. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  87. IF ERRORLEVEL 8 set /a fail=%fail%+1
  88. IF ERRORLEVEL 1 set /a success=%success%+1
  89. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  90.  
  91.  
  92.  
  93. robocopy K:\Handybackup\ O:\pc-juli\daten\full_%ARCHIVNAME%\Handybackup /E /B /Z /UNILOG+:O:\PC-Juli\Daten\logs\fulllog.txt /NP /TEE /R:2 /W:10 /V /NDL /NFL
  94. IF ERRORLEVEL 16 set /a seriousfail=%seriousfail%+1
  95. IF ERRORLEVEL 8 set /a fail=%fail%+1
  96. IF ERRORLEVEL 1 set /a success=%success%+1
  97. IF ERRORLEVEL 0 set /a nodata=%nodata%+1
  98.  
  99.  
  100.  
  101.  
  102. rem ********************************* ROBOCOPY FINISH *********************************
  103.  
  104. rem ****** Errorhandling and Pushnotification
  105. set /a successdata=%success%+%nodata%
  106.  
  107. IF %seriousfail%==6 goto seriousfail
  108. IF %seriousfail% GEQ 1 goto fail
  109. IF %fail%==6 goto seriousfail
  110. IF %fail% GEQ 1 goto fail
  111. IF %success%==6 goto success
  112. IF %nodata% == 6 goto nodata
  113. IF %successdata% GEQ 6 goto success
  114. IF %success% GEQ 1 goto mismatched
  115.  
  116.  
  117. :seriousfail
  118. color 0C
  119. echo Backup completely failed
  120. echo.
  121. c:\curl\curl.exe -s \ -F "token=PUSHOVERTOKEN" \ -F "title=PC-Juli: NO DATA HAS BEEN SAVED" \ -F "user=PUSHOVERUSER" \ -F "message=Fullbackup failed an no files have been backed up" \ -F "priority=1" \ https://api.pushover.net/1/messages.json --insecure
  122. powershell.exe C:\Backup_pc_juli\mails\fullfail.ps1
  123. goto end
  124.  
  125. :fail
  126. color 04
  127. echo Backup partially failed. Check logfiles
  128. echo.
  129. c:\curl\curl.exe -s \ -F "token=PUSHOVERTOKEN" \ -F "title=PC-Juli: Fullbackup partially failed" \ -F "user=PUSHOVERUSER" \ -F "message=Some files caused trouble" \ -F "priority=0" \ https://api.pushover.net/1/messages.json --insecure
  130. powershell.exe C:\Backup_pc_juli\mails\fullteil.ps1
  131. goto end
  132.  
  133. :mismatched
  134. color 0D
  135. echo Backup partially failed. Probably nothing serious
  136. echo.
  137. c:\curl\curl.exe -s \ -F "token=PUSHOVERTOKEN" \ -F "title=PC-Juli: Fullbackup partially failed" \ -F "user=PUSHOVERUSER" \ -F "message=Probably nothing serious" \ -F "priority=0" \ https://api.pushover.net/1/messages.json --insecure
  138. powershell.exe C:\Backup_pc_juli\mails\fullteil.ps1
  139. goto end
  140.  
  141. :success
  142. color 0A
  143. echo Backup successful
  144. echo.
  145. c:\curl\curl.exe -s \ -F "token=PUSHOVERTOKEN" \ -F "title=PC-Juli: Backup successful" \ -F "user=PUSHOVERUSER" \ -F "message=Backup finished successfully" \ -F "priority=-1" \ https://api.pushover.net/1/messages.json --insecure
  146. powershell.exe C:\Backup_pc_juli\mails\fullerfolgreich.ps1
  147.  
  148. rem ****** Delete old-directory after successful backup ******
  149. color 0E
  150. echo Delete old-directory after successful backup
  151. echo.
  152. rmdir /S /Q O:\pc-juli\daten\old
  153.  
  154.  
  155. :end
  156. rem ****** Pause to give the user time to read the notification on the screen *****
  157. ping 127.0.0.1 -n 5 > NUL
  158.  
  159. rem ****** delete the files to determine if fullbackup or incrementalbackup ******
  160. del /F /S /Q O:\PC-Juli\daten\four_times
  161.  
  162. IF NOT EXIST mkdir O:\PC-Juli\daten\four_times
  163.  
  164. net use /delete /yes O:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement