Study & Project ✏️/Bug & Report 🐞

[Solved]dpkg-deb: error: archive 'test.deb' uses unknown compression for member 'control.tar.zst', giving up. Error analysis and resolution

JM 2023. 5. 16. 22:05
반응형

error: archive 'test.deb' uses unknown compression for member 'control.tar.zst', giving up

 

Create or download a deb file
There must have been an error like this when installing using dpkg
Let's analyze the error and find a solution

 

1. Error analysis

dpkg-deb: error: archive 'test.deb' uses unknown compression for member 'control.tar.zst', giving up
The error is that it is a compression member who does not know about control.tar.zst.

This is because the Debian 12 version and below does not use zst when packaging deb files below zst.

※ For your information, if you want to check my Debian version, you can enter the command below.

lsb_release -a

2. Resolution

Extract the deb file and tar to solve the problem.You can re-compress with xz again.
The process of extracting -> re-compress is as follows.

# Extract files from the archive
ar x test.deb

# Uncompress zstd files an re-compress them using xz
zstd -d < control.tar.zst | xz > control.tar.xz
zstd -d < data.tar.zst | xz > data.tar.xz

# Re-create the Debian package in /tmp/
ar -m -c -a sdsd /tmp/test.deb debian-binary control.tar.xz data.tar.xz

# Clean up
rm debian-binary control.tar.xz data.tar.xz control.tar.zst data.tar.zst

You can proceed with the above process and install the remaining test.deb in /tmp.
There is a high probability that there is no library required for installation, so you can install the library well and proceed.