无法使用 tar 通过 bzip2 压缩运行存档

无法使用 tar 通过 bzip2 压缩运行存档

我在使用 tar 使用 bzip 压缩存档时遇到困难。我的存档是 user-logs.tar。

我正在尝试运行这个:

tar -jf user-logs.tar

我收到此错误:

tar: You must specify one of the `-Acdtrux' or `--test-label'  options
Try `tar --help' or `tar --usage' for more information.

我还尝试使用 -c 创建一个带有 bzip 文件扩展名的新文件,但没有成功。

# tar -cvjf user-logs.tar.gz user-logs.tar
user-logs.tar
tar (child): bzip2: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now

答案1

错误消息告诉您该怎么做:您可能需要添加-c(例如创造),例如,

tar -jcf user-logs.tar  myargs

以及一些论点米亚格斯(要放入user-logs.tar档案的东西)。

第二种情况,问题是你没有bzip2安装。 tar 程序依赖于此外部的程序进行压缩。

如果您有一个 tar 存档并且只是想压缩它,您可以这样做:

bzip2 user-logs.tar

其中(如果你 bzip2安装)会将文件更改为user-logs.tar.bz2(通常会使其小得多)。

对于安装bzip2,这取决于您所使用的系统。例如,对于 Ubuntu,这将是

sudo apt-get install bzip2

而 Fedora 可能是(也许dnf):

sudo yum install bzip2

GNUtar程序不知道如何压缩现有文件,例如user-logs.tarbzip2这样做)。该tar程序可以使用外部压缩程序,gzip通过打开bzip2xz管道对于这些程序,通过管道将 tar 存档发送到压缩实用程序,该实用程序压缩从中读取的数据tar并将结果写入tar程序指定的文件名。

或者,tar和压缩实用程序可以是同一个程序。 BSD tar 使用以下方式进行压缩libarchive(除了名称之外,它们并没有真正不同)。

进一步阅读:

答案2

错误消息bzip2: Cannot exec: No such file or directory告诉您 tar 找不到 bzip2。很可能你没有安装它。

yum install bzip2通过或apt-get install bzip2或类似的方式安装它,具体取决于您的操作系统。

答案3

我不确定我是否正确地解释了您的问题和数据,但在我看来您好像已经有了 tar 球并且只是想压缩它?

bzip2 user-logs.tar

相关内容