Guida verificata con Ubuntu: 20.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Si ricorda che tale applicazione è aggiornata all'ultima releases ufficiale 3.5.1, del 2017. È ancora sviluppata ed è installabile anche nelle nuove release di ubuntu. Prestare molta attenzione.

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 molto rigido: infatti, prima bisogna eseguire 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 svuotata prima del successivo backup mediante terminale l'apposito comando:

amflush

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

Installazione

Lato server

  1. Installare i pacchetti amanda-client, amanda-server e 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 amanda-client.

Configurazione

Configurazione xinetd

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

  1. Se non fosse già presente, modificare con i privilegi di amministratore e con un editor di testo 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 in terminale il seguente comando:

    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 i privilegi di amministratore e con un editor di testo 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 con i privilegi di amministratore e con un editor di testo il file /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 aggiungere le righe:

    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 con i privilegi di amministratore e con un editor di testo il file /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:

  1. 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, in alternativa, al posto ddel comando 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
  2. 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.

Bisognerà adattare questo fle inserendo, se non presente, una sezione 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 tape in uso possono essere trovate direttamente su Internet evitando il controllo lentissimo di Amanda.

  1. Impostare i servizi necessari ad Amanda per funzionare in background. A tal fine creare con i privilegi di amministratore e con un editor di testo il file /etc/services e aggiungere, se non presenti, le seguenti righe:

    amanda          10080/udp
    amandaidx       10082/tcp
    amidxtape       10083/tcp
  2. Aggiungere in /etc/crontab le seguenti righe in modo da pianificare i comandi, ad esempio per far controllare alle 4 del pomeriggio se tutto è pronto (in caso di errore il -m manderà una email) e 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).
  3. 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 digitare in un terminale:

su backup

Ora si utilizzeranno i seguenti comandi:

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

AmministrazioneSistema/BackupDelSistema/Amanda (l'ultima modifica è del 12/06/2021 11.05.02, fatta da ivantu)