Respaldo o copia de Seguridad en Servidor.

Es evidente que conforme pasa el tiempo vamos a necesitar almacenar,  más datos en nuestro servidor. Aunque muchas veces bien sea por pereza o  desconocimiento no acostumbramos a realizar copias de seguridad de  nuestra data en servidor. Pero cuando nuestros sistemas fallan es que nos acordamos de que no realizamos ninguna labor de respaldo y es demasiado tarde.

En ambientes de trabajo Linux, bien sea en corporaciones o en sitios  de trabajo pequeños y hasta en nuestro propio hosting, es de suma importancia  realizar labores de respaldo de la data que tenemos almacenada en los  servidores que manejamos, de esta manera, nos protegemos nosotros y  nuestra empresa de daños que pueden ser ocasionados por fallas en  Hardware o errores (u Horrores) humanos.

En muchas oportunidades, y no solo en Linux sino también en otros  sistemas operativos, sí no conseguimos arreglar el problema que tenemos,  pues no queda de otra solución, sino la más drástica de todas que es  reinstalar todo el sistema. Pero ¿Donde queda la data que tenia en mi  Servidor?, ¿Sí no tenía una copia de seguridad o respaldo que puedo  hacer? La respuesta es nada, que si no tienes todos los datos tal cuál  los tenias en el último respaldo que realizaste, no queda de otra que  armar nuevamente todo el rompecabezas, lo que te puede demorar días y  hasta semanas si no cuentas con todas las piezas a la mano.

En estas líneas deseo hablarte un poco sobre mi experiencia al  respecto, ya que como bien había comentado en ocasiones la data que se  almacena en nuestros servidores es sumamente critica, y no podemos  darnos el lujo de perderla así por así. Es por esto que en este capitulo  voy a explicarte como realizar tu propia copia de seguridad del sistema  operativo, para que de una vez comiences con el pie derecho de las  buenas practicas en Sistemas Operativos en general.

* Tipos de Respaldos

Primero, deseo informarte que existen 2 tipos de copias de seguridad o respaldos. Estas pueden ser:

1.- Respaldo Incremental: Este tipo de respaldo se basa en solo  guardar los archivos más recientes. No voy a explicar mucho al respecto  ya que se utiliza más en grandes empresas donde poseen una  infraestructura que les permite trabajar con ellas, en vista de que este  tipo de respaldos se pueden ejecutar diariamente e incluso cada hora,  proceso a veces esencial para algunas empresas, por ejemplo Bancos,  Hostings, etc.

2.- Respaldo Full o Total: Se basa en la copia de todo el sistema. Y  es el que voy a explicar más a fondo, por ser el más simple y practico  en los sistemas pequeños como el de nosotros. Una copia total del  sistema puede rondar unos 10 o 20 minutos dependiendo de la data que  manejemos en nuestros equipos.

Una nota importante en este caso es que para realizar las copias de  seguridad por lo general se deben tomar en cuenta algunos servicios  críticos del servidor como es el caso de las bases de datos. Ya que en  muchas ocasiones estas pueden corromperse o dañarse, por lo invasivo que  pueden llegar a ser algunos servicios de respaldo como es el caso de  Data Protector o Bacula, pero ese es tema de otro curso.

* Una forma sencilla de realizar un respaldo de seguridad es el comando TAR:

La forma más sencilla de usar este comando es:

$ tar cf copia_de_seguridad.tar /home

En este ejemplo realizaríamos una copia de seguridad del directorio  /home. También podemos hacer una compresión en el mismo momento usando  gzip, para lo cual añadiriamos la opción z de la siguiente forma:

tar czf copia_de_seguridad.tar.gz /home

De esta manera habríamos creado entonces una copia comprimida del  directorio /home, conservando todos los permisos y su estructura.

El archivo se nos creara, evidentemente en el directorio donde nos  encontremos situados. Es muy importante que no estemos situados en un  directorio que no sea /home, ya que si no, nos crearía un bucle y la  copia de seguridad intentaría hacer una copia de ella misma.

Dentro de las opciones del comando tar tenemos:

c: Crea un archivo tar. x: Extrae el contenido de un archivo. v: Muestra lo que esta haciendo en pantalla. z: Comprime o descomprime un archivo.

La fórmula a utilizar para hacer una copia de todo el sistema no sería muy distinta.

$ tar cvzf copia_de_seguridad.tar.gz /

En esta oportunidad hemos añadido la opción v, que hace que nos  muestre en pantalla lo que esta haciendo. Ahora solo nos queda evitar  que se produzca un bucle, es decir, que nos haga una copia de la copia  de seguridad, para ello, usaremos la opción exclude.

Vamos a suponer que deseamos evitar el directorio /mnt, ya que no  queremos que nos copie la unidad USB, que tenemos montada en otra  partición. Lo haríamos de la siguiente manera:

$ tar czf copia_de_seguridad.tar.gz / -exclude /mnt

Bien ahora ya tenemos nuestra copia de seguridad ¿Qué hacemos con ella?

Tendremos que grabarla en algún soporte, pero el problema es que el  archivo que hemos creado puede tener varios gigas. Ahí es donde entran  los comandos split y cat.

El comando split lo que hace es dividir el archivo grande en otros  más pequeños. Por ejemplo, sí queremos dividir el archivo  copia_de_seguridad en archivos de 1G, lo haríamos de la siguiente  manera:

$ split -b 1g copia_de_seguridad.tar.gz

Sí deseamos utilizar MB en vez de G cambiaríamos "g" por una "m".

Para volverlo a juntar utilizaríamos el comando cat de la siguiente manera:

cat archivo1 archivo2 archivo3 archivo4... >copia_de_seguridad.tar.gz

* Soporte para copias de Seguridad

Existen muchos soportes para copias de seguridad, y los precios  varían constantemente lo que hace difícil aconsejar sobre el más  adecuado, dependerá del uso que se le de y de tú presupuesto.

Los más utilizados son:

Cinta Magnética: aunque esta un poco es desuso, para servidores HP-UX se pueden conseguir algunos en el mercado. CD -R y CD -RW: Bastante utilizado por su bajo coste y según algunas notas, puede mantener la data hasta por unos 20 años más. Disco Duro adicional: es una buena opción dependiendo nuevamente de tu presupuesto. DVD Grabable: igual que en el caso de los CD's La  Nube: En la actualidad esta muy de moda la utilización de Nubes, para  el caso de respaldos de data personal, se espera en un futuro cercano  (si no es que ya llego) se utilice para respaldos de seguridad a gran  escala.

De todas las opciones antes mencionadas, una de mis recomendaciones  en el caso de realizar una copia de seguridad, sí no queremos hacer un  gran desembolso es utilizar nuestra imaginación.

* Recuperación de una ruptura del sistema a través de la copia de seguridad.

Existen 2 tipos de rupturas del sistema o servidor.

1.- Ruptura parcial: Vamos a suponer que el desastre no es muy  grande, simplemente hemos cambiado o borrado algún fichero de  configuración instalando los nuevos drivers de nuestra nueva tarjeta de  vídeo 3D... En la mayoría de los casos, basta descomprimir la copia de  seguridad en la raíz /, y se nos arregla el problema. Es posible que  tengamos que reinstalar GRUB. Lo haríamos de la siguiente manera.

$ mv /mnt/copia_de_seguridad.tar.gz / $ mv xvzf copia_de_seguridad.tar.gz / grub

2.- Ruptura total del sistema: Sin exagerar, sería lo peor que nos  puede pasar, casos como: rotura del disco duro, virus (en el caso de  Windows), tendríamos que reinstalar todo desde cero. Formatear el disco y  si somos afortunados solo la partición donde teníamos Linux e instalar  una distro mínima (podemos tardar unos cinco minutos), arrancamos el  sistema y copiamos la copia de seguridad en la raíz del sistema y la  descomprimimos al igual que en el punto 1. En total podemos tener el  sistema funcionando otra vez (dependiendo del soporte donde tengamos la  copia de seguridad y de la velocidad del equipo) en unos 15 minutos.  Esta es una más de las ventajas que tiene Linux sobre Windows.  

En el caso de copias de Seguridad más depuradas, existen una gran  cantidad de aplicativos como Data Protector, Bacula, Taper, Dump y más.  Sin embargo en el tema de los respaldos de seguridad lo importante no es  utilizar el que nos digan que es el mejor, ya que normalmente suelen  ser los más complejos y complicados, sino que lo que utilicemos funcione  y nos sintamos cómodos con su funcionamiento. Lo encontrado aquí es  solo una pequeña muestra de todo el universo de aplicaciones que podemos  encontrar. Recordemos también que en este caso existen hasta personas  especializadas en estos temas de respaldo y almacenamiento de data,  quienes tienen una responsabilidad inmensa en grandes corporaciones, así  como en el mantenimiento y funcionamiento de las infraestructuras  informáticas más grandes y complejas del mundo. Sin embargo espero que  lo aprendido aquí te sirva de manera que no dejes al azar tú trabajo y  te evites un muy mal rato solo por no ejecutar unos simples comandos y  esperar unos minutos.