私は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
コマンドで検証しようとしましたが、公開キーが見つからないと表示されます。指定された形式には2つのタイプがあるのはなぜですか? -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です。ラベル「ベータ」は常に主観的です。この文脈では、私は心配しません!
署名ファイルがあるのはなぜですか?
これにより、ダウンロードしたアーカイブが期待する人によって公開されたことを確認できます。ハッカーがサイト(またはミラー)にアクセスして、アーカイブ内のソースに悪意のあるコードを追加する可能性を防ぐためです。
検証方法は?
このコマンドは問題ありませんが、理解する必要があるのは、信頼するキーを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
もう1つの方法は、一般に知られているgpgキーサーバーからインポートできるRSAキーIDのみを公開する場合です。たとえば、次のように公開キーをインポートできます。
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.
これは、これがcorrectキーであると言うために、信頼のチェーンが存在しないことを意味します(キーリングで信頼できるとマークしたキーに基づく)指定された人のために。代わりにハッカーの鍵になる可能性があります。
ある時点で、取得するキーが適切な人物からのものであると確信する必要がありますが、正確に何を信頼し、いつ自分のパラノイアのレベル、または現在の目的に基づいて、各個人が自分自身で調査して決定するかです。
個人的には、ソースアーカイブからビルドされたものを再配布する予定がない限り、ソースアーカイブを確認する必要はありません。
tar --lzip -xvf gmp-5.1.2.tar.lz
私のために働いた
コメントで後述するように、コマンドが機能する前にライブラリをインストールする必要がある場合があります。
Sudo apt-get install lzip
lzip
をインストールします。
xxx.tar
ファイルを作成し、抽出後にxxx.tar.lz
ファイルを削除する次のコマンドを起動します。
lzip -d xxx.tar.lz
次のコマンドを起動して、最終的にtarを展開します。
tar zxvf xxx.tar
次の方法で解決できます。
# 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
最初にxzファイルを抽出するには、xz-utilsをインストールする必要があります。 debianまたはubuntuの場合:
Sudo apt-get install xz-utils
これで、次を使用してファイルを抽出できます。
tar -xJf file_name.xz
LZIPは Cygwin で利用可能です。 lzip(cygwinのセットアップのArchiveブランチから)とtar(Baseブランチから)をインストールできます。その後、あなたはできる
tar --lzip -xvf your_file.tar.lz
私のために働いた。
Tar.lzの場合、tarが--lzipをサポートしていない場合
tar xf filename.tar.lz --use-compress-program lrunzip