Cómo hacer respaldos con WinRAR 5

Más
9 años 8 meses antes - 9 años 8 meses antes #1 por Passenger
Cómo hacer respaldos con WinRAR 5 Publicado por Passenger
Aquí les dejo una sugerencia para hacer sus respaldos usando la herramienta WinRAR desde la linea de comandos.

La idea general es tener un pequeño script que haga un respaldo de cierto directorio creando un archivo .RAR en una ruta diferente. Como pueden suponer, el rendimiento es mucho mejor si el directorio origen está en un disco diferente al directorio destino. En mi caso, uso este método para respaldar un área de trabajo que tiene alrededor de un millón de archivos a un disco duro 3.5" dedicado para respaldos montado en una bahía hot-swap.

Preparativos:

1. Bajar la utileria WinRAR version 5 mas nueva que exista e instalarla.
2. Crear un directorio destino para almacenar los respaldos.
3. Crear un script con extensión .CMD con el siguiente contenido:
Code:
set bklog=%date:~6,4%%date:~3,2%%date:~0,2% rar a -ac -htb -m5 -ma5 -md1024m -mt8 -r -s R:\destino\respaldo_%bklog% origen

Una vez creado, pueden iniciar el respaldo haciendo click en el script .CMD que crearon. A continuación una explicación del script linea por linea:
Code:
set bklog=%date:~6,4%%date:~3,2%%date:~0,2%

Esta línea crea una variable dentro del script que contiene la fecha en formato AAAAMMDD para ser usada como parte del nombre del archivo destino.
Code:
rar a -ac -htb -m5 -ma5 -md1024m -mt8 -r -s R:\respaldos\respaldo_desarrollo\wamp_%bklog% wamp

Aquí se ejecuta la versión shell de WinRAR con los siguientes parámetros para obtener el mejor rendimiento:

aEl comando a es para indicar que deseamos agregar archivos
-htbEste switch activa el uso de checksums BLAKE2, que acelera los procesos de compresión y extracción
-m5Utiliza el nivel máximo de compresión
-ma5Activa el algoritmo RAR5, es igual o mejor que 7-Zip y mucho, mucho mas rápido
-md1024mEspecifica el tamaño del diccionario en 1GB (máximo permitido). Es usado para la detección de contenido duplicado y optimizar la compresión
-mt8Especifica el uso de 8 threads (cuando sea posible usar multi-cores). Cambia el número de acuerdo a tu CPU.
-rIncluye archivos dentro de los directorios recursivamente
-sCrea un "Solid Archive", los archivos serán organizados por tipo para eficientar la detección de archivos duplicados y reducir el tamaño final
R:\destino_%bklog%El nombre del archivo destino, utilizando la variable de fecha como parte del nombre
origenEl directorio origen que se desea respaldar

Vale la pena mencionar que el método con "Solid Archives" reduce el tamaño del .RAR final pero tiene dos inconvenientes: Si el archivo .rar se daña será imposible extraer archivos sueltos pues la cadena de datos debe estar íntegra, y para extraer un sólo archivo hay que procesar todos los anteriores. Lo mismo aplica para 7-Zip pero la verdad es que no tiene impacto pues lo que a 7-Zip le puede tomar horas, WinRAR lo hace en minutos. En cualquier caso, si quieren hacer un archivo mas "tradicional" tan solo eviten el switch "-s".

El nuevo formato RAR5 de WinRAR es fenomenal, para que se den una idea: Comprimir el directorio (~ 30GB) le toma a 7-Zip varias horas, WinRAR lo hace en minutos. Extraer un archivo de 7-Zip requiere un area temporal practicamente del mismo tamaño que el respaldo mientras que WinRAR lo hace sin problemas y mucho mas rápido. En tamaños también gana WinRAR: 7-zip lo deja en 5,115,664 KB y WinRAR en 5,109,711 KB
Última Edición: 9 años 8 meses antes por Passenger.

Por favor, Conectar o Crear cuenta para unirse a la conversación.

  • Diaboliquin
  • Desconectado
  • Navegador Platino
  • Navegador Platino
  • Todas hieren, la última mata.
Más
9 años 8 meses antes - 9 años 8 meses antes #2 por Diaboliquin
Respuesta de Diaboliquin sobre el tema Cómo hacer respaldos con WinRAR 5
Buena alternativa para quienes desean hacer respaldos con archivos por lotes.

Tengo un par de puntos:

1.- Hay que agregar a la variable de entorno PATH la ruta de instalación del Winrar (p. e. C:\Program Files\WinRAR), de otro modo al llamar a rar.exe ocurre un error de que no reconoce el nombre. La alternativa es poner rar.exe en la misma carpeta del CMD. Usando PATH podemos poner los CMD donde queramos.

2.- Ya que estamos hablando de respaldos, lo que importa es la integridad de los datos, después la eficiencia del espacio que ocupa el respaldo. Yo agregaría el parámetro -rr N donde N es el porcentaje de datos de recuperación, usando el mínimo recomendado (3%) en mis pruebas no agregó significativamente más tiempo. Así disminuyes uno de los inconvenientes del "Solid archives".

Como dato anecdótico, extrañamente cuando comprimí una carpeta (la del juego The Room) usando tús instrucciones, rar fue más rápido que 7-zip, en unos 15 segundos. Pero 7-zip redujo en 35 megas más que rar (sin usar el parámetro de porcentaje de recuperación). 410,930,578 bytes (7zip) vs 447,177,093 bytes (rar).


Saludos
Última Edición: 9 años 8 meses antes por Diaboliquin.
Gracias de: Passenger

Por favor, Conectar o Crear cuenta para unirse a la conversación.

Más
9 años 8 meses antes #3 por Passenger
Respuesta de Passenger sobre el tema Cómo hacer respaldos con WinRAR 5
Gracias por los tips Diaboliquín!

Por favor, Conectar o Crear cuenta para unirse a la conversación.

Tiempo de carga de la página: 0.478 segundos