Automatice su copia de seguridad de WordPress con scripting simple de Shell y CRON

  • Owen Little
  • 0
  • 2890
  • 62
Anuncio

La última vez que hablamos sobre las copias de seguridad de WordPress, le mostré lo increíblemente fácil que era hacer una copia de seguridad de toda su base de datos y archivos a través de SSH Cómo hacer una copia de seguridad de su sitio web a través de la línea de comando SSH Cómo hacer una copia de seguridad de su sitio web a través de la línea de comando SSH Copia de seguridad de su sitio web o blog puede ser una tarea costosa y ardua, que requiera una variedad de complementos o planes adicionales de su proveedor de alojamiento, pero no tiene por qué serlo realmente. Si tiene SSH ... con solo unos pocos comandos. Esta vez, voy a mostrar cómo automatizar esos comandos, brindándole copias de seguridad nuevas de todo su sitio cada semana, con muy poco esfuerzo. Esto también servirá como una gran introducción tanto al scripting de shell como a CRON si nunca los ha tocado antes: la clave para aprender temas tan amplios es comenzar de inmediato usándolos para hacer algo útil para usted.

Resumen: copia de seguridad de todo

Cubrimos esto la última vez, pero un resumen rápido de los dos comandos necesarios para hacer una copia de seguridad de su base de datos y archivos, suponiendo que ya haya iniciado sesión y se haya movido al directorio del sitio web (lea el primer tutorial si no lo comprende). Asegúrese de hacerlo en este orden, para que la copia de seguridad de su archivo incluya el archivo de base de datos que imprime en el primer comando:

mysqldump --add-drop-table -u username -p databasename> databasebackup.sql tar -cf backupfile.tar .

Reemplace la nombre de usuario y nombre de la base de datos elementos con su base de datos y detalles de nombre de usuario.

Automatización, primer paso: secuencias de comandos

Por ahora, vamos a crear un nuevo script que simplemente ejecute los comandos que aprendió para la copia de seguridad, con algunas modificaciones para incluir la contraseña también (ya que esto será automático, no podrá escribir la contraseña cada vez ) Cuando hayamos terminado, debería tener solo un comando para ejecutar que ejecutará dos comandos por usted!

También es hora de que aprenda a editar archivos de texto a través de la línea de comandos, ya que no puede confiar en FTP y GUI todo el tiempo. Puede usar un editor simple basado en texto llamado vi para hacer esto.

Para iniciar la aplicación y crear su primer script, escriba:

vi mybackupscript.sh

Si el archivo ya no existe, se creará y se le mostrará una pantalla bastante desalentadora similar a esta:

vi tiene dos modos: modo de edición y comando. Para ingresar al modo de edición, presione i. Entonces puedes comenzar a escribir. Sabrá que funcionó, porque la parte inferior izquierda se convertirá en-INSERTAR-

Comience escribiendo lo siguiente:

#! / bin / sh mysqldump --add-drop-table -unombre de usuario -pagcontraseña nombre de la tabla > dbbackup.sql tar -cf backup.tar .

Tenga en cuenta que esta vez, estamos incluyendo la contraseña en el comando. También tenga en cuenta que cuando usamos el modificador -p para especificar la contraseña, colocamos la contraseña inmediatamente después sin espacio entre ellas. Si lo prefiere, puede escribir el comando de esta manera, pero funcionalmente no hay diferencia:

#! / bin / sh mysqldump --add-drop-table --user =nombre de usuario --contraseña =contraseña nombre de la tabla > dbbackup.sql tar -cf backup.tar .

Ahora necesitamos guardarlo. Presione ESC una vez para salir del modo de edición y entrar al modo de comando del editor de texto. Tipo:

:escribir

y presione enter, luego

:dejar

y entra de nuevo.

Entonces, ya habrá descubierto que cualquier comando que dé debe ir precedido de dos puntos. Eso es todo con vi por ahora.

De vuelta en la línea de comando, siga adelante y haga que su nuevo script sea ejecutable escribiendo lo siguiente:

chmod 744 mybackupscript.sh

Y finalmente, pruébelo con:

./mybackupscript.sh

Obviamente, dependiendo del tamaño de su sitio y la velocidad de su servidor, puede llevar un tiempo. Al final, puede enumerar los archivos y debe encontrar un backup.tar. En mi servidor privado virtual, tardé unos 5 segundos en crear la copia de seguridad del sitio de WordPress de 100 MB.

Paso dos de automatización: CRON

CRON es un programador de tareas para Linux. No lo cubriremos en profundidad aquí, pero le daré lo que necesita para ejecutar su script de respaldo cada semana. También hemos cubierto cómo ejecutar trabajos CRON desde el panel de control de su sitio web basado en GUI. Para agregar una tarea al planificador CRON, simplemente agregue una línea al “crontab”. Edite esto escribiendo:

crontab -e

Esto abrirá el archivo CRON en su editor de texto, probablemente vi nuevamente. Si nunca ha agregado nada antes, también es probable que esté en blanco. Sin preocupaciones. Agregue estas líneas:

00 4 * * 0 /httpdocs/mybackupscript.sh

El formato que sigue este comando es un poco difícil, pero es así:

minuto hora día del mes mes día de la semana

A * en el patrón ignora ese elemento. Entonces, en el ejemplo anterior, vamos a ejecutar nuestro script de respaldo a los 00 minutos 4 horas, cada 0 (domingo) de la semana.

Aquí hay algunos otros ejemplos para ayudarlo a comprender:

01 * * * * echo "Este comando se ejecuta al menos un minuto cada hora" 17 8 * * * echo "Este comando se ejecuta diariamente a las 8:17 am" 17 20 * * * echo "Este comando se ejecuta diariamente a las 8 : 17 pm "00 4 * * 0 echo" Este comando se ejecuta a las 4 am todos los domingos "* 4 * * Sun echo" Así es este "42 4 1 * * echo" Este comando se ejecuta 4:42 am cada 1 de el mes "01 * 19 07 * echo" Este comando se ejecuta cada hora el 19 de julio "

Una vez que haya ingresado eso, guarde el archivo presionando ESC, luego escriba: write seguido de: quit. Una versión abreviada de esto es simplemente escribir: wq, que escribirá el archivo y se cerrará. Es útil, pero si eres como yo, olvidas estos pequeños atajos.

¡Eso es! Ahora tendrá una copia actualizada de su base de datos y de todo el sitio en la raíz, llamada backup.tar (o lo que elija para nombrarlo). Es posible que desee aprender un poco más de secuencias de comandos para agregar la fecha al final del nombre de archivo y evitar sobrescribir la misma cada vez, pero eso depende de usted descubrirlo. Espero que puedan ver cuán poderosa es la línea de comando ahora!




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.