Copias de seguridad de múltiples niveles

Las copias de respaldo simples que están explicadas en las secciones previas son frecuentemente adecuadas para uso personal o de pequeñas corporaciones. Para tareas mas complejas puede ser apropiado el uso de copias de seguridad de múltiples niveles.

El método simple tiene dos niveles de copias: total e incremental. Es posible generalizar este método para cualquier número de niveles. Una copia completa sería el nivel 0, y los niveles diferentes de copias incrementales 1, 2, 3, etc. Por cada nivel de copia incremental se copia todo lo que haya sido modificado desde la copia previa del mismo nivel o de uno menor.

El propósito de este procedimiento es mantener un histórico de copias (backup history) amplio de manera económica. En el ejemplo de la sección previa, el histórico del backup se remonta a la copia de respaldo completa previa (una semana). Si agrega mas cintas este tiempo puede ser extendido, aunque el costo (monetario) es bastante alto, y solo puede ampliar el histórico en una semana por cada cinta nueva. Aún así, un histórico mas amplio es muy útil, ya que los archivos que se dañan o son borrados pueden pasar desapercibidos por un largo período de tiempo. Por lo que recuperar al menos una versión no muy actual de un archivo es mejor que nada.

El histórico de copias de seguridad multiniveles puede ser extendido de una forma más económica. Por ejemplo, en caso de que contemos con 10 cintas disponibles, podemos utilizar las cintas 1 y 2 para las copias mensuales (primer Viernes de cada mes), las cintas 3 a 6 para las copias semanales (otros Viernes del mes; note que utilizamos 4 cintas debido a que pueden existir cinco Viernes en un mes), y las cintas 7 a 10 para las copias diarias (Lunes a Jueves). Con solo cuatro cintas más que el caso anterior, estamos en condiciones de extender de dos semanas a dos meses el histórico de los backups. Es cierto que no podemos recuperar todas las versiones de cada archivo durante esos dos meses, pero que sea posible recuperarlo es normalmente suficiente.

La Figura 12.1, “A sample multilevel backup schedule.” muestra el nivel de backup que es utilizado cada día, y desde cuales copias se pueden recuperar archivos.

Figura 12.1. A sample multilevel backup schedule.

A sample multilevel backup schedule.

Los niveles de backups pueden también ser utilizados para minimizar el tiempo de restauración de los sistemas de archivos. En caso de que existan muchas copias incrementales con números de niveles de crecimiento muy grande, es muy probable que necesite recuperar de todas ellas para reconstruir el sistema de archivos entero. Sin embargo, puede utilizar números de niveles que no sean monótonos, y mantener bajo el número de copias que debe utilizar en cada restauración.

Para minimizar el número de cintas necesarias en cada recuperación, puede utilizar un un número de nivel mas chico por cada cinta incremental. Sin embargo, el tiempo necesario para realizar las copias crece (en cada backup se debe copiar todo lo que ha sido modificado desde la última copia total). Existe un mejor esquema sugerido por la página de manual de dump, el cual es presentado en la tabla (niveles-de-copias-de-respaldo-eficientes). Utilizar la siguiente sucesión de niveles de copias de seguridad: 3, 2, 5, 4, 7, 6, 9, 8, 9, etc. Este esquema mantiene bajo los tiempos de copia y de recuperación, y note que lo máximo que se copia son dos días. El número de cintas a ser restauradas depende del intervalo entre las copias completas, pero ciertamente será menor que el de los esquemas mas simples.

Tabla 12.1. Efficient backup scheme using many backup levels

TapeLevelBackup (days)Restore tapes
10n/a1
2311, 2
3221, 3
4511, 2, 4
5421, 2, 5
6711, 2, 5, 6
7621, 2, 5, 7
8911, 2, 5, 7, 8
9821, 2, 5, 7, 9
10911, 2, 5, 7, 9, 10
11911, 2, 5, 7, 9, 10, 11
...911, 2, 5, 7, 9, 10, 11, ...

Un esquema elegante puede reducir la cantidad de trabajo necesaria, pero esto no significa que existan menos cosas a seguir. Usted decide si vale o no la pena.

dump tiene soporte para copias multiniveles, pero para tar y cpio debe ser implementado con scripts del shell.