Hrvatska akademska i istraživačka mreža
  NASLOVNICA MAPA WEBA TRAŽILICA KONTAKTI CARNET WEB
Hrvatska akademska i istraživačka mreža
 
menu 4
Sigurnost
menu 4
Distribucija
menu 4
Pomoć
menu 4
Dokumenti
menu 4
menu 4

 

 

30-06-06 10:33
Duplicity - backup alat

piše IVAN RAKO

Duplicity je backup alat koji enkriptira podatke, sprema ih u tar arhivu, i šalje na udaljeni server nekim mehanizmom. Ti mehanizmi mogu biti local, ftp, ssh/scp, rsync. U ovom primjeru pokazat ćemo kako se to obavlja ftp-om. Vrlo sličan postupak je i sa ssh/scp, ili nekim drugim mehanizmom.

 

Duplicity postoji kao Debian paket, i instalira se naredbom:

 

# apt-get install duplicity

 

 

Da bi se podaci mogli enkriptirati, potrebno je izgenerirati PGP ključeve s GnuPG-em. To se može napraviti naredbom:

 

# gpg --gen-key

 

 

S naredbom:

 

# gpg --list-keys

 

možemo vidjeti da li smo stvarno izgenerirali ključ. Primjer ispravnog izlaza naredbe je:

 

/root/.gnupg/pubring.gpg

------------------------

pub   1024D/B306740F 2006-06-15

uid              System Sheriff <root@jurina.srce.hr>

sub   2048g/666452C2 2006-06-15

 

 

Zatim na udaljenom računalu otvorimo neki korisnički račun na kojeg ćemo spremati backup podataka.

 

Također je bitno zapamtiti passphrase i ime ključa (u gornjem izlazu, ime ključa je 'B306740F'), te podatke za backup korisnički račun, i to moramo ubaciti u sljedeću skriptu za backup:

 

-----------------------------------------------------------

#!/bin/sh

# Duplicity backup script

 

export FTP_PASSWORD="neka_lozinka"

export PASSPHRASE="neki_gnupg_passphrase"

 

KEY="neki_key"

BACKUP_LOGIN="neki_login"

BACKUP_HOST="neki.host.hr"

 

# primjer za neke direktorije

duplicity --encrypt-key "$KEY" --sign-key "$KEY" \

--include /etc \

--include /root \

--include /home \

--include /var/lib/mysql \

--include /var/www \

--include /var/mail \

--exclude '**' \

/ ftp://$BACKUP_LOGIN@$BACKUP_HOST/

 

# ako zelite full backup, primjer izgleda ovako:

# duplicity --encrypt-key "$KEY" --sign-key "$KEY" \

# --exclude /proc \

# / ftp://$BACKUP_LOGIN@$BACKUP_HOST/

-----------------------------------------------------------

 

 

Tu skriptu možemo postaviti u cron da se svakodnevno izvršava:

 

# ln -s /put/do/backup/skripte /etc/cron.daily/backup

 

 

Za vraćanje podataka iz backupa brine se sljedeća skripta:

 

-----------------------------------------------------------

#!/bin/sh

# Duplicity restore script

 

export FTP_PASSWORD="neka_lozinka"

export PASSPHRASE="neki_gnupg_passphrase"

 

BACKUP_LOGIN="neki_login"

BACKUP_HOST="neki.host.hr"

 

export FTP_PASSWORD="burek"

export PASSPHRASE="1234567890qwertyuiop"

 

if [ -z "$2" ]; then

   echo "Usage: $0 <what_restore> <where_restore>"

   exit 1

fi

 

duplicity --file-to-restore $1 ftp://$BACKUP_LOGIN@$BACKUP_HOST/ $2

-----------------------------------------------------------

 

Prvi argument te skripte je datoteka koju želimo vratiti bez početnog "/" (npr. za /etc/passwd upiše se etc/passwd), a drugi argument je datoteka u koju želimo vratiti (ako želimo npr. vratiti /etc/passwd u /tmp/passwd).





[Lista]
Ovu uslugu CARNeta realizira Sveučilišni računski centar Sveučilišta u Zagrebu
  Copyright ©2005. CARNet. Sva prava zadržana. Impressum.
Mail to
sys-portal@CARNet.hr