Blog Stats
  • Posts - 14
  • Comments - 17
  • Trackbacks - 1780

 

Backup facili e free con Robocopy

Pochi giorni fa un amico mi chiedeva un sistema comodo, facile e veloce per fare il backup di intere (enormi) cartelle su un disco esterno. In questi casi il semplice drag 'n drop cui ci ha abituato Zio Bill non e' affatto utile. La copia e' lenta e farraginosa e anche da linea di comando i vari copy e xcopy non sono granche' di aiuto. Ecco che miracolosamente mamma Microsoft fa spuntare dal cilindro una utility comodissima: Robocopy. Vediamo cosa e', a cosa serve e come funziona.
Iniziamo col dire che questa utility (Robust File Copy) fa parte del resource kit di Windows Server, e consente la copia anche di interi dischi. Risulta estremamente utile quando si vuole far eun backup periodico dei dati su un portatile senza necessariamente copiare il superfluo.
Alcuni dei principali vantaggi sono:
copia dei soli file modificati
bypass dei permessi di lettura (backup mode solo dalla versione XP010)
mantenimento (o rimozione) delle ACL su dischi NTFS (e dei flag del file)
origine e destinazione su qualunque percorso, share di rete comprese
selezione (o esclusione) di alcuni file, per cartella, estensione o data
spostamento sicuro dei files (NON fare MAI la move da un pc all'altro col drag 'n drop !!!)
possibilita' di monitoring di cartelle
log a video e/o su file
E altri che al momento tralascio.
Non spaventatevi davanti alle numerose opzioni che l'utility mette a disposizione (il manuale .doc conta 35 pagine). Le opzioni realmente necessarie sono veramente poche. Io solitamente uso: robocopy {origine} {destinazione} /e /b /w:1 /r:1 /copyall ed e' piu' che sufficiente. Ovviamente origine e destinazione possono essere percorsi come c:\miacartella oppure \\pc-ufficio\condivisione. ricordarsi di inserire i percorsi tra doppi apici nel caso contengano spazi come ad esempio "c:\Documents and settings\administrator"
Nel dettaglio le opzioni che utilizzo sono:
/e copia tutte le sottocartelle, comprese quelle vuote
/b backup mode, copia il file anche se non ci sono permessi di lettura (utile in molti casi)
/w:1 attesa di 1 secondo in caso di errore
/r:1 ritenta 1 volta in caso di errore
/copyall copia tutte le informazioni sui file
non specifico il tipo di file perche' per default e' già impostato a *.*
Ci sono poi altri mille usi possibili, limitati solo dalla fantasia e.. dalle possibilità dell'utility !
A me ha aiutato durante il trasferimento di files verso share remote (mooolto remote) in cui il retry faceva bene il suo lavoro, oppure nella migrazione di server con la copia notturna dell'intero albero di cartelle e files condivisi con successiva "sincronizzazione" in pochi minuti prima dello spegnimento.
Per agevolarvi il lavoro ho preparato un piccolo file batch che vi consente di fare la copia specificando semplicemente origine e destinazione.
Copiate il listato qui sotto in un file di testo che salverete come copia.cmd (.bat se preferite, ma ormai chi lo usa piu'). ora optrete fare i vostri backup con: copia {origine} {destinazione}. Ho incluso anche una mini guida all'uso del batch che appare se lo lanciate senza parametri. Ovviamente potete modificare i parametri della linea di comando di Robocopy secondo le vostre esigenze.

@echo off
cls

if [%1] == [] goto usage
if [%2] == [] goto usage
if [%3] == [] set log=%1copia_%date:/=_%.log
if NOT [%3] == [] set log=%3copia_%date:/=_%.log

robocopy %1 %2 /e /w:1 /r:1 /b /np /log:%log% /tee

goto done

:usage
echo Utilizzo:
echo copia origine destinazione [log]
echo - origine e' il percorso da cui copiare
echo - destinazione e' il percorso su cui copiare
echo - log (opzionale) e' il percorso in cui creare il file di log.
echo   Se omesso utilizza l'orgine.
echo In caso i nomi di origine o destinazione contengano spazi
echo racchiuderli tra " " es: "c:\documents and settings"

goto end

:done
echo lavoro completato.
echo log creato su %log%

:end

Se poi siete pigrissimi potete cercare su Google "Robocopy gui" e trovate alcune interfacce che vi agevolano il lavoro (ma non le ho fatte io...).
Se avete bisogno fate un cenno.
HTH
Max
 

 

Copyright © Max