Los backups son algo a lo que no se suele prestar mucha atención … lamentablemente. Todos sabemos que la informática no es «una ciencia exacta», es decir, que falla mucho. Pueden ser fallos de hardware (se te estropea un disco, una fuente de alimentación, …), un fallo de software (bugs), de firmware (del disco duro, del procesador, …), un fallo humano (te asustas y apagas de golpe) o bien una combinación de todas o algunas de las anteriores situaciones.
Por eso es muy importante hacer backups o copias de seguridad. Pero encontrar una herramienta que nos guste para hacer backups es complicado ya que hay muchas y cada uno tenemos nuestros gustos, preferencias, manías y forma de hacer las cosas. En el mundo corporativo, por ejemplo, me gusta ATEMPO. No es software libre (ni es abierto), pero creo que hace muy bien su trabajo y la gente de ATEMPO es muy técnica. Pero, ¿y en casa? ¿Y algo basado en sotware libre?
No es fácil responder a estas dos preguntas. Yo en casa uso rsync porque es una herramienta muy potente y fácil de usar si te gusta la línea de comandos. En algunos clientes también hemos implementado rsync, pero no como herramienta de backup. Yo en casa uso rsync porque es una herrmamienta que me permite copiar de un disco a otro sólo los cambios, sin copiar ficheros enteros, luego tarda poco tiempo. Como he dicho, es una herramienta en línea de comando y tiene otro inconveniente: realiza mucho I/O (operaciones de entrada/salida) por lo que machaca mucho los discos y puede provocar cuellos de botella.
Hay muchas herramientas de código abierto para hacer copias de seguridad, tenemos bácula, Amanda, tar, cpio, afio, backupPC, cobian backup, … Pero voy a escribir sobre dar/kdar hoy ya que me ha gustado y veo que se habla poco de estas herramientas.
dar es una herramienta en línea de comandos que no recomiendo a los que tienen poca experiencia con la línea de comandos. Es una herramienta con muchas opciones y que puede confundir al usuario poco experimentado. Menos mal que alguien desarrolló kdar. kdar es una interfaz gráfica basada en Qt para dar. Es una interfaz que facilita mucho la labor al usuario nuevo (y a los que somos un poco vagos ;). Las características de dar son:
- filtros: dar puede hacer copias de seguridad de un sistema de ficheros completo o de un único fichero, mediante los filtros, se pueden incluir o excluir ficheros. Esto es útil, por ejemplo, cuando no queremos hacer backups de ficheros temporales (los acabados en ~) o no queremo hacer backup de determinados directorios (/tmp, /proc, …).
- backups diferenciales: dar permite hacer backups completos o diferenciales. Un backup completo (como su nombre indica) hace un backup de todo. Un backup diferencial hace un backup sólo de aquellos ficheros que han cambiado desde el último backup que tenemos como referencia y de ficheros nuevos.
- slices: al hacer una copia de seguridad, puede que el archivo creado no quepa en un único dispositivo de copia de seguridad (generalmenete una cinta) por lo que las herramientas de backup permiten que ese archivo ocupe más de un dispositivo de backup (más de una cinta). Pues dar tmbién lo permite. En el caso de dar, estos dispositivos de backup pueden ser: floppy disk, CD-R, DVD-R, CD-RW, DVD-RW, Zip, Jazz, etc … Una curiosidad que tiene dar es que al crear los slices, permite al usuario hacer lo que considere oportuno con ellos, es decir, los puede copiar a un CD o enviarlos por correo, no lo escribe directamente al dispositivo.
- compresión: dar puede usar compresión la hora de crear el archivo aunque por defecto no se usa compresión. Por el momento sólo se soportan gzip y bzip2 aunque se tiene previsto añadir otros algoritmos.
- acceso directo: dar no lee el archivo completo para extraer un fichero de él lo cual hace que el proceso de recuperación se más rápido :) ¿Cómo consigue esto? Muy fácil, lo primero que hace es leer el catálogo, encuentra el fichero que quieres restaurar y lo extrae. En el caso de usar slices, dar solicitará el slice que contiene el fichero que le has pedido y no todos los slices.
- atributos extendidos: dar es capaz de hacer backup y restaurar atributos extendidos. Puede trabajr con todos los atributos extendidos o sólo aquellos que le indiquemos.
- verificación: gracias al uso de CRC (cyclic redundancy checks), dar es capaz de detectar si ha habido corrupción de algún fichero en el archivo. Si se da el caso, dar será capaz de extraer los ficheros restantes.
- scrambling: permite usar una contraseña para proteger el archivo. No es un método muy seguro, pero es un primer nivel de seguridad.
- cifrado fuerte: si no nos gusta usar el scrambling por su debilidad, podemos usar el algoritmo blowfish para cifrar el archivo completo.
- compresión selectiva: gracias a esta característica, le podemos decir a dar qué ficheros queremos comprirmir y qué ficheros no queremos comprimir. Esto es útil si vamos a hacer un backup de todos nuestros datos y no queremos que nos comprima ficheros de audio, vídeo, imágenes o ficheros ya comproimidos.
dar tiene muchas más características que podéis ver en su web. Sólo he querido mencionar algunas de ellas.
Vamos ahora con kdar. Como he comentado antes, kdar es una herramienta gráfica que hace de front-end o interfaz a dar facilitando la vida del usuario. Lo primero que debemos hacer es configurarlo, más que nada porque nos permite definir el directorio que vamos copiar por defecto. Así nos evitamos tener que andar navegando por el árbol de directorios cada vez que arrancamos kdar. Una vez configurado dar/kdar, podemos proceder a hacer una copia de seguridad. En la captura que muestro a continuación vemos a la izquierda las diferentes opciones de configuración como son cifrado, compresión, … y en la parte principal de la ventana los valores que podemos modificar. En este caso vemos la ruta donde vamos a guardar el archivo o backup y la ruta donde vamos a guardar el log del backup que hemos hecho.
Una vez configurado todo, sólo tenemos que crear nuestro primer archivo o backup:
En la captura anterior podemos ver que nos pide un nombre para el archivo. Esto es útil ya que podemos tener varios backups de varios usuarios o de varias máquinas y queremos diferenciarlos.
En la captura que vemos a continuación podemos ver que nos permite hacer una copia diferencial o no. Si es la primera vez que hacemos una copia de seguridad, no debemos marcar este checkbox, si ya es la segunda copia de seguridad que hacemos sin modificar ninguna opción, es interesante hacer una copia de seguridad diferencial ya que ahorraremos espacio y tiempo.
En la captura anterior podemos ver que kdar nos permite simular la copia de seguridad. Esto es útil si es la primera vez que estamos usando esta herramienta para evitar hacer cosas mal.
Como podemos ver, el proceso ha sido muy rápido y pocos los pasos para poder hacer nuestro backup. Si ahora quisiéramos «ver» ese backup, no tendríamos más que abrirlo para ver lo que hay dentro, como se mestra en la siguiente captura de pantalla. Una vez abierto, podemos pinchar con el botón derecho sobre cualquier fichero y decidir si queremos restaurarlo o verificarlo, por ejemplo.