Newsgroup: it.comp.os.win.xp
Titolo: Esiste sistema backup client-server per quantita dati 'discrete' ?

Non sono ancora soddisfatto dele soluzioni per eseguire il backup di dati da 
un file server (win xp pro) a due 'backup-server' (anch'essi xp pro)
La quantita di dati da tenere sotto controllo e' discreta, sono circa 800 
Gbyte
La rete usata e' la classica ethernet gigabit
Per la copia completa, sono necessarie circa 40 ore, sono molti file di 
piccole dimensioni, diciamo che il 90% e' roba dai 10 Kbyte ai 10 Mbyte, il 
restante va dai 10 Mega a 100 Mbyte circa
Il problema che vorrei risolvere e' il tempo necessario per la copia 
differenziale, cioe' il venerdi sera faccio eseguire la copia completa e nel 
weekend viene eseguita
Poi ogni sera vorrei far eseguire la copia differenziale ma per questioni di 
tempo non ci riesco
Ho provato sostanzialmente con un batch file che usa xcopy e l'opzione /M e 
poi con UraniumBackup
Entrambi ci impiegano molto piu' della notte disponibile da un giorno 
all'altro per eseguire la copia e quindi non posso usarli pena il tentare di 
backuppare dei file in uso dagli operatori durante la giornata di lavoro
Durante ogni giornata di lavoro, verranno inseriti/modificati circa un 
migliaio di files ed e' solo quelli che vorrei backuppare
Il fatto e' che sia xcopy che Uranium Backup, e penso altri programmi 
dedicati al backup, per sapere se un file e' da copiare oppure no vanno a 
leggersi sulla posizione di destinazione se il file esiste e se e' uguale al 
file sorgente e quindi in rete locale deve passare comunque una notevole 
quantita di dati, che spreca tempo inutile
Per copiare il migliaio di file modificati, il backup deve 'sondare' circa 
500K file, e non mi basta la notte
La domanda e': conoscete quache programma di backup che 'tenga nota' dei 
file modificati lato sorgente dall'ultimo backup completo e poi 'spari' solo 
quelli alla destinatzione?
Quindi senza andare a leggersi tutti i 500K file sulla destinazione
Ciao e grazie
RobertoA

 ha scritto nel messaggio 
news:4da28a09$1...@newsgate.x-privat.org...

L'xcopy ovviamente non posso usarlo perche' se sulla directory destinazione 
venissero eliminati dei file o directory, copiati nelle operazioni 
precedenti e quindi col flag Archive azzerato, lui mica se ne accorge

 Entrambi ci impiegano molto piu' della notte disponibile da un giorno 
come software mi viene in mente comodo backup, oppure cobian backup.
e vuoi usare un batch, forse robocopy potrebbe andare. Il problema sono 
i tempi.
Copiare 800 Gb e' comunque una operazione lunga...cambia poco il 
software usato...i tempi sono quelli che sono. Per la copia dei soli 
files modificati le cose sono ovviamente diverse e, sostanzialmente, 
dipende da quanti files sono da copiare.
Se invece di windows vuoi usare linux, direi che un ottimo candidato e' 
rsnapshot (uno script che usa rsync)
Adriano

 RobertoA
Premesso che per trasferire 800GB ci vuole sempre tempo, prova a guardare 
Unison.
Tra le opzioni c'é il fastcheck da impostare per filesystem Windows, che 
riduce notevolmente i tempi necessari a capire quali file sono cambiati, 
e può essere impostato per lavorare in modo unidirezionale (da un master 
verso uno slave o viceversa), oppure bidirezionale (i file che cambiano 
da una parte vengono copiati sulla controparte).
La prima volta sarà molto lungo perché dovrà leggere tutti i file che 
dovranno passare sotto le sue mani (si calcola le hash di tutti i file, 
quindi ci vuole il suo tempo). Le successive esecuzioni saranno molto più 
veloci in quanto verranno ricreate le hash dei soli file che vengono 
creati o che vengono modificati.
Sulla copia adotta un sistema che deriva direttamente da rsync con 
un'ottimizzazione del trasferimento per minimizzare i dati effettivamente 
trasferiti.
Quindi non solo "spara" solo i file nuovi o cambiati, ma di quelli 
cambiati dovrebbe minimizzare i dati trasferiti (è stato fatto per 
sincronizzare macchine attraverso internet, notoriamente molto lenta, e 
su lan funziona meglio).
È anche pensato per essere robusto alle interruzioni. I file copiati 
vengono sostituiti ai precedenti solo se la copia ha successo. Copie 
incomplete non sostituiscono i file, quindi si ha sempre una situazione 
"stabile".
Prova a vedere: 
http://www.cis.upenn.edu/~bcpierce/unison/
Luca


Grazie per la risposta
Il punto e' che se il programma e' "da una parte sola" per capire se sulla 
destinazione il file esiste o e' cambiato, inveitabilmente se lo deve 
leggere tutto e quindi in rete passa per intero il file in questione
E d'altra parte non e' che il file di backup puo' inizialmente copiare tutti 
i 500K files e poi copiare quotidianamente solo i 1000 inseriti/modificati 
oggi
Non funzionerebbe, non si accorgerebbe di eventuali 'mancanze' sulla 
destinazione di file gia' copiati le volte prima e poi mai modificati
Ci vorrebbe un programma 'slave' anche sul pc di destinazione in grado di 
comunicare al programma 'master' (sul pc con i file sorgente) l'hash dei 
singoli file e la loro presenza attualmente sul disco
In questo modo si eviterebbero tutte le 500K letture che il prgramma deve 
eseguire sul disco destinazione per vedere se il file corrente e' da copiare 
oppure no
Mi sembra pero' che nesun sistema funzioni in questo modo, quello che piu' 
si avicina e' rsync che dispone di un client ed un server
Ora vedo anche Unison, che mi sembra come funzionamento simile ad rsync
Ciao
RobertoA

 RobertoA
Your choice.
Io ti ho consigliato una cosa che già uso dicendoti perché.
Non prendo soldi dagli sviluppatori di Unison o rsync e non insisto oltre.
Se accetti un mio consiglio: metti in pista un sistema ridotto (solo 1 o 
2 GB invece che 800) per provare le diverse soluzioni, configurazioni e i 
casi strani.
In questo modo puoi valutare le prestazioni, la robustezza² e come 
recuperare la situazione in caso di errori.
Luca
¹ sostituire "unison" con il nome del programma che sceglierai. I 
concetti sono indipendenti dal programma specifico
² valuta molto bene la robustezza!!!

 Luca
Si, grazie
RobertoA

 destinazione di file gia' copiati le volte prima e poi mai modificati
Unison si installa su entrambe le macchine, e lui crea dei file hash su 
entrambi i lati che confronta per verificare i cambiamenti avventui da 
entrambi i lati. Viene lanciato da cron su una delle due macchine, e poi 
lui stesso provvede a lanciare suo fratello sull'altra macchina. 
Ovviamente devi impostare ssh perche' faccia passare le richieste senza 
chiedere la password ogni volta, altrimenti non lo puoi usare in modo 
automatico.
Io lo suo per sincronizzare due archivi da 250 GB con circa 140.000 file 
tramite internet e funziona abbastanza bene. In media in una notte 
riesce a trasferire anche 7-800 mega di dati, se serve. Riconosce 
modifche/cancellazioni/aggiunte/rinomine, non importa su quale lato 
vengano eseguite.