Tecnología · GUÍA PRÁCTICA
¿tar muestra “Unexpected EOF”? Demuestra la integridad antes de extraer otra vez
Conserva los bytes, prueba por separado la compresión y la estructura tar, compara tamaño y hash con el origen y después reemplaza o recupera en cuarentena.

“Unexpected EOF” significa que el lector agotó los bytes recibidos antes de terminar la estructura o el miembro actual. Repetir la extracción no puede crear el sufijo ausente.
Conserva el archivo exacto, identifica las capas, compara tamaño y hash con una fuente confiable y reemplaza o recupera solo sobre una copia. Obtener algunos archivos no demuestra integridad.
Aislar los bytes exactos antes de reintentar
Copia o renombra el archivo sospechoso a una ruta de evidencia y registra bytes, hash, origen, comando de adquisición, hora y error completo. No vuelvas a extraer sobre el destino real.
En una tubería conserva ambos comandos y estados. Sin pipefail o equivalente, el éxito del consumidor puede ocultar la desconexión del productor.
Identificar cada capa por evidencia
Inspecciona tipo y bytes iniciales, y prueba aparte el envoltorio declarado. Usa gzip -t solo si los bytes son realmente gzip.
Después ejecuta tar -tf sobre una copia o mediante el descompresor correcto para separar un gzip dañado de un tar interior terminado antes de tiempo.
Demostrar integridad frente al productor
Obtén el número esperado de bytes y un hash desde una fuente confiable o desde el productor. Compara ambos antes de llamar reparación a otra descarga.
En copias por flujo captura estados de envío y recepción, tamaños y hashes en ambos extremos. Un código cero es evidencia más débil que bytes idénticos.
Separar marcador final y carga perdida
tar usa registros de 512 bytes y normalmente termina con bloques cero. Falta del marcador convencional no equivale a EOF dentro de una cabecera o carga pendiente.
--ignore-zeros solo continúa tras bloques cero; no fabrica carga ausente. Si se detiene dentro de un miembro, lo posterior falta y lo ya escrito es provisional.
Reemplazar o recapturar sin borrar evidencia
Descarga o transmite a un nombre temporal nuevo; valida capa, tamaño y hash confiable antes de reemplazar atómicamente el archivo sospechoso.
Si el productor es un sistema de archivos activo, congélalo o usa una instantánea. Un origen cambiante puede ser incoherente aunque la transferencia termine.
Recuperar solo en una copia y definir salida
Si el origen ya no existe, trabaja solo sobre un duplicado en cuarentena. Lista primero, extrae a un destino nuevo y valida cada resultado con registros independientes.
Termina solo cuando el reemplazo supera pruebas gzip y tar, coincide con tamaño o hash del origen y funciona en el flujo original. Marca el rescate como incompleto.
