39 Backup
Duplicity és una utilitat què ens permet fer un backup xifrat de la nostra informació amb aquestes característiques:
Per què utilitzar duplicity
i no rsync
?
Les dues opcions són bones.
Duplicity xifra els arxius amb GnuPG, mentre que Rsync no els xifra.
Per xifrar-los et demana la contrasenya en el moment de fer l’acció, però es pot automatitzar incloent un arxiu de text que dispose de la contrasenya de xifratge.
Com vaig arribar a Duplicity?
Feia servir deja-dup
, utilitat que ve per defecte a Ubuntu. Aquesta utilitat és genial perquè et xifra els arxius amb un password que se li pot incloure.
El problema apareixia a l’hora d’automatitzar aquesta tasca amb cron
, ja que deja-dup
necessita un entorn gràfic per fer la feina.
Amb duplicity
es pot programar un cron
per fer-ho automàticament.
A més es pot verificar que no han hagut errades en el procés, mitjançant un comandament. Tot i que sempre es pot restaurar on vulguem.
Per si encara no fora prou, es pot restaurar un arxiu concret i es pot especificar els dies que fa que l’arxiu romania correctament.
- Creem el nostre primer backup
sudo duplicity full txt file:///backup/tmp/
A la terminanal ens apareix:
Last full backup date: none
GnuPG passphrase for decryption:
Retype passphrase for decryption to confirm:
--------------[ Backup Statistics ]--------------
StartTime 1518977840.70 (Sun Feb 18 19:17:20 2018)
EndTime 1518977840.71 (Sun Feb 18 19:17:20 2018)
ElapsedTime 0.01 (0.01 seconds)
SourceFiles 4
SourceFileSize 4117 (4.02 KB)
NewFiles 4
NewFileSize 4117 (4.02 KB)
DeletedFiles 0
ChangedFiles 0
ChangedFileSize 0 (0 bytes)
ChangedDeltaSize 0 (0 bytes)
DeltaEntries 4
RawDeltaSize 21 (21 bytes)
TotalDestinationSizeChange 284 (284 bytes)
Errors 0
-------------------------------------------------
Així ens demana el password, que caldrà posar.
GnuPG passphrase for decryption:
Retype passphrase for decryption to confirm:
En cas d’automatitzar el procés podem posar le password a mà així:
sudo duplicity --encrypt-key password_key_from_GPG --exclude files_to_exclude --include files_to_include /home/inclusa sftp://inclusa@192.168.0.200//backup_remot/2018
- Copia un fitxer d’una carpeta local a una altra carpeta local
sudo duplicity arxiu.txt file:///backup/
- Copia un directori local a un altre directori local
sudo duplicity directori file:///backup/directori
Utilitzant aquesta opció, la segon vegada que fem el backup ho farà de forma incremental.
- Còpia tot el directori forçant la còpia no incremental sino total
sudo duplicity full directori file:///backup/directori
Aquesta opció copiarà tots els arxius del directori de forma no incremental, ja que l’opció full vol dir que aquesta vegada no ho farà de forma incremental.
- Afegint arxius de forma incremental, en cas de no trobar els arxius vells es pararà la còpia.
sudo duplicity incr directori file:///backup/directori
- Restaurar la còpia
sudo duplicity restore file:///backup/directori directori
Així restaurarem la còpia en una carpeta anomenada
directori
. - Backup de forma remota
sudo duplicity /home/inclusa sftp://inclusa@192.168.1.200/backup/2018/
- Forzando una còpia remota cada més
sudo duplicity --full-if-older-than 1M /home/inclusa sftp://inclusa@192.168.1.200/backup/2018/
On
1M
indica el temps que transcorrerà fins tornar a fer la següent còpia. - Restaurant un directori
Mail/article
que teniem fa 3 diessudo duplicity -t 3D --file-to-restore Mail/article sftp://uid@other.host/some_dir /home/me/restored_file
- Excloure directoris en el backup
sudo duplicity --exclude /mnt --exclude /tmp --exclude /proc / file:///usr/local/backup
- Reorganitzar directoris en un mateix directori
sudo duplicity --exclude /mnt --exclude /tmp --exclude /proc / file:///usr/local/backup
- Incloure i excloure directoris en el backup
sudo duplicity --include /home --include /etc --exclude ’**’ / file:///usr/local/backup