Progetto

Generale

Profilo

BackupPC » Cronologia » Versione 16

Versione 15 (Amministratore Truelite, 17-12-2010 17:23) → Versione 16/24 (Simone Piccardi, 22-12-2010 13:47)

[[TracNav(TOC)]] 

 h1. Backup con [[BackupPC]] 


 


 Il programma "BackupPC":http://backuppc.sourceforge.net/ è un sistema di 
 backup scritto in perl che presenta una buona flessibilità e potenza insieme 
 ad una discreta facilità d'uso sul lato utente grazie alla sua interfaccia 
 web. [[BackupPC]] è utile in tutti quei casi in cui sia necessario gestire backup 
 di realtà non troppo complesse per le quali sia sufficiente un salvataggio su 
 disco (esterno o rimuovibile). 

 Qualora si debbano realizzare strategie di backup più complesse, in 
 particolare con salvataggi su diversi supporti, conviene utilizzare un 
 prodotto molto più sofisticato (ma anche molto più complicato da usare) come 
 Bacula. In questo caso lo svantaggio principale è costituito dalla complessità 
 dell'interfaccia utente per il ripristino, che usa la linea di comando. 

 Un altro vantaggio di [[BackupPC]] è che non è necessario installare nessun 
 programma sui PC di cui si effettua il backup, in quanto tutto viene eseguito 
 <pre> 
 
 CIFS) per le macchine windows. 

 All'interno di _Debian Lenny_ è già disponibile la versione 3.1.0 di 
 [[BackupPC]], che può essere installata semplicemente con il comando: 
 <pre> 
 
 apt-get install backuppc 
 </pre> 

 

 <pre> 
 
 quest'ultimo è comunque necessario installarsi anche i rispettivi pacchetti Perl,  
 senza i quali il sistema non funziona;    inoltre possono risultare utili altri  
 pacchetti, in particolare programmi 
 per la decompressione/compressione degli archivi e per l'accesso agli share 
 Windows tramite il protocollo SMB; per cui alla fine sarà opportuno installare anche: 

 <pre> 
 
 apt-get install libfile-rsync-perl libfile-rsyncp-perl rsync \ 
                 par2 bzip2 smbfs 
 </pre> 

 

 All'installazione del pacchetto l'interfaccia web viene configurata per 
 <pre> 
 
 <pre> 
 
 relativa configurazione di Apache. Questa è contenuta nel file 
 <pre> 
 
 <pre> 

 

 Se si dispone di un sistema di gestione centralizzata degli utenti su LDAP 
 questo può essere utilizzato usando la seguente configurazione (per i dettagli 
 sulle direttive si veda [[Apache22DavLdap]]): 
 <pre> 
 
 Alias /backuppc /usr/share/backuppc/cgi-bin/ 
 <Directory /usr/share/backuppc/cgi-bin/> 
         [[AllowOverride]] None 
         Options [[ExecCGI]] FollowSymlinks 
         [[AddHandler]] cgi-script .cgi 
         [[DirectoryIndex]] index.cgi 
         [[AuthType]] basic 
         [[AuthName]] "BackupPC admin" 
         [[AuthBasicProvider]] ldap 
         [[AuthzLDAPAuthoritative]] off 
         [[AuthLDAPURL]] ldap://127.0.0.1/ou=People,dc=truelite,dc=it 
         require valid-user 
 </Directory> 
 </pre> 

 

 <pre> 
 
 <pre> 

 

 <pre> 

 

 <pre> 

 

 <pre> 
 
 <pre> 
 
 $Conf{FullKeepCnt} = [4, 0, 12]; 
 </pre> 
 
 si richiedono quattro copie dei backup completi a cadenza settimanale, nessuna copia per i backup completi a cadenza bisettimanale e 12 copie dei backup completi a cadenza circa mensile (ad esser precisi quadrisettimanale). 

 <pre> 
 
 <pre> 
 
 ... 
 host          dhcp      user      moreUsers       # <--- do not edit this line 

 localhost     0         backuppc 
 client 	     0         backuppc 
 </pre> 

 

 <pre> 

 

 <pre> 
 
 <pre> 
 
 $Conf{XferMethod} = 'tar'; 
 $Conf{TarShareName} = [ '/etc', '/var', '/home', '/root' ]; 
 $Conf{BackupFilesExclude} = [ '/var/cache', '/var/run' ]; 
 </pre> 

 

 <pre> 
 
 <pre> 
 
 su - backuppc 
 ssh-keygen -t dsa 
 </pre> 
 
 <pre> 

 

 <pre> 

 

 <pre> 
 
 <pre> 
 
 backuppc    ALL=NOPASSWD: /bin/tar -c * 
 </pre> 

 

 <pre> 
 
 <pre> 
 
 $Conf{TarClientCmd} = '$sshPath -q -x -n -l backuppc $host' 
                       . ' env LC_ALL=C /usr/bin/sudo $tarPath -c -v -f - -C $shareName+' 
                       . ' --totals'; 
 </pre> 
 
 e ci si ricordi eseguire almeno una volta la prova di funzionamento del comando con qualcosa del tipo: 
 <pre> 
 
 su backuppc 
 /usr/bin/ssh -q -x -n -l backuppc client env LC_ALL=C /usr/bin/sudo /bin/tar -c -v -f - -C /etc    . 
 </pre> 
 
 <pre>