我是linux平台的新手,我想为ubuntu提取gnutls。如果我这样做,
$ls
然后,它将在下面显示这些文件。
gnutls-3.2.1.tar.lz
gnutls-3.2.1.tar.lz.sig
gnutls-3.2.1.tar.xz
gnutls-3.2.1.tar.xz.sig
当我发出命令时,
$ tar -xvf gnutls-3.2.1.tar.xz
我得到了输出,
tar: xz: Cannot exec: No such file or directory
tar: Error is not recoverable: exiting now
tar: Child returned status 2
tar: Exiting with failure status due to previous errors
我想提取这些文件。
gpgv <filename>.sig
命令进行验证,它说没有找到公钥。答案 0 :(得分:26)
tar --lzip -xvf gmp-5.1.2.tar.lz
为我工作
如下面评论中所述,您可能必须在命令运行之前安装库:
sudo apt-get install lzip
答案 1 :(得分:12)
安装lzip
。
启动以下创建xxx.tar
文件的命令,并在解压后删除xxx.tar.lz
文件:
lzip -d xxx.tar.lz
启动以下命令以最终解压:
tar zxvf xxx.tar
答案 2 :(得分:9)
为什么会有两种格式? - xz和lz
仅为方便起见,以便人们可以下载他们拥有适当工具/安装的工具。请记住,大多数“linux”库也适用于其他类似unix的平台(例如BSD,Solaris,AIX,OSX甚至)。不能假设像xz这样的最新工具在每个平台都可以使用。
我需要一个单独的实用程序包吗?
是的,来自tar的错误消息告诉您它无法找到xz命令:
tar: xz: Cannot exec: No such file or directory
您已正确识别要安装的软件包xz-utils
。如果您尝试提取.lz存档,则会发现它找不到lzip
(并且您将安装lzip包)。
没有太大的区别,lzip是较旧的LZMA标准,xz是较新的LZMA2。标签'beta'总是主观的。在这种情况下,我不担心!
为什么有签名文件?
这样人们可以确定他们下载的档案由他们期望的人发布。这是为了防止黑客访问该网站(或镜像)的可能性,然后将一些恶意代码添加到存档中的源。
如何验证?
你的命令很好,但你需要了解的是你必须告诉GnuPG你信任哪些密钥。通常,您将获取作者发布的公钥(通常是.asc或.txt)并将其导入您的gpg密钥环。在GnuTLS下载页面上:
所以你可以这样做:
wget -O- http://josefsson.org/key.txt | gpg --import
wget -O- http://members.hellug.gr/nmav/pgpkeys.asc | gpg --import
另一种方式是人们只发布他们的RSA密钥ID,可以从众所周知的gpg密钥服务器导入。例如,您可以像这样导入我的公钥:
gpg --recv-key 15C4D63E
对于大多数默认的gpg配置,应该从公钥服务器(可能是keys.gnupg.net)获取指定的密钥。
之后,gpg应该报告这些作者中的“好签名”,但期望它仍然会显示警告:
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
这只是意味着没有信任链(基于您在密钥环中标记为受信任的密钥)来表示这是指定人员的正确密钥。它可能是黑客的关键。
在某些时候,你必须确信你获得的钥匙来自合适的人,但确切地要信任什么,何时根据你自己的偏执程度,每个人根据自己的偏执程度进行研究和自我决定,或者目前的目的。
就个人而言,我不打算验证源档案,除非我打算重新分配从它们构建的内容。
答案 3 :(得分:6)
您可以通过以下方式解决:
# The lzip page is: http://lzip.nongnu.org/lzip.html
# Download the lzip:
wget http://download.savannah.gnu.org/releases/lzip/lzip-1.15.tar.gz
# decompress:
tar xvf lzip-1.15.tar.gz
cd lzip-1.15
# configure / build
./configure --prefix=/usr
make
# install
sudo make install
# now you can unzip with
tar xvf gmp-5.1.3.tar.lz
答案 4 :(得分:2)
首先要提取xz文件,需要安装xz-utils。如果是debian或ubuntu:
sudo apt-get install xz-utils
现在您可以使用以下方式提取文件:
tar -xJf file_name.xz
答案 5 :(得分:0)
LZIP可在Cygwin中找到。您可以安装lzip(来自cygwin设置中的Archive分支)和tar(来自Base分支)。之后你可以做到
tar --lzip -xvf your_file.tar.lz
为我工作。
答案 6 :(得分:0)
对于tar.lz,如果你的tar不支持--lzip
tar xf filename.tar.lz --use-compress-program lrunzip