CPIO to LZ Converter
FileFlip converts CPIO to LZ entirely inside your browser, using libarchive compiled to WebAssembly. The file is never uploaded to a server: it is read off your disk, converted on your own machine, and saved back by the browser. That means no file-size limit, no queue and no account.
How do I convert a CPIO file to LZ?#
- Drop your CPIO file onto the converter at the top of this page, or click it to pick one from your computer. You can add as many as you like.
- Leave the target set to LZ and the conversion starts on its own. FileFlip downloads 1.0 MB of WebAssembly the first time and nothing after that, then runs libarchive on your own machine.
- Save the LZ file. Your browser writes it straight to your downloads folder, because there was never a server holding it.
Does converting CPIO to LZ lose quality?#
No. Converting CPIO to LZ does not touch the files inside the archive. Each member is read out and written back byte for byte, so only the wrapper around them changes and nothing is recompressed.
Is it safe to convert CPIO files online?#
Yes, because nothing is uploaded. FileFlip converts CPIO files inside the browser tab you already have open, using WebAssembly builds of the same engines a desktop converter would install. Your file is read from your own disk into the page's memory, and no request carrying it is ever made.
You do not have to take that on trust. Open your browser's network panel, run a conversion, and you will see the engine come down and your file go nowhere. There is no upload, no server-side copy, no retention window, and no account tied to what you converted.
How FileFlip works lists every engine, its version and its download size, and shows how to check for yourself that nothing leaves your machine.
What CPIO to LZ actually does to the file#
Converting CPIO to LZ runs on libarchive, downloads 1.0 MB of WebAssembly the first time and nothing after that, copies the archived files through unchanged, keeps file contents.
| Engine | libarchive |
|---|---|
| Conversion path | 2 steps: CPIO → the unpacked files → LZ |
| Downloaded to your browser | 1.0 MB, once, then cached by your browser |
| Quality | Lossless, contents copied unchanged |
| You get back | One file |
| Where it runs | In a background worker, so the page stays responsive |
What survives the conversion
| What is in the file | This conversion | Why |
|---|---|---|
| File contents | Kept | Carried through into the converted file. |
| File timestamps | Sometimes | Survives for some files and not others. |
| File permissions | Sometimes | Survives for some files and not others. |
Worth knowing before you start:
- the output is a PAX tar archive inside the compressor, not a single compressed stream
- every entry is extracted into memory before anything is written, so a very large archive can exhaust it
What is a CPIO file?#
A CPIO file is a Unix archive produced by the cpio utility, storing a sequence of files with their Unix permissions and ownership one after another with no compression of its own.
Use cpio when building or inspecting an initramfs image or an RPM payload, since both specifically expect a cpio archive rather than tar.
Convert a CPIO archive to tar when the files need to go somewhere that expects the more common format, since tar is understood by nearly every archive tool.
What is an LZ file?#
An LZ file is a single stream of data compressed with lzip, an LZMA-based command-line compressor that Antonio Diaz Diaz released in 2008 as a long-term-archival alternative to gzip, bzip2 and xz.
Pick lzip when an archive needs to survive years of storage or transmission and the ability to partially recover a damaged file matters more than having a GUI tool handle it.
Convert an LZ file to gzip or zip when it needs to open on a system whose tools stop at the common formats, which is most of them.
CPIO to LZ questions people ask#
What is a CPIO file used for today?
A CPIO file is a Unix archive most commonly found in two places today: the initramfs image the Linux kernel unpacks early in boot, and the payload of an RPM package. Outside those two roles it has mostly been replaced by tar.
Why does an initramfs use cpio instead of tar?
Linux's kernel unpacks the initramfs cpio archive itself before any userspace tools are available, and cpio's simpler, more compact header format was easier to support directly in the kernel than tar's. The specific variant used is called newc, an ASCII-header cpio format.
How do I get the files out of an RPM package's cpio payload?
An RPM file's payload is a compressed cpio archive sitting after the package's header, and the standard way to reach it is to pipe rpm2cpio through cpio -idmv, which extracts the files without installing the package.
What's the difference between LZ and ZIP files?
An LZ file holds a single stream compressed with lzip, not a container of separate files like a ZIP. To pack more than one file as lzip, they need to be combined into a tar archive first and the result compressed as a .tar.lz.