Permite realizar copias de seguridad de bases de datos, directorios y más, de manera automática. Configuración Básica:
# nano /etc/backupninja.conf
loglevel = 4 # Nivel de detalle en los registros (1-5)
reportemail = tuemail@ejemplo.com # Recibe informes de las tareas
# backupninja --check
# tail -f /var/log/backupninja.log
Ejemplos para crear un respaldo de un directorio local. Las tareas individuales se almacenan en /etc/backup.d/. Cada archivo define una tarea específica en formato YAML:
1.-
# nano /etc/backup.d/10-backup-directorio.dup
Con las lineas:
log: short
action: rdiff
source: /home/usuario/
destination: /media/backup/
# backupninja --run
2.-
Respaldo de una base de datos MySQL:
# nano /etc/backup.d/20-backup-mysql.sql
Con el contenido:
log: short
action: mysql
database: midatabase
username: root
password: mipassword
backupdir: /media/backup/mysql
compress: gzip
# backupninja --run
3.-
Enviar copias de seguridad a un servidor remoto (rsync)
# nano /etc/backup.d/30-backup-remoto.rsync
Con el contenido:
log: verbose
action: rsync
source: /var/www/
destination: usuario@servidorremoto:/backups/www/
sshoptions: -i /home/usuario/.ssh/id_rsa
# backupninja --run
4.-
Respaldar un archivo completo del sistema (tar)
# nano /etc/backup.d/40-backup-sistema.tar
Con el contenido:
log: verbose
action: tar
backupdir: /backups
files:
- /etc
- /home
- /var/log
compress: gzip
# backupninja --run
5.-
Configurar tareas automáticas
Para que las tareas se ejecuten automáticamente, backupninja utiliza cron. Por defecto, está configurado en /etc/cron.d/backupninja para ejecutarse diariamente:
0 3 * * * root backupninja --run
Esto ejecutará todas las tareas a las 3:00 AM.