Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Robocopy Eine Quelle - Mehrere Festplatten

Frage Microsoft Windows Server

Mitglied: user002

user002 (Level 1) - Jetzt verbinden

04.09.2012 um 10:26 Uhr, 4294 Aufrufe, 11 Kommentare

Hey,

ich versuche gerade mit Robocopy ein Backup durchzuführen.

Ich habe ein RAID-System mit 5 TB Speicherplatz. Von diesem RAID-System soll Robocopy ein Backup auf 6 (einzelne) 1 TB Festplatten durchführen.

Ist das möglich? Wenn ja, wie kann man das umsetzen?

Oder was gibt es für andere Möglichkeiten?

Danke.

LG
user002

Mitglied: DerWoWusste
04.09.2012 um 10:56 Uhr
Moin.

Man sollte nicht versuchen, auf 6 Ziele gleichzeitig zu kopieren, dass geht stark zu lasten der Performance. Mach 6 Mal nacheinander robocopy.
Bitte warten ..
Mitglied: pieh-ejdsch
04.09.2012, aktualisiert um 11:12 Uhr
moin DWW,

er will doch das gesmte Backup auf die 5...6 1-TB Platten aufteilen.

geht eh nur mit einer Liste oder DB.

Gruß Phil
Bitte warten ..
Mitglied: user002
04.09.2012 um 11:20 Uhr
Danke für die Antworten.

@phil

Wie genau meinst du das mit der Liste / DB?


Bis jetzt hatte ich immer das Problem, wenn die HDD voll war und ich eine neue eingebunden habe, wollte Robocopy mit dem Backup nicht fortfahren, weil Robocopy den Ordner nicht mehr finden kann.
Bitte warten ..
Mitglied: AndreasHoster
04.09.2012 um 11:23 Uhr
Wie genau meinst du das mit der Liste / DB?

Er meint, daß Du Robocopy eine Liste von Dateien geben musst, die weniger als 1 TB groß ist.
Danach die Platte wechseln.
Nächster Robocopy Lauf mit der nächsten Liste.
Robocopy sieht nicht vor, daß man Wechsellaufwerke wechselt in einem Copy Job.
Bitte warten ..
Mitglied: user002
04.09.2012 um 12:24 Uhr
ok. Danke. Und wie kann man diese Liste erstellen?
Bitte warten ..
Mitglied: DrAlcome
04.09.2012 um 14:33 Uhr
Wie sieht denn deine Ordner-Struktur im Quellverzeichnis aus?

Am einfachsten wäre ggfs. wenn du für jede Platte einen eigenen Robocopy-Job erstellst.
Sowas wie
Erster Job: "Ordner 1-5", dann Platte wechseln
Zweiter Job: "Ordner 6-10", dann Platte wechseln
...usw.

Geht natürlich nur wenn deine Ordner-Struktur in der Quelle sowas zulässt.
Vielleicht geht's auch noch eleganter, aber so würde ich es jetzt auf die Schnelle machen.
Bitte warten ..
Mitglied: user002
04.09.2012 um 15:40 Uhr
Hey DrAlcome, danke für die Antwort.


In dem Quellordner sind mehrere Ordner und Dateien drin, die gesichert werden müssten. Die Größe ändert sich auch ständig.

Vielleicht gibt es ja auch ein freeware Backupprogramm, wo man das mit den mehreren Festplatten machen könnte.

LG
Bitte warten ..
Mitglied: pieh-ejdsch
11.09.2012, aktualisiert 12.09.2012
moin,

Das mit dem mehreren Zielen ist kein Problem. Mit dem Zurücksichern wirds eventuell etwas kniffliger.
Da müssten dann 0-byte dateien erstellt werden. Dann ist aber der Ordner-Vorhanden-Check nicht mehr durchführbar.
Hier ist erstmal ein Funktionierendes Script zum Backup auf mehrere Ziele:
Ein Delta ist auch möglich.
01.
@echo off 
02.
setlocal 
03.
 
04.
if "%~1" neq "/?" goto :nohelp 
05.
echo Erstellt ein Backup oder Restore nach: 
06.
for /f "delims=: " %%i in ('findstr /brc:":Ziel[0-9]* *" "%~f0"' ) do (call :%%i 
07.
  call echo   %%i: 	%%Ziel%% 
08.
  call echo    SNr: 	%%VolSerial%% 
09.
10.
exit /b 
11.
 
12.
:nohelp 
13.
if "%~1" neq "/A" echo Bitte erst Die Pfade fuers Backup im Batch anpassen.^ 
14.
 &echo Anschliessend "%~n0" mit Option /A starten.&exit /b 1 
15.
 rem Robocopy auf mehrere Ziele aufteilen 
16.
 rem Quelle und Dateien fuer Robocopy Festlegen 
17.
set     "Quelle=D:\Musik" 
18.
set    "Dateien=*.*" 
19.
set   "Copytemp=%~dpn0Copytemp.lst" 
20.
set  "Vergleich=%~dpn0RC-V.txt" 
21.
set "NVergleich=%~dpn0RC-Neu-V.txt" 
22.
set        "Log=%~dpn0RC-log.log" 
23.
set      "InLog=%~dpn0RC-Inlog.log" 
24.
 rem Platz fuer Zuwachs in Ordnern. Rest im Speicherort beim ersten Backup lassen. in bytes 
25.
 rem  500 MB =   536.870.912 
26.
 rem    1 GB = 1.073.741.824 
27.
 rem    5 GB = 5.368.709.120 
28.
set "Schwelle=5368709120" 
29.
 
30.
 
31.
goto :Liste 
32.
 rem Ziele und Volumebezeichner oder Volumeserial von den Split angeben  
33.
:Ziel1 
34.
 rem 1.Ziel 
35.
set      "Ziel=K:\Backup1" 
36.
 rem Seriennummer oder Volumebezeichnung 
37.
set "VolSerial=38A1-28B2" 
38.
exit /b 
39.
 
40.
:Ziel2 
41.
 rem 2.Ziel 
42.
set      "Ziel=L:\Test" 
43.
set "VolSerial=68BD-C870" 
44.
exit /b 
45.
 
46.
:Ziel3 
47.
 rem 3.Ziel 
48.
set      "Ziel=\Backup3" 
49.
set "Volserial=F44B-A167" 
50.
exit /b 
51.
 
52.
:Ziel4 
53.
 rem 4.Ziel 
54.
set       "Ziel=\Anderes Zeug\Backup4" 
55.
set "Volserial=E435-6A7C" 
56.
exit /b 
57.
 
58.
:Ziel5 
59.
 rem 5.Ziel 
60.
set      "Ziel=\\fritz.box\Generic-FlashDisk-01\Backup5" 
61.
set "Volserial=Generic-FlashDisk-01" 
62.
exit /b 
63.
 
64.
:Netzwerk 
65.
 rem RC-Einstellungen fuers Netzwerk 
66.
set "RCopt=/COPY:DT" 
67.
exit /b 
68.
 
69.
:Lokal 
70.
 rem RC-Einstellungen Lokal 
71.
set "RCopt=" 
72.
exit /b 
73.
 
74.
 rem Ende Einstellungen 
75.
 
76.
:Liste 
77.
 
78.
 if defined TEST echo on 
79.
set "Letzte=" 
80.
set "Lang=" 
81.
type nul >>"%NVergleich%" 
82.
2>nul (for /f "usebackqtokens=1,4*" %%i in ("%~dpn0-Backupset.ini") do ( 
83.
  set /a Ziel#=%%~i 
84.
  if %%i equ bei set "Letzte=%%k" &set "Lang=%%k" 
85.
)) 
86.
for /f %%i in ('findstr /brc:":Ziel[0-9]* *" "%~f0" ^|find /c /v "" ' ) do set /a MaxZiel=%%i , MaxFile=2*%%i 
87.
set /a "MaxFile=2*Maxziel 
88.
if not defined Ziel# set /a Ziel#=1 
89.
set "token=" 
90.
set "in=%quelle%" 
91.
:tok 
92.
set /a Token+=1 
93.
for /f "tokens=2*delims=\" %%a in ("%in%" ) do set "In=%%~a" &goto :tok 
94.
call :Backupset 
95.
 rem CopyListe erstellen 
96.
  set "QPfad=%Quelle%\" 
97.
  set "ZPfad=\" 
98.
  set "Daten=%Dateien%" 
99.
set "skip=" 
100.
if not defined Letzte (setlocal enabledelayedexpansion &call :BackupSplit1 /LOG:"%Copytemp%" ">nul" /nc /xx /e /L  
101.
  ) else for /f "delims=[]" %%i in ('cmd /von /c "find /n "!Letzte!" < "!Copytemp!" "') do if not defined Skip set /a skip=%%i-1 
102.
if defined skip set "Skip=skip=%skip%" &echo Setze Fort ...&echo( 
103.
for /f "%skip% usebackq tokens=*" %%c in ("%Copytemp%" ) do for /f "tokens=%token%* delims=\" %%a in ("%%~dpc" ) do (set "Lang=\%%~b%%~nxc" 
104.
  set "QPfad=%%~dpc" 
105.
  set "ZLPfad=\%%~b" 
106.
  set "Daten=%%~nxc" 
107.
  setlocal enabledelayedexpansion 
108.
  for /f "tokens=1-3 delims=?" %%a in ("!QPfad:%%=%%%%!?!ZLPfad:%%=%%%%!?!Daten:%%=%%%%!") do ( 
109.
    endlocal 
110.
    set "QPfad=%%a" 
111.
    set "ZPfad=%%b" 
112.
    set "Daten=%%c" 
113.
    call :Backupsplit /log+:"%log%" ">nul" 
114.
115.
  set "OF=\%%~b" 
116.
117.
rem Fertig 
118.
del "%~dpn0-Backupset.ini" 
119.
echo Backup fertig. 
120.
pause 
121.
exit /b 
122.
 
123.
 
124.
:Backupsplit 
125.
setlocal enabledelayedexpansion 
126.
 rem Passt der Ornder noch drauf 
127.
:: echo !QPfad!!Daten! 
128.
if !OF! equ !ZLPfad! goto :Backupsplit1 
129.
set "VG#=" 
130.
 rem VGinL Schwellwertschalter 
131.
set "VGinL=1" 
132.
for /f "tokens=2delims=?" %%i in ('^( find "?!QPfad!?" ^<"%NVergleich%" ^) 2^>nul ') do set "VGinL=" &if %%i neq %Ziel#% endlocal &set "VG#=1" &set "nach=" &set /a Ziel#=%%i &goto :Setweiter 
133.
for /f "tokens=1-3*" %%i in ('robocopy "!QPfad:~0,-1!" "!nach!!ZPfad:~0,-1!" "!Dateien!"  /L /bytes /FP /NP' ) do @if %%i equ Bytes: for /f "tokens=3" %%a in ('dir /-c "!nach!\.." ^|findstr /rc:" Verzeichnis(se), *[0-9]* *Bytes frei"' ) do ( 
134.
  if %%k equ 0 goto :Backupsplit1 
135.
  call :Platz %%a  %%k &&echo zu Kopieren ist: %%k&&set "VG=1" ||set "VG=" 
136.
137.
if not defined VG echo Kein Platz mehr ...&endlocal &goto :Backupset 
138.
 rem VergleichsListe schreiben 
139.
find /v "?!QPfad!?" <"%NVergleich%" >"%Vergleich%" 
140.
move "%Vergleich%" "%NVergleich%" >nul 
141.
:WriteIn 
142.
>>"%NVergleich%" echo ?!QPfad!?!Ziel#! 
143.
set "VG#=" 
144.
set "VG=" 
145.
 
146.
:BackupSplit1 
147.
 rem Paramter 2 wird ohne Anfü 
148.
robocopy /FP /FFT /njh /njs /np /ns /ndl /r:0 /w:0  "!QPfad:~0,-1!" "!nach!!ZPfad:~0,-1!" "!Daten!" !RCopt!  %1 %~2 %3 %4 %5 %6 %7 %8 %9 
149.
if errorlevel 9 endlocal &echo anderer Fehler^^! #:%errorlevel% &exit /b  
150.
if not errorlevel 1 endlocal &exit /b 
151.
if not errorlevel 2 (rem find in der passende Datei 
152.
  echo !Ziel#! !nach!!Lang! 
153.
  endlocal 
154.
  exit /b 
155.
156.
if not errorlevel 8 endlocal &echo anderer Fehler^^! #:%errorlevel% &exit /b 
157.
echo Es steht nicht genug Speicherplatz auf dem Datentr„ger zur Verfgung.^(#8^) 
158.
 
159.
:Backupset 
160.
if "%0" equ ":Backupset" goto :Setweiter 
161.
 rem Rotation mit NextFit fuer Ziele zum Ausnutzen der Kapazitaet 
162.
set /a Ziel#=Ziel#%%MaxZiel+1 
163.
set "nach=" 
164.
:Setweiter 
165.
call :Ziel%Ziel#% 
166.
if not defined nach call :SucheLaufwerk "%ziel%" 
167.
setlocal enabledelayedexpansion 
168.
echo %Ziel#% = Backupset auf !nach! 
169.
echo bei Datei: !nach!!Lang! 
170.
echo %Ziel#% = Bezeichnet mit: !Volserial! 
171.
(echo %Ziel#% = Backupset auf !nach! 
172.
echo %Ziel#% = Bezeichnet mit: !Volserial! 
173.
)>>"%log%" 
174.
(echo %Ziel#% = Backupset auf !nach! 
175.
if defined ZLPfad echo bei der letzten Datei: !ZLPfad! 
176.
echo %Ziel#% = Bezeichnet mit: !Volserial! 
177.
)1>"%~dpn0-Backupset.ini" 
178.
endlocal 
179.
if "%0" equ ":Backupsplit" echo Verarbeite Liste ...&goto :Backupsplit 
180.
exit /b 
181.
 
182.
 
183.
:Platz 
184.
 rem %1 LW %2 Daten 
185.
set "LW=%~1" 
186.
set "DC=%~2" 
187.
 rem um ueber ca. 2 GB bis ca. 2 TB zu rechnen 
188.
set "LW=%LW:~0,-3%" 
189.
set "DC=%DC:~0,-3%" 
190.
set "Schwelle=%schwelle:~0,-3%" 
191.
if not defined schwelle set /a Schwelle=0 
192.
if not defined LW set /a LW=0 
193.
if not defined DC set /a DC=0 
194.
set /a chk=lw-schwelle 
195.
 rem VGinL Schwellwert nur beim 1. Backup 
196.
if defined VGinL if %chk% lss 0 exit /b 1 
197.
if %DC% gtr %chk% exit /b 1 
198.
exit /b 
199.
 
200.
 
201.
:SucheLaufwerk 
202.
call :Lokal 
203.
set "nach=" 
204.
 rem Vol findet keine Freigaben 
205.
 rem Dir listet Volume und Seriennummer auch bei Freigaben 
206.
for /f "delims=\ " %%i in ('mountvol ^|find ":\" ^|sort ') do dir "%%i\.?." 2>nul|findstr /ec:" %VolSerial%" && set "nach=%%i%~pnx1" 
207.
  
208.
if not defined nach for /f "tokens=1,2delims=\" %%i in ("%~1" ) do dir "\\%%i\%%j\.?." >nul 2>nul &&set "nach=%~1" &&echo Mit Netzwerk verbunden. &&call :Netzwerk 
209.
 
210.
if not defined nach echo Datentraeger %VolSerial% fuer Backup nicht gefunden!^ 
211.
 &&echo    Bitte verbinden ...&&pause &&goto :SucheLaufwerk 
212.
if "%~1" neq "%nach%" echo Backuppfad wurde angepasst: "%nach%" 
213.
if not exist "%nach%" md "%nach%" 
214.
echo( 
215.
 rem Positivliste erstellen 
216.
echo Aktualisiere Vergleichsliste 
217.
for /f "tokens=1*" %%I in ('robocopy /njs /njh /NDL /fp /e "%nach%" "%Quelle%" "%Dateien%"  /L /min:1 /v /NC /bytes ^|findstr /rbvc:"[^1-9:]*0" ' ) do if .%%J neq . for /f "tokens=%token%* delims=\" %%I in ("%%~dpJ" ) do ( 
218.
  setlocal enabledelayedexpansion 
219.
  if %%~J neq !Folder! ( 
220.
    find /v "?!Quelle!\%%~J?" <"%NVergleich%" >"%Vergleich%" 
221.
    move "%Vergleich%" "%NVergleich%" >nul 
222.
    >>"%NVergleich%" echo ?!Quelle!\%%~J?!Ziel#! 
223.
224.
  endlocal 
225.
  set "Folder=%%~J" 
226.
227.
 rem Schreibe als Index zum Restore 0-byte 
228.
echo Aktualisiere Inhalt 
229.
robocopy /njs /njh /nfl /ndl /np /fp /r:1 /w:0 /e /XC /Create "%Quelle%" "%nach%" "%Dateien%" 
230.
exit /b 
231.
 
232.
 
233.
:Groesse 
234.
 rem Nur test 
235.
 rem Zum Prozentualen Vergleich Kapazität -- Puffer 
236.
for /f "tokens=2,3,4 delims=," %%i in (' "WMIC LOGICALDISK get name, size, Volumename, volumeserialnumber " /format:csv ^|findstr ":,[0-9]" ' ) do @echo %%i %%j %%k
Gruß Phil
Bitte warten ..
Mitglied: pieh-ejdsch
12.09.2012 um 20:24 Uhr
moin,

ListenVergleich wurde richtig integriert.
0-Byte Dateien werden zu Anfang erstellt.
Somit sollte auch ein Restore von den Zielen möglich sein. (/Mir)
Ist bestimmt noch verbesserungsbedürftig.

Gruß Phil
Bitte warten ..
Mitglied: pieh-ejdsch
21.09.2012 um 09:48 Uhr
moin user002,

hat Dir das Script jetzt etwas gebracht?
Oder sind noch Fehler vorhanden oder auszumerzen?

Gruß Phil
Bitte warten ..
Mitglied: user002
27.09.2012 um 15:32 Uhr
Hey Phil,

sry für die späte Antwort. Ich bin zurzeit noch nicht dazu gekommen das Script zu testen. Aber ich werde es am Wochenende testen.

Schon mal vielen Dank für die Hilfe und das Script.

Danke und viele Grüße

user002
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Festplatten, SSD, Raid
gelöst Wie funktioniert ein Datastore über mehrere Festplatten? (7)

Frage von ITCrowdSupporter zum Thema Festplatten, SSD, Raid ...

Server-Hardware
Lenovo Server System X 3650 M5 Festplatten (9)

Frage von Hendrik2586 zum Thema Server-Hardware ...

LAN, WAN, Wireless
Mehrere Hardware Firewalls (10)

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

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...