Initializing... drag & drop files here
Supports: TAR.BZ2
.tar.bz2, .tbz2, or .tb2 archive, or click "+ Add Files" to browse. Batch uploads work — queue several archives and they all decompress in one pass..tar back). If you upload several archives, switch to Individual Archives to get a separate .tar per input, or keep Single Archive to merge their contents into one master tarball..bz2 suffix stripped (backup.tar.bz2 → backup.tar). No re-archiving happens — file headers, POSIX permissions, ownership, and modification timestamps inside the tar are preserved bit-for-bit..tar archive ready for tools that don't support bzip2 streams.A .tar.bz2 is two formats stacked: tar bundles files into one stream, then bzip2 compresses that stream using the Burrows-Wheeler transform, move-to-front coding, and Huffman coding on blocks between 100 kB and 900 kB. Converting to plain .tar removes the bzip2 layer while keeping the archive structure intact. Reasons people do this:
.tar saves significant CPU on every subsequent open. A 500 MB .tar.bz2 can take 10-30 seconds to list contents; the equivalent .tar lists in under a second.zstd -19 for faster decompression at similar ratios, or xz -9 for smaller files. kernel.org dropped bzip2 entirely in December 2013 and now ships kernels as .tar.gz and .tar.xz only — converting old kernel snapshots to plain tar is the first step in migrating to modern compression..tar.bz2 your tool must decompress everything before it. A plain .tar lets tools like tar --list, bsdtar -tvf, or libraries that mmap the archive seek directly to a file's header without scanning prior blocks.docker load accepts both, but custom registries and minimal Alpine/BusyBox environments sometimes ship without bzip2 support compiled in.bzip2 is single-threaded; pbzip2 and lbzip2 parallelize it, but they're not preinstalled everywhere. Stripping bzip2 once on a beefy machine, then distributing .tar files, avoids forcing every consumer to install parallel tooling.bunzip2 reports a CRC mismatch but partial data decompressed, saving the recovered bytes as a plain .tar lets tar --ignore-zeros salvage the readable members.tar -tvf archive.tar runs instantly on an uncompressed archive; on a 2 GB .tar.bz2 it can take a minute or more because every byte must pass through the bzip2 decoder on a single core.| Property | TAR.BZ2 (.tar.bz2 / .tbz2) |
TAR (.tar) |
|---|---|---|
| Compression | Bzip2 — BWT + MTF + Huffman, 100-900 kB blocks | None — raw concatenated file records |
| Typical size on source code | ~20-30% of uncompressed (better than gzip, worse than xz) | 100% (baseline, with 512-byte block padding) |
| Decompress speed | Slow — single-threaded BWT reverse is CPU-bound | Instant — no decoder |
| Multi-threaded by default | No (stock bzip2 is single-threaded; needs pbzip2/lbzip2) |
N/A |
| Random access | No — blocks must be processed sequentially | Yes — tool can seek to any file header |
| List contents speed (2 GB archive) | 30-90 seconds (full decompress on one core) | Under 1 second (header walk only) |
| Native on Windows 11 | Yes (via libarchive/tar.exe since build 17063+) | Yes (tar.exe built in) |
| Native on macOS / Linux | Yes (tar -xjf or auto-detect) |
Yes (tar -xf) |
| Stores POSIX permissions / symlinks | Yes (inside the tar layer) | Yes |
| Modern adoption | Declining — kernel.org dropped it in 2013 | Stable — universal archive substrate |
| You want to... | After this conversion you can... |
|---|---|
| Re-compress with xz (smaller files) | Use TAR to TAR.XZ — LZMA2 typically beats bzip2 by 10-25% on text |
| Re-compress with gzip (faster, broader compat) | Use TAR to TAR.GZ — slightly larger but decompresses 5-10x faster |
| Reverse the conversion (re-apply bzip2) | Use TAR to TAR.BZ2 |
| Skip the tar layer and just extract files | Use Extract TAR.BZ2 for the contents directly |
| Compare with the gzip equivalent | See TAR.GZ to TAR — same conversion pattern, different compression layer |
| Switch the compression layer in one step | Use TAR.BZ2 to TAR.XZ |
Yes — significantly. Bzip2 is one of the stronger general-purpose compressors, so a 50 MB .tar.bz2 of source code can expand to 250-400 MB as plain .tar. If size matters, re-compress with .tar.xz or .tar.zst after conversion; xz typically beats bzip2 by 10-25% on text and source code.
.tbz2 the same as .tar.bz2?Functionally identical. .tbz2, .tb2, and .tar.bz2 all wrap a tar stream with bzip2 compression — the bytes are the same, just different file extensions for systems that historically disliked double extensions (old DOS/Windows 8.3, some FTP servers). Our converter accepts all three and treats them the same way.
Bzip2 uses the Burrows-Wheeler transform, which reorders bytes into runs that compress well — but reversing the BWT requires reconstructing the original byte ordering, which is CPU-intensive. Gzip's DEFLATE uses simpler LZ77 sliding-window matching plus Huffman, which decompresses in roughly linear time with minimal arithmetic. On the same hardware bzip2 often decompresses 4-8x slower than gzip, and stock bzip2 doesn't use multiple cores.
No. Only the outer bzip2 wrapper is removed. File names, directory structure, POSIX permissions (mode bits), UID/GID ownership, modification timestamps, symlinks, and hardlinks inside the tar are preserved byte-for-byte. Run sha256sum on individual files extracted before and after — they match.
bunzip2 locally?You can — bunzip2 backup.tar.bz2 produces backup.tar in one step. This online tool is for users who don't have a terminal handy (Windows users on older builds, Chromebooks without Linux containers, locked-down corporate machines, or mobile devices). On Windows 11 you also have tar.exe built in; on macOS and Linux, tar and bunzip2 are preinstalled on virtually every distribution.
Standard tar.bz2 does not support passwords — bzip2 has no encryption layer. If your file was encrypted, it was either wrapped in something else (GPG, OpenSSL, age) or repackaged as .7z or .zip with AES. Decrypt with the original tool first, then upload the resulting .tar.bz2 here.
For new archives, usually no. kernel.org switched away from bzip2 in December 2013, citing xz's better compression and faster decompression. Modern choices are xz/LZMA2 for maximum compression, zstd for the speed/ratio sweet spot, or gzip for maximum compatibility. Bzip2 still appears in long-tail legacy archives — Debian source packages, older Linux distros, scientific datasets from the 2000s — which is why this conversion exists.
Each bzip2 block has its own CRC, so corruption is usually localized to one 100-900 kB block. Our converter returns whatever decompressed successfully before the unrecoverable error. To squeeze more data out, download the partial .tar and run tar --ignore-zeros -xvf partial.tar locally — tar will skip past damaged regions and recover the surviving file members. The bzip2recover utility can also split a damaged .bz2 into recoverable blocks and discard the bad one.
tar -xjf?No — tar -xjf tells tar to expect bzip2-compressed input. After conversion, use tar -xf (no j flag) or tar -xvf for verbose listing. Most modern tar implementations auto-detect compression, so tar -xf archive.tar works whether the input is compressed or not, but explicitly dropping the j is cleaner and avoids the "this does not look like a bzip2 file" warning.