Created
July 1, 2019 22:37
-
-
Save parzibyte/9b3fd49d43ad8275b5e9cb7346d042e3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Script para respaldar instalación y base | |
# de datos de WordPress | |
# en Google Drive desde Linux | |
# By: parzibyte | |
# Visita: https://parzibyte.me/blog | |
# Variables de archivos | |
FECHA_Y_HORA=$(date "+%d-%m-%y_%H-%M-%S") | |
RUTA_HOME="/home/parzibyte" | |
# BD. No olvides que este archivo debe existir en la ruta especificada | |
# más info en: https://parzibyte.me/blog/2019/02/06/script-respaldar-base-de-datos-mysql-mariadb-linux-mysqldump/ | |
ARCHIVO_CNF_MYSQL="$RUTA_HOME/my.cnf" | |
if [ ! -f "$ARCHIVO_CNF_MYSQL" ]; then | |
echo "No existe el archivo my.cnf en $ARCHIVO_CNF_MYSQL" | |
exit 1 | |
fi | |
# Solo necesitamos el nombre de la base de datos de WordPress | |
BD_MYSQL="base_de_datos_wordpress" | |
# El ejecutable de gdrive. Más información | |
# en: https://parzibyte.me/blog/2019/07/01/administrar-google-drive-linux-gdrive-comandos/ | |
EJECUTABLE_DRIVE="$RUTA_HOME/software/gdrive" | |
# El archivo de salida | |
NOMBRE_ARCHIVO="respaldo_wordpress_$FECHA_Y_HORA.tar.gz" | |
# El archivo de la base de datos | |
NOMBRE_DUMP_BD="$BD_MYSQL.$FECHA_Y_HORA.sql" | |
# Carpeta en donde serán guardados | |
CARPETA_DESTINO="$RUTA_HOME/respaldos" | |
# Simples concatenaciones | |
RUTA_ABSOLUTA_ARCHIVO="$CARPETA_DESTINO/$NOMBRE_ARCHIVO" | |
RUTA_ABSOLUTA_RESPALDO_BD="$CARPETA_DESTINO/$NOMBRE_DUMP_BD" | |
# Ubicación de la instalación de WordPress | |
CARPETA_RESPALDAR="/var/www/html/" | |
# Comandos | |
echo "Respaldando $BD_MYSQL en $RUTA_ABSOLUTA_RESPALDO_BD usando archivo $ARCHIVO_CNF_MYSQL..." | |
# Exportar base de datos con MySQLDump | |
mysqldump --defaults-file=$ARCHIVO_CNF_MYSQL $BD_MYSQL >$RUTA_ABSOLUTA_RESPALDO_BD | |
if [ ! -f "$RUTA_ABSOLUTA_RESPALDO_BD" ]; then | |
echo "No existe el respaldo" | |
exit 1 | |
fi | |
# Creamos el directorio para los respaldos por si no existe | |
mkdir -p "$CARPETA_DESTINO" | |
echo "Creando archivo de respaldo..." | |
# Crear archivo tar.gz de instalación de WP | |
tar --ignore-failed-read --create --gzip --file="$RUTA_ABSOLUTA_ARCHIVO" "$CARPETA_RESPALDAR" "$RUTA_ABSOLUTA_RESPALDO_BD" | |
if [ -f "$RUTA_ABSOLUTA_ARCHIVO" ]; then | |
echo "Subiendo archivo usando binario de $EJECUTABLE_DRIVE" | |
# Subir archivo | |
$EJECUTABLE_DRIVE upload $RUTA_ABSOLUTA_ARCHIVO | |
echo "Eliminando archivos después de ser subidos" | |
# Eliminar tar.gz y respaldo de base de datos | |
rm $RUTA_ABSOLUTA_ARCHIVO | |
rm $RUTA_ABSOLUTA_RESPALDO_BD | |
# Mensaje para sentirnos como juanquers | |
echo "¡OK!" | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment