Capítulo 4: Instalación de Ubuntu server
4.10. Back in Time, copias de seguridad al estilo Time Machine de Apple
En Ubuntu disponemos de diferentes herramientas para realizar copias de seguridad pero, sin duda, unas de las más interesantes es Back In Time. Se trata de una herramienta sencilla y muy potente que realiza su trabajo tomando instantáneas (snapshots) del directorio (o directorios) que nosotros indiquemos en la configuración.
Back In Time está inspirado en dos herramientas anteriores llamadas Timevault y Flyback, de las que hereda muchas de sus características.
Puedes consultar la página del proyecto en GitHub (https://github.com/bit-team/backintime) o su documentación oficial, en https://backintime.readthedocs.io.
Su objetivo es realizar copias de respaldo al estilo de la famosa herramienta Time Machine de Apple (aunque es más modesta), ahorrando espacio y evitando que el administrador deba preocuparse de su funcionamiento. Las copias se hacen de forma automática y periódica, pero sólo cuando haya cambiado algo en los directorios especificados. Después, el usuario puede elegir qué copia quiere restaurar según el momento en el que se hizo.
Esto hace que la herramienta sea apropiada tanto para un uso profesional como personal. Además, tanto su documentación como su interfaz de usuario son claras e intuitivas, lo que permite utilizarla incluso a usuarios con poca experiencia.
Cómo realiza su magia Back In Time
No es necesario ser un experto en el funcionamiento interno de Back In Time para usarlo. Sin embargo, una revisión superficial ayudará a comprender mejor sus beneficios.
Lo primero que hace es usar el comando rsync para comprobar qué ha cambiado desde la instantánea anterior.
Si hay cambios, aplica dos acciones consecutivas:
-
Crea una copia de todo el contenido de la instantánea anterior sobre la instantánea nueva donde, en realidad, cada archivo es un enlace duro al archivo original (esto lo consigue, sencillamente, usando el comando cp).
-
Copia cada archivo que haya cambiado sobre su correspondiente enlace duro, creado en el punto anterior y lo configura como de sólo lectura. Esto hace que sólo los archivos modificados ocupen espacio adicional. Para lograrlo, vuelve a utilizar el comando rsync.
Por último, en la carpeta correspondiente a cada instantánea, se crea un sencillo archivo CSV, llamado fileinfo.bz2, que contiene los permisos, propietario y grupo originales de cada archivo.
Como podemos imaginar, se podría recuperar cualquier versión de los archivos (aunque en modo solo lectura) recorriendo la estructura de archivos que contienen las instantáneas. No obstante, es preferible usar la función de restauración del programa, ya que renombra el archivo original (añadiendo .backup. y la fecha) en lugar de borrarlo; esto aumenta la seguridad del proceso.
Además, también se utiliza rsync para la restauración, lo que evita que se pierda tiempo recuperando archivos que no han sufrido cambios desde que se hizo la copia.
Por último, se utiliza el archivo fileinfo.bz2 para restablecer los valores originales en cuanto a permisos, propietario y grupo.
Lamentablemente, la herramienta de restauración de instantáneas sólo está disponible bajo la interfaz gráfica.
Si el ordenador se apaga o reinicia mientras Back In Time está creando una nueva instantánea, éste recuerda por dónde va y la retoma cuando vuelva a ser ejecutado o cuando llegue el momento de crear una nueva imagen, según la configuración.
Para aprender más sobre la instalación y el funcionamiento de Back In Time, puedes revisar alguno de los artículos que ya hemos publicado en SomeBooks.es:
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Ubuntu 14.04 LTS