Introducción
En el ecosistema GNU/Linux, cpio constituye una herramienta fundamental de empaquetado y manipulación de flujos de datos, indispensable tanto en esquemas de respaldo tradicionales como en la estructuración interna del initramfs del kernel. Este manual aborda en detalle su comportamiento operativo a través de tres modalidades clave: empaquetado hacia salida (copy-out con -o), extracción desde entrada (copy-in con -i) y transferencia directa entre rutas (copy-pass con -p), presentando escenarios reales verificados en Ubuntu.
1. Despliegue de herramientas y generación de archivos contenedores (copy-out)
Para iniciar el laboratorio en Ubuntu, aseguramos la actualización del repositorio local e incorporamos la utilidad cpio al sistema operativo.

A continuación, preparamos un entorno aislado de pruebas creando un directorio de origen y poblándolo con documentos de prueba.

El principio de funcionamiento de cpio se basa en la canalización Unix: lee listas de rutas a través de la entrada estándar (stdin) y canaliza el flujo empaquetado resultante hacia la salida estándar (stdout) o desempaqueta directamente desde ella.
Mediante una tubería, transferimos el listado de elementos del directorio actual hacia cpio para compilar un único contenedor denominado archive.cpio.
⚙️ [Parámetros operacionales esenciales]
-o (--create) : Activa la modalidad copy-out, generando un archivo contenedor a partir de los nombres leídos en stdin.-i (--extract) : Inicia la modalidad copy-in, diseñada para desempaquetar o inspeccionar el contenido de un contenedor existente.-p (--pass-through) : Ejecuta la modalidad copy-pass, permitiendo duplicar árboles de directorios directamente hacia otro destino sin generar un archivo intermedio.-v (--verbose) : Muestra detalladamente en pantalla cada elemento conforme es procesado por el comando.-t (--list) : Realiza una lectura de solo consulta para listar el inventario del contenedor sin escribir nada en disco.-d (--make-directories) : Instruye al proceso para recrear automáticamente las rutas y subdirectorios ausentes durante la restauración.-u (--unconditional) : Fuerza la sobrescritura incondicional si ya existen ficheros con nombres idénticos en el destino.-H (--format) : Define de manera explícita el estándar de cabecera del contenedor (por ejemplo: crc, newc, tar, entre otros).

Confirmamos la creación correcta del fichero empaquetado inspeccionando su tamaño en disco y atributos básicos.

2. Inspección preventiva y recuperación de elementos (copy-in)
Antes de proceder con cualquier extracción en el disco, resulta aconsejable auditar el contenido interno y la metadata de seguridad de archive.cpio. Al combinar -t con -v, leemos el flujo desde la entrada estándar para comprobar los registros archivados sin alterar el sistema de ficheros.

Establecemos un directorio limpio con el propósito de aislar la fase de recuperación y evitar colisiones de nombres.

Ejecutamos la extracción hacia la ubicación actual aplicando cpio -idv. El modificador -d garantiza que cualquier estructura anidada se construya sobre la marcha, mientras que -v reporta cada elemento extraído en tiempo real.

Verificamos la integridad de los datos restaurados listando todos los ficheros con su detalle de atributos y permisos.

3. Réplica veloz de estructuras y jerarquías completas (copy-pass)
Para evaluar la capacidad de clonación directa de estructuras complejas, agregamos un nivel de subdirectorios junto con contenido adicional dentro del árbol fuente.

Definimos una nueva carpeta que actuará como receptor de la jerarquía replicada.

Situados en la raíz del origen, empleamos find con el modificador -depth para recorrer el árbol procesando primero los elementos internos y canalizamos las rutas hacia cpio -pdmv. Este método transfiere directamente los archivos preservando marcas temporales (-m), creando directorios ausentes (-d) e informando de cada operación (-v), todo ello sin incurrir en la creación de un archivo de respaldo intermedio.

Efectuamos un barrido recursivo sobre la carpeta de llegada para constatar que tanto los niveles de carpetas como sus respectivos ficheros se hayan clonado fielmente.

4. Estándar industrial SVR4 (newc) y compactación avanzada con gzip
El estándar de cabecera newc (SVR4 portable con sumas de verificación) es el formato oficial empleado en imágenes de arranque initramfs en Linux. Para generar un contenedor de este tipo, recolectamos los ficheros mediante find, especificamos -H newc en cpio y comprimimos el flujo resultante con el nivel máximo de compactación de gzip (-9), obteniendo initramfs_sample.cpio.gz.

Corroboramos que la cabecera binaria corresponda efectivamente a un flujo comprimido válido empleando la utilidad de identificación de archivos.

Habilitamos una ruta de trabajo dedicada para llevar a cabo la descompresión y el desempaquetado simultáneo.

Para procesar este formato de forma continua sin escribir un archivo descomprimido intermedio, dirigimos la salida descomprimida de zcat directamente hacia cpio -idv, recuperando los datos en un solo paso eficiente de canalización.

Concluido el flujo de restauración, corroboramos que la totalidad de los archivos —incluyendo posibles entradas ocultas— se encuentren plenamente operativos en el directorio final.

La versatilidad de cpio radica en su perfecta integración con la arquitectura de tuberías de Linux. Al dominar estas tres modalidades operativas y sus formatos estandarizados, dispondrá de una técnica sólida y liviana para labores de administración, clonación de datos y manipulación de imágenes del sistema.