Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Immutable Page
  • Info
  • Attachments


Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Amanda è uno strumento di backup che consente di effettuare copie di sicurezza dei dati residenti su server GNU/Linux e Windows da una sola macchina, con la possibilità di ricevere rapporti via email e poter usare come supporto anche un masterizzatore.

È un programma monto rigido: infatti, prima bisogna esegue il backup su cache e successivamente lo copia sul nastro. Amanda numera inoltre le cassette dando un'etichetta come da file di configurazione, pertanto andranno inserite una alla volta ed etichettate con l'apposito comando.

Nel caso mancasse la cassetta nell'unità a nastro o fosse quella sbagliata, verrà inviata una mail, e il backup rimarrà nella cache (che aumenterà se non vuotata prima del successivo backup mediante l'apposito comando:  amflush  ).

Nell'esempio esposto in basso, server e client si chiameranno:

  • serverbck01 (indirizzo ip 192.168.1.254)

  • worktation01 (indirizzo ip 192.168.1.100).

Installazione

Lato server

Installare i pacchetti: [apt:amanda-client amanda-client], amanda-server, xinetd.

Nel caso si voglia effettuare il backup su più workstation, è consigliata l'installazione di Samba poiché permetterà di includere nei client di Amanda anche macchine Windows. A questo scopo, installare i pacchetti samba, smbfs e smbclient.

Lato client

Installare il pacchetto [apt:amanda-client amanda-client].

Configurazione

Configurazione xinetd

Come primo passo, bisogna configurare xinetd in entrambi i computer.

  1. Modificare con un editor di testo e privilegi di amministratore il file /etc/xinetd.d/amanda aggiungendo le seguenti righe alla fine del file:

    service amanda
    {
    socket_type             = dgram
    protocol                = udp
    wait                    = yes
    user                    = $USER
    group                   = $GROUP
    groups                  = yes
    server                  = $AMANDAD_PATH/amandad 
    }
  2. Creare la cartella del superserver digitando il seguente comando in una finestra di terminale:

    mkdir -p /etc/amanda/supervise/amanda
  3. Creare uno script:

    touch /etc/amanda/supervise/amanda/run

    in cui si indicherà:

    exec /usr/local/bin/setuidgid amanda \
      /usr/bin/netcat -l -u -p 10080 -q 0 \
      -e /usr/local/libexec/amandad >/dev/null 2>/dev/null 

    e lo si renderà eseguibile digitando:

    chmod 755 /etc/amanda/supervise/amanda/run
  4. Creare un link simbolico ai servizi:

    cd /service
    ln -s /etc/amanda/supervise/amanda .
  5. Creare le cartelle e i file necessari e settare i permessi:

    mkdir -p /usr/local/var/amanda/gnutar-lists
    mkdir /tmp/amanda
    touch /etc/amandates 

Configurazione Amanda

  1. Modificare con un editor di testo e privilegi di amministratore il file /etc/amandahosts che dovrà avere una struttura come la seguente:

    localhost backup
    localhost root
    localhost.localdomain backup
    localhost.localdomain root
    serverbck01     backup
    serverbck01     root
    worktation01    backup
    worktation01    root
  2. Modificare il file:

    sudo vi /etc/amanda/DailySet1/exclude.gtar
    in cui si indicheranno le cartelle e i file da escludere dal backup.

    Ad esempio, per evitare il backup dei file temporanei, della cartella lost+found, dei file .mp3, dei file .avi e della /home/no_backup indicare:

    tmp
    lost+found
    /var/spool/amanda/
    *.mp3
    *.avi
    /home/no_backup
  3. Aggiornare i seguenti file:

    sudo touch /etc/amanda/DailySet1/tapelist.amlabel
    sudo touch /etc/amanda/DailySet1/tapelist.yesterday
    sudo touch /etc/amanda/DailySet1/tapelist
    sudo touch /var/lib/amanda/DailySet1/curinfo
    sudo touch /var/log/amanda/DailySet1/log        
    sudo touch /var/lib/amanda/DailySet1/index
    sudo mkdir -p /var/spool/amanda/tmp
  4. Modificare il seguente file:

    sudo vi /etc/amanda/DailySet1/disklist

    in cui si indicherà l'elenco delle cartelle da copiare, ad esempio:

    serverbck01 /etc  comp-user-tar
    serverbck01 /etc  comp-user-tar
    worktation01 /etc  comp-user-tar
    worktation01 /home comp-user-tar
    worktation01 /home/utente/filedacopiare

Nel caso fosse presente un client Windows (che si chiamerà workstation02) procedere come segue:

  • Montare la cartella Samba condivisa in una cartella apposita:

    sudo mkdir /home/bck_smb
    smbmount //workstation02/SharedDocs /home/bck_smb -o username=utente,password=secret,rw

    oppure al posto di smbmount, sempre dopo aver creato la cartella /home/bck_smb modificare /etc/fstab aggiungendo la seguente riga:

    //workstation02/SharedDocs    /home/bck_smb   smbfs   username=utente,password=secret  0 0
  • Aggiungere al file /etc/amanda/DailySet1/disklist la seguente stringa:

    serverbck01 /home/bck_smb  comp-user-tar

Altre configurazioni (unità a nastro, compressione, ecc...)

Scaricare il file di configurazione di esempio del set di backup e spostarlo sotto la cartella /etc/amanda/DailySet1/ rinominandolo come amanda.conf.original.

Questo file bisognerà adattarlo inserendo una sezione (se non presente) per le dimensioni dell'unità a nastro e impostare i dump, l'email e i dati necessari. Aiutarsi con i commenti per non sbagliare.

Spesso le dimensioni e i dati specifici per il vostro tape le potrete trovare direttamente su internet evitando il controllo lentissimo di amanda.

  • Creare i servizi necessari ad amanda per funzionare in background:

    vi /etc/services

    e aggiungere, se non presenti, le seguenti righe:

    amanda          10080/udp
    amandaidx       10082/tcp
    amidxtape       10083/tcp
  • Aggiungere in /etc/crontab le seguenti righe in modo da pianificare i comandi, cioè facciamo controllare alle 4 del pomeriggio se tutto è pronto (in caso di errore il -m manderà una email) ed impostare il backup alle 00:45:

    0 16 * * 1-5    /usr/sbin/amcheck -m DailySet1
    45 0 * * 1-5    /usr/sbin/amdump DailySet1
    dove per 1-5 si intende un giorno compreso tra lunedì e venerdì (la domenica viene indicata con 0 oppure con 7).
  • Effettuare una verifica ed eventualmente creare le cartelle o settare i permessi come richiesto:

    /usr/sbin/amcheck DailySet1

Funzionamento

Tutti i comandi di amanda andranno eseguiti dall'utente creato automaticamente (chiamato BACKUP) quindi per procedere:

su backup

Ora si utilizzeranno i seguenti comandi:

  • amtapetype -e 100g -f <device> verifica le dimensioni del tape calcolando il temposecondo la dimensione stimata di 100 Gb (non necessario il -e 100g).

  • amlabel -f DailySet1 si etichettano le cassette (ripetere il comando per ogni cassetta).

  • amcheck DailySet1 prova di controllo cassetta corretta.

  • amdump DailySet1 effettua il backup.

  • amverify DailySet1 verifica i dati scritti.

  • amflush svuota la cache rimasta piena in caso di errore su una cassetta qualsiasi anche non etichettata.

Per recuperare i dati ci sono tre possibilità:

  1. Utilizzare una shell interattiva amrecover:

    amrecover -s ipDELserver -C DailySet1
             sethost nomehost
             setdisk /path/pathdarecuperare
             add nomefiledarecuperare
             lcd /recovery
             extract
  2. Dare un comando di shell semi interattiva:

    amrestore -p /dev/nst0 localhost Backup5 | restore -ivbf 2 -
  3. Dare il comando seguente che è quello più semplice:

    amrestore /dev/nst0 localhost

Quest'ultimo effettuerà un restore completo della macchina. Per uscire premere Ctrl+D.

Ulteriori risorse


CategoryAmministrazione