Skip to content

charliemartinez/crealib-server-backup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 

Repository files navigation

Crealib Server Backup (CSB)

Autor: Charlie Martínez Licencia: GPLv2

Crealib Server Backup

Documentación

  • Este programa escanea los sitios que tenemos en nuestro servidor Apache, junto con sus BBDD y los ficheros de configuración de los virtualhosts.
  • Guarda las carpetas de los sitios en archivadores .tar.gz individuales y los .sql en la raíz en carpetas correspondientes a su año/mes.
  • En modo manual, permite elegir qué sitios, bases de datos y ficheros de configuración de virtualhost respaldar.
  • Finalizada la ejecución, informa lo realizado y almacena esa información en un LOG progresivo.

Configuración:

Los siguientes comandos deben ejecutarse desde el usuario root o mediante "sudo":

  1. Establecer las rutas de almacenamiento de los respaldos, logs y las credenciales del usuario root de BBDD,
    en el apartado CONFIGURACIÓN del código:
nano backup.sh

Contenido del fichero:

# ************************************* CONFIGURACIÓN *************************************

# Definir rutas de almacenamiento de backups y log:

BACKUP_DIR="/ruta/BACKUP_SERVER"
LOG_FILE="/ruta/backup_log.txt"

# Definir usuario y contraseña root de BBDD:

user="bd_usuario"
pass="Contraseña"

# *****************************************************************************************

Para guardar los backups se recomienda utilizar un disco distinto que el principal.

  1. Convertir este script en un comando:
mv backup.sh /usr/local/bin/backup
  1. Otorgar permisos de ejecución al comando:
chmod +x /usr/local/bin/backup
  1. Crear excepción en /etc/sudoers.d/backup para que no solicite contraseña a crontab:
nano /etc/sudoers/backup

Contenido del fichero:

ALL ALL=NOPASSWD: /usr/local/bin/backup
  1. Crear tarea programada, para que se ejecute una vez por mes:
crontab -u root -e

Contenido del fichero:

0 2 1 * * /usr/local/bin/backup

Manual de uso

Modo automático / Respaldo total:

Cron lo ejecutará en modo automático, del mismo modo que podemos ejecutarlo nosotros cuando necesitemos hacer un backup de TODO en un momento fuera del programado, utilizando el comando:

0 2 1 * * /usr/local/bin/backup

Modo manual / Respaldo selectivo:

En lugar de respaldar todo, CSB nos mostrará un menú para que podamos elegir cuales son los sitios, bases de datos y ficheros de configuración de virtualhost que queremos resguardar. Basta con añadir el modificador --manual de la siguiente manera:

backup --manual

También válido:

backup -m

About

Sript para realizar backup de sitios web en Apache bajo Debian.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages