Al empacar para salir de vacaciones hay cosas que decidimos llevar y otras que no. Cuando empaquetamos y comprimimos directorios en Linux sucede lo mismo. Un cierto directorio puede tener subdirectorios y archivos que nos interesen y otros que no deseamos incluir en un tarball. ¿Cómo hacemos en este caso? Seguí leyendo para aprender cómo excluir archivos con tar.
Este post te va a servir cuando quieras hacer backups o si necesitás enviar contenido específico de manera fácil y rápida.
Excluir archivos con tar
Para empezar, la opción que nos interesa es --exclude
. Para indicar qué queremos excluir podemos utilizarla tantas veces como queramos en el mismo comando. Por ejemplo, --exclude=/var/www/html --exclude=/etc/apache2/apache2.conf
se utilizaría para decirle a tar que no deseamos empaquetar el directorio /var/www/html ni el archivo /etc/apache2/apache2.conf.
A continuación, veamos un ejemplo concreto. En la Fig. 1 podemos ver los contenidos de los directorios nivelador y pruebas. Nos proponemos crear un tarball que incluya los contenidos de los mismos con la excepción de nivelador/presentacion1 y pruebas/dir/archivo2. A fin de que el comando no ocupe mucho espacio en la horizontal, con la barra \ y presionando Enter pasamos a una nueva línea sin ejecutar el comando:
tar czvf post.tar.gz \ nivelador pruebas \ --exclude=nivelador/presentacion1 \ --exclude=pruebas/dir/archivo2
Por haber incluido la opción v
(de verbose), podremos ver la lista de los contenidos respaldados. También podemos hacer lo mismo utilizando el comando tar tvf post.tar.gz
. Como vemos, excluir archivos con tar es sencillo. Lo mismo podemos hacer con directorios enteros.
Espero que este post les haya resultado útil e interesante. ¡Nos leemos en breve!
Te invitamos a conocer la propuesta completa de Carrera Linux Argentina para convertirte en un experto y completo sysadmin. En nuestro sitio web Aprender Linux podrás encontrar más detalles y contactarnos si te surgen preguntas o dudas. ¡Esperamos tu consulta!