Dipartimento di Ingegneria dell'Informazione

Gruppo Calcolatori Elettronici

 

Instalazione e Configurazione del BackupPc

Realizzazione a cura di Scidá Luis Matías (992021).

Indice

*      Introduzione

*      Installazione

*      Configurando il Sever

*      Configurando Collegamento Sicuro

*      FAQ

*      Links

 

Introduzione

BackupPc è un software Open Source concesso in licenza GPL,con sopporto per Linux  ed Windows, clienti samba ed DHCP, che permette automatizzare il Backup fra un server ed uno e più clienti.  Ha un’interfaccia grafica fatta in Perl che serve per vedere lo status degli diversi backups, per iniziare Backups, per fare un reload de la configurazione  se si fa alcuna modifica sul quella ed anche per vedere degli errori. Fra i suei caratteristiche principale, l’utente ha la possibilità di scegliere fra tre metodi per fare il backup (‘tar’, ‘rsync’ ed ‘rsyncd’(rsync daemon) ) , ha il sopporto per fare connessione sicura usando un protocollo proprio se si usasi rsyncd. Anche permette usare il metoditar’ o ‘rsync’ in motto sicuro attraverso di SSH/ RSH. I backups possono essere completi o incrementale, con o senza compressione di dati ed le file che sono le stesse sono salvate solo una vece usando hard links. Questo minimizza il utilizzo ed il I/O del disco.

L'installazione del servizio nasce come parte applicativa del corso di Amministrazione di Reti di Calcolatori tenuto dal prof. Massimo Bertozzi presso l' Università degli Studi di Parma , anno accademico 2004-2005. Lo scopo prefissato è stato quello di configurare un servizio di Backup nella Palazzina 1 (Dipartimento de ingegneria dell’informazione) della Palazzina 2  della Facoltà d’Ingengeria.

 

Torna all'inizio

Installazione

Prerequisiti:

Prima di fare l’instalazione ci vuole avere instalato sul server: Apache, Perl ed 3 Moduli per Perl (Zlib per usare la compressione, Zip per fare il recover con compressione,  ed RsyncP per usare i metodi Rsync ed Rsyncd). Per più informazione fare click in FAQ

 

Installando la distribuzione:

 

*      Automatica

Questa é la più semplice ma chi vuole la che la Distribuzione Linux scelta ha degli package (eg. Debbian Linux)

Scrivere:

Apt-get  install backuppc

 

 

*      Manuale

Si fa con lo script configure.pl.

1-     Scaricare il BackupPc del sito

2-      Nella directory dove si ha scaricato fare:

a.      tar zxvf ‘nome del file’.tar.zip

b.      cd ‘nome de file’

c.      Perl configure.pl

Dopo di questo comincia l’installazione ed ilconfigure’ fa una serie di domande molto semplici per completare l’installazione. Mentre si sta installando si apre una finestra dove si puoi guardare la password (si consiglia ricordarla) ed il nome d’utente con cui fa il collegamento sui diversi clienti. 

 

Configurando il Server

Una volta installata, si deve entrare nella cartella dove è ‘dir_installazione’/backuppc/ ed aprire il file config.pl per reconfigurare il server (nell’installazione automatica il path è /etc/backuppc)

 

I parametri più comuni di questo file sono:

*      Conf{WakeupSchedule} = [1..23];

Tempi quando il BackupPc fa la verifica de tutti Pc’s ed f il Schedule dei backups necessari. La unita del tempo è ora . Può anche essere  frazionario se si volesse (eg: 4.25 significa 4:15am).

Esempi:

$Conf{WakeupSchedule} = [22.5];         # una volta ogni giorno alle 10:30 di sera .

$Conf{WakeupSchedule} = [1..23];        # tutti le ore meno mezzanotte

            $Conf{WakeupSchedule} = [2,4,6,8,10,12,14,16,18,20,22];  # ogni 2 ore.

Il valore per difetto è tutti le ore meno mezzanotte.

La prima entrata di $Conf{WakeupSchedule} è quando il  BackupPC_nightly (questo fa una pulizia dei files temporali chi usa il backuppc). Nessun altro backup può stare funzionando mentre BackupPC_nightly  sta funzionando. Non è necessario che si metta le ore in ordine cosi se può scegliere quando funzionerà  

 

*      $Conf{MaxBackups} = 4;

Numero massimo dei backups simultanei da funzionare.

 

*      $Conf{MaxUserBackups} = 4;

Numero supplementare di backups simultanei che gli utenti possono fare funzionare. Se c’e più de un utente:  $Conf{MaxBackups} + $Conf{MaxUserBackups} è il numero de richieste massimo che può funzionare allo stesso tempo.

 

*      $Conf{BackupPCNightlyPeriod} = 1;

Quanti giorni (funzionamenti) prende BackupPC_nightly per fare una pulizia completa.  Questo è normalmente 1, che significa ogni notte che funziona riesce a rimuovere tutto.

Esempio:

   $Conf{BackupPCNightlyPeriod} = 1;   # riesce a farlo in una notte.
   $Conf{BackupPCNightlyPeriod} = 2;   # riesce a farlo in due giorni (mezzo pezzo in ogni notte)

 

*      $Conf{FullPeriod} = 6.97;

Minimo periodo fra due full backups. Tipicamente questo è regolato un poco di meno che un numero di numero intero di giorni.  Il tempo che ci vuole per il backup, più il tempo di $$Conf{wakeupschedule } farà il tempo di backup reale un poco più lungo.

 

*      $Conf{FullKeepCnt} = 1;

Numero di backups completi da conservare.  Deve essere > = 1.

 

*      $Conf{IncrPeriod} = 0.97;

Minimo periodo fra due incremental backups

*      $Conf{IncrKeepCnt} = 6;

Numero di backups incrementali da conservare.  Deve essere > = 1.

*      $Conf{BlackoutPeriods} = [ ... ];

In questo periodo il BackupPc è spento (Blackout) cioè non fa nulla da solo.

Esempio:

$Conf{BlackoutPeriods} = [

        {

            hourBegin =>  7.0,

            hourEnd   => 19.5,

            weekDays  => [1, 2, 3, 4, 5],

        },

   ];

Dopo nella stessa directory si devi aprire il file hosts ed  aggiungere il nome dei clienti.

Esempio:

 

    Host        dhcp    user      moreUsers
    rossi        0      craig     jim,dave
    pippo        1      gary      andy

 

Dovete soltanto regolare DHCP a 1 se la vostra macchina del cliente non risponde alla richiesta del multicast di NetBios:

 
nmblookup myHost

 

ma risponde ad una richiesta diretta verso il relativo IP ADDRESS:

 

nmblookup -A W.X.Y.Z

 

L’ultimo che se suggerisce è creare un file con estensione pl per ogni cliente messo nel file hosts. Il nome di questo file deve essere lo stesso che il nome scritto nel file hosts. Qui si metti la configurazione particolare d’ogni host.

Esempio:

File ‘rossi.pl’

 

# Local server backup of /etc as user backuppc

#Questo usa il metodo rsync

$Conf{XferMethod} = 'rsync';

$Conf{RsyncShareName} à può essere

per una sola cartella

$Conf{RsyncShareName} = ['/localhome/I_due_Foscari/CORBA'];

 

per due o più cartelle

$Conf{RsyncShareName} = ['/localhome/I_due_Foscari/CORBA', /etc];

 

per due o più partizione

$Conf{RsyncShareName} = 'c' =>['/localhome/I_due_Foscari/CORBA', '/etc'];

                               'd' =>['/etc'];

 

$Conf{RsyncClientRestoreCmd} = '$sshPath -q -x -l root $host $rsyncPath $argList+';

 

 

Torna all'inizio

Configurando Collegamento Sicuro

Ogni volta che BackupPc si collega a un cliente viene chiesta la password de root. Para che questo non succeda, si deve fare un collegamento automatico ma in forma sicura. Questa procedura è diversa dipendendo del metodi selezionate. Come il metodo più completo è Rsync, questo è il metodo usato. Qui se spiega come fare il collegamento automatico con il Metodo Rsync usando OpenSSH.

1-     Sul il server,fare il log in con il utente backuppc e creare una  clave pubblica e una privata, dal prompt fare:

 

> ssh-keygen –t dsa

    

2-     Questa clave viene salvata nella cartella ‘home directoy’/.ssh, dal prompt fare:

 

> cd /backuppc/.ssh

> scp id_dsa.pub root@nome del client_host::.ssh/id_dsa.pub 

     questo  fa una copia della public key nel client

    

3-     Dopo sul cliente fare

       >cd home/root/.ssh

       >cat id_dsa.pub >> authorized_keys2

       in authorized_keys2 vengono salvate  le clave degli hosts che si collegano in maniera automatica

       >rm id_dsa.pub

       Cancello la clave pubblica nel cliente

 L’ultimo è permettere la autenticazione verso clave pubblica per cui nella cartella etc/ssh editiamo il archivio di configurazione sshd_config ed deve avere due righe che dicano:

RSAAuthentication yes

PubKeyAuthentication yes

 la prima serve solo para la v1

 la seconda server solo para la v2   

 

Solo la prima volta che faccia la connessione con il  cliente, vedrà richiesta la password di root.

 

Torna all'inizio

FAQ

*      Sono zlib, zip e RsyncP installato nel Server?

               Per vedere questo fare dal prompt:

               > perldoc Compress::Zlib

               > perldoc Archive::Zip

               > perldoc File::RsyncP

 

*      Come si fa per installare Zlib o Zip o RsyncP nel Server?

1-     Fare click sul Zlib, Zip, RsyncP per scaricare il file

2-     Entrare nella cartela dove si trova il file scaricato

3-     tar zxvf ‘nome_archivio’.tar.gz

4-     cd ‘nome_archivio’

5-     perl Makefile.PL

6-     make

7-     make test

8-     make install

 

*      Come si fa per iniziare il BackupPc?

               - Cd etc/init.d/

               - backuppc start

*      Come si fa per vedere l’interfaccia grafica d’amministrazione

 http://nomehost.dominio/backuppc

dopo di questo viene richiesto il nome d’utente (backuppc) e la password (che si no è cambiata, è la generata nella installazione)

 

Torna all'inizio

Links

*      http://backuppc.sourceforge.net/ (sito officiale di backuppc)

*      http://www.e-ghost.deusto.es/docs/TutorialOpenSSH.html (Documento interessante sul OpenSSH ma in spagnolo)

*      http://www.jdmz.net/ssh (Spiega come usare Rsync con SSH)

 

Torna all'inizio

 

Ultima modifica: 21/07/05