Puede tener varias opciones de exclusión para tar, por lo que
$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
etc funcionará. Asegúrate de poner --exclude
antes los elementos de origen y destino.
Pregunta anterior con muchas respuestas, pero descubrí que ninguna era lo suficientemente clara para mí, por lo que me gustaría agregar mi intento.
si tiene la siguiente estructura
/home/ftp/mysite/
con los siguientes archivos/carpetas
/home/ftp/mysite/file1
/home/ftp/mysite/file2
/home/ftp/mysite/file3
/home/ftp/mysite/folder1
/home/ftp/mysite/folder2
/home/ftp/mysite/folder3
entonces, desea crear un archivo tar que contenga todo dentro de /home/ftp/mysite (para mover el sitio a un nuevo servidor), pero file3
es solo basura, y todo en folder3
tampoco es necesario, por lo que omitiremos esos dos.
usamos el formato
tar -czvf <name of tar file> <what to tar> <any excludes>
donde c =crear, z =zip y v =detallado (puede ver los archivos a medida que se ingresan, útil para asegurarse de que ninguno de los archivos que excluye se agregue). y f=archivo.
entonces, mi comando se vería así
cd /home/ftp/
tar -czvf mysite.tar.gz mysite --exclude='file3' --exclude='folder3'
tenga en cuenta que los archivos/carpetas excluidos están relativamente a la raíz de su archivo tar (he intentado la ruta completa aquí en relación con / pero no puedo hacer que funcione).
Espero que esto ayude a alguien (y a mí la próxima vez que lo busque en Google)
Posibles opciones para excluir archivos/directorios de la copia de seguridad usando tar:
Excluir archivos usando múltiples patrones
tar -czf backup.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 ... /path/to/backup
Excluir archivos usando un archivo de exclusión lleno con una lista de patrones
tar -czf backup.tar.gz -X /path/to/exclude.txt /path/to/backup
Excluir archivos usando etiquetas colocando un archivo de etiqueta en cualquier directorio que deba omitirse
tar -czf backup.tar.gz --exclude-tag-all=exclude.tag /path/to/backup
Puede excluir directorios con --exclude
para alquitrán.
Si desea archivar todo excepto /usr
puedes usar:
tar -zcvf /all.tgz / --exclude=/usr
En tu caso quizás algo como
tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir