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.