restic: excluir carpetas (node_modules, cachés) y qué pasa si te equivocas en el patrón
2026-10-18
Una copia de tu carpeta personal incluye cosas que no merece la pena guardar: node_modules, cachés, descargas temporales. Excluirlas ahorra espacio y tiempo, pero un error en el patrón tiene una consecuencia incómoda que la prueba confirmó: restic no avisa.
Condiciones: restic 0.16.4, repositorio local, contraseña desechable y datos sintéticos: una carpeta node_modules con un fichero aleatorio de 5 MiB, una carpeta cache con otro de 3 MiB y una marca CACHEDIR.TAG, más dos ficheros de texto pequeños. Script: tools/test-restic-exclude.sh. No se probó nada en Windows ni con rutas con comodines complejos.
Sin exclusiones
restic -r REPO backup ~/datos
Resultado: 5 ficheros nuevos, 8,005 MiB añadidos al repositorio. Entran los dos ficheros pesados.
Con --exclude y --exclude-caches
restic -r REPO backup ~/datos --exclude node_modules --exclude-caches
El snapshot resultante contiene solo 3 ficheros: informe.txt, main.py y la propia CACHEDIR.TAG. Dos detalles: --exclude-caches deja fuera el contenido de la carpeta marcada, pero conserva el fichero marca; y el segundo backup añadió solo 2,79 KiB porque restic ya tenía los datos de los ficheros restantes de la primera copia (deduplicación). No se pueden comparar tamaños de dos copias consecutivas sin tenerlo en cuenta; para saber cuánto ocupa una exclusión, hazla en un repositorio nuevo.
El patrón mal escrito
Se escribió en un fichero de exclusiones node_module (sin la s) y se lanzó restic backup --exclude-file excl.txt --dry-run. Respuesta: Files: 2 new y Would add to the repository: 708 B, sin ningún aviso ni error: el patrón no coincidía con nada y restic lo aceptó igual. Dicho de otro modo, un patrón equivocado hace que se guarde de más, y al revés, uno demasiado amplio hace que falte algo, también en silencio. (En esta prueba solo se vio el primer caso.)
Hábito que lo evita
- Antes de programar la copia, lanza
backup --dry-run -vvy revisa la lista de ficheros que entrarían (la opción--dry-runsí se usó en la prueba; el detalle de-vvno se comprobó). - Tras la primera copia,
restic ls latesty comprueba que lo que importa está y lo que no, no. - Haz una restauración de prueba de un fichero concreto (cómo): es la única forma de saber que una exclusión no se llevó algo valioso.
Este artículo no contiene enlaces de afiliado.