Realizar backups con tar en Linux

Siguiendo con el tema del post anterior (Archivado y compresión de archivos y directorios en Linux), en esta ocasión trataremos uno muy relacionado: cómo realizar backups con tar en Linux. Si bien existen otras herramientas más potentes y versátiles para realizar copias de respaldo en Linux, todo administrador de sistemas debe conocer tar como la palma de su mano.

Realizar backups con tar

Es probable que si somos responsables por realizar backups de un servidor de archivos y dispongamos de espacio limitado para guardar nuestras copias de respaldo, querramos excluir ciertos tipos de archivos multimedia para agilizar el proceso. Si un usuario (o varios) comete la imprudencia de guardar en su directorio asignado toda la discografía de su grupo de rock favorito, no deberíamos respaldar esa información (incluso hay empresas que tienen políticas al respecto).

Una solución MUY elemental (pero útil) consiste en excluir del backup todos aquellos archivos con extensión .mp3, mp4, .avi, etc. Digo que es una solución muy elemental ya que un usuario astuto podía cambiar la extensión de los archivos multimedia, lo cual «engañaría» nuestro plan actual y haría necesaria una estrategia diferente.

El siguiente comando ignorará todos los archivos dentro de /home  que posean las extensiones mencionadas anteriormente:

[pastacode lang=»bash» manual=»tar%20-czvf%20mibackup.tar.gz%20%2Fhome%2F*%20–exclude%3D’*mp3’%20–exclude%3D’*mp4’%20–exclude%3D’*avi'» message=»» highlight=»» provider=»manual»/]

Aunque el comando anterior cumple con el requisito estipulado, es más fácil de mantener una lista de extensiones a excluir por separado e indicarle a tar que ignore todos los archivos y directorios que cumplan con las mismas.

Para probar esta técnica, crearemos un archivo llamado exclusiones.txt en el directorio actual. En el mismo insertaremos -una por línea- las extensiones que deseamos ignorar en nuestros backups:

[pastacode lang=»bash» manual=»echo%20%22*mp3%22%20%3E%20exclusiones.txt%0Aecho%20%22*mp4%22%20%3E%3E%20exclusiones.txt%0Aecho%20%22*avi%22%20%3E%3E%20exclusiones.txt» message=»» highlight=»» provider=»manual»/]

Tal como lo mencionamos en Crear y borrar archivos y directorios en Linux, debemos tener cuidado de usar el operador > únicamente en el primer comando. Caso contrario, sobreescribiremos el contenido de exclusiones.txt al ejecutar los siguientes.

Ahora podemos lograr el mismo resultado que en el caso anterior al ejecutar cualquiera de los siguientes comandos (en lo personal, esta alternativa me resulta más fácil de recordar y mantener):

[pastacode lang=»bash» manual=»tar%20-czvf%20mibackup.tar.gz%20%2Fhome%2F*%20–exclude-from%3Dexclusiones.txt%0Atar%20-czvf%20mibackup.tar.gz%20%2Fhome%2F*%20-X%20exclusiones.txt» message=»» highlight=»» provider=»manual»/]

Espero que este post les sirva. ¡Hasta pronto!

 

Deja una respuesta