From 89c02db639b0ae581c3240f66e79deff578f98e3 Mon Sep 17 00:00:00 2001 From: sergio Date: Fri, 7 Aug 2026 15:06:26 -0400 Subject: [PATCH] =?UTF-8?q?respaldo:=20rsync=2024=20(ficheros=20desapareci?= =?UTF-8?q?dos)=20no=20es=20un=20fallo=20=E2=80=94=20es=20podar=20mientras?= =?UTF-8?q?=20se=20sube?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El bucle de reintentos trataba el 24 como «error que no es de red» y habría PARADO el respaldo entero. Pero 24 significa que ficheros del origen desaparecieron durante la transferencia, que en este proyecto es una combinación NORMAL: el respaldo dura ~19 h y `store-gc.sh` es la válvula del disco, así que podar mientras se sube va a pasar. Y pasaría justo cuando el disco aprieta, o sea cuando menos conviene quedarse sin copia. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/respaldo-storagebox.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/respaldo-storagebox.sh b/scripts/respaldo-storagebox.sh index 5c6c6363..fd9135cb 100755 --- a/scripts/respaldo-storagebox.sh +++ b/scripts/respaldo-storagebox.sh @@ -84,6 +84,13 @@ reintentar() { rc=$? case "$rc" in 10|12|23|30|35|255) ;; # red / pipe roto / timeout: insistir + # 24 = «ficheros de origen desaparecieron durante la transferencia». NO es un fallo: pasa + # cuando `store-gc.sh` poda artefactos superados mientras el respaldo corre, que es una + # combinación NORMAL en este proyecto (el respaldo dura ~19 h y la poda es la válvula del + # disco). Sin esta línea el bucle lo tomaría por «error que no es de red» y PARARÍA el + # respaldo entero por algo inofensivo — y encima justo cuando el disco aprieta, que es cuando + # menos conviene quedarse sin copia. + 24) ;; *) echo "!! $etiqueta: error $rc que NO es de red — no reintento"; return "$rc" ;; esac if [ "$intento" -ge 40 ]; then