La forma más fácil hacer copias de seguridad de tu sitios Web
Una de las obsesiones del webmaster es la seguridad de sus sitios Web, quien mas y quien menos ha amanecido con una llamada de un cliente en la que le dicen que en su Web aparece algo extraño que ayer no tenía en su portada. Puede haber sido un deface o un hackeo, incluso puede que haya sido el propio cliente o la empresa de hosting. Sea como fuere, la responsabilidad recae normalmente sobre la empresa que ha diseñado la Web, por lo que al webmaster le conviene hacer copias de seguridad de las webs de sus clientes con una cierta regularidad.
Las empresas de hosting hacen sus propias copias de seguridad en las que podemos confiar hasta cierto punto, pagando un plan extra por las copias de seguridad o a partir de un pago puntual podemos recuperar las copias, sin embargo y como decía anteriormente, es conveniente que tengamos las nuestra propias.
En esta guía me voy a centrar en los casos que se dan en minimol.
Servidor dedicado windows
Contamos con un servidor dedicado en el que tenemos una serie de webs con unas características especiales que requieren un hosting personalizado, de modo que no pueden estar en hostings compartidos. Por seguridad estos servidores dedicados, no tienen un servicio de ftp y la transferencia de archivos se hace mediante clientes tcp (dropbox puede ser un buen ejemplo) que mantienen la seguridad a un nivel aceptable.
Para hacer las copias de seguridad usaremos estos mismos clientes a la hora de trasladar la copia de seguridad a nuestras oficinas, solo nos falta hacer en paquete con el backup.
Damos por hecho que siendo un servidor dedicado, tendremos acceso a la interfaz del sistema operativo en el que accederemos al programador de tareas de windows y apuntaremos hacia un script .BAT que simplemente comprimirá y moverá la copia hacia la carpeta de nuestro dropbox.
Nuestro script .bat seria así de sencillo:
pkzip c:\directorioservidorweb\*.* c:\comprimido\backup.zip -r
mv c:\comprimido\*.* c:\carpetaparadescargar
Servidor dedicado Linux
Siendo como es un sistema operativo pensado para hacer de servidor, automatizar copias de seguridad en Linux es realmente sencillo y de hecho el método que os voy a proponer es el mas simple de los posible.
Para empezar buscaremos en nuestro sistema el fichero /etc/crontab
Al editarlo veremos una serie de líneas a la que añadiremos la ruta a nuestro script con las órdenes para hacer las copias de seguridad junto con las fechas en las que queremos que se ejecute, tendría este aspecto:
51 19 * * 6 root sh /var/scripts/backups.sh > /dev/null 2>&1
las numeraciones de arriba corresponden a las fechas en las que queremos que el script "backups.sh" , concretamente se ejecuta a las 19:51 del día 6 de la semana, es decir, los sábados.
Solo nos falta montar el script backups.sh, tendrá este aspecto:
mysqlcheck --user=root --password=password --auto-repair --check --optimize --all-databasestar -cz -f /var/backups/backup_`date +%Y-%m-%d`.tgz /var/www/
mysqldump --user=root --password=password -A > /var/backups/databases_`date +%Y-%m-%d`.sql
Vemos arriba que hay tres órdenes, la primera reparará y optimizará las bases de datos de nuestro servidor, hacemos esto, para evitar problemas o descargar una base de datos que este dañada.
En la segunda línea comprimimos una copia de nuestro servidor Web, como veis, al fichero comprimido le doy el nombre del día en el que se hace.
En la tercera hacemos una exportación de las bases de datos.
Podríamos optimizarlo comprimiendo la exportación de la base de datos y dividiendo en volúmenes el backup de la copia del sitio Web, pero por ahora y dado el tercer supuesto lo vamos a dejar así.
Servidor compartido
Los servidores compartidos sean de Linux o windows, son el caso con el que más frecuentemente solemos trabajar los webmasters, por su economía y rapidez suelen ser la elección óptima para la mayoría de los desarrollos Web, pero al estar en grandes empresas bastante despersonalizadas y con servicios técnicos lamentables, es mas que aconsejable que nos ocupemos nosotros mismos de hacer las copias de seguridad.
Estos tipos de hosting suelen tener un acceso ftp.
Con programas como FTP backup, podemos hacer que diaria o semanalmente se conecten vía ftp a un listado de sitios y se los descarguen. Este sistema también es válido para el caso de los Linux dedicados que ya os comentaba unas líneas mas arriba.
Esto no pretende ser una guía exhaustiva ni mucho menos, sin embargo puede serviros para dar los primeros pasos a la hora de automatizar los backup de vuestras webs, para más dudas, usad Google.
15.05.2011
Unax