hoge.tar.xzが解凍できない

概要

DockerでJuman++の環境構築をしようとしたときにtar -Jxvf jumanpp-2.0.0-rc3.tar.xzの部分で

tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now

というエラーが出て解凍できなかった。

環境

解決策

xz-utilsのインストール

こちらによるとxzというコマンドが実行できないためエラーが出ているらしい。
よって、apt install xz-utilsxz-utilsaptでインストールしてやればいい。

packages.debian.org

xz-utilsは上記のxzコマンドを実行するためのツール。

余談

xzについて

xzはファイルの圧縮方法の一つ。
こちらによると

With typical files, XZ Utils create 30 % smaller output than gzip and 15 % smaller output than bzip2.

と書いており、圧縮前と圧縮後ではgzipより30%小さくなり、bzipより15%小さくなるみたい。
実際にこちらの記事によるとxzで圧縮したときが一番ファイルサイズが小さくなっている。
しかし、圧縮時間はgzipやbzip2より掛かる。(記事内ではgzipより10倍時間が掛かるみたい)

参考

jsapachehtml.hatenablog.com

tukaani.org

s-yata.hatenadiary.org