gzip:stdin:gzip形式ではありません


26

実行すると:

tar -zxvf john-1.7.0.2.tar.gz

私はこれを得る:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

展開が開始されます。

一部の人々は私に使用しないように言ったzが、私は同じエラーを受け取ります。

この方法でダウンロードしたファイルです。

wget http://openwall.com/john/f/john-1.7.0.2.tar.gz

4
投稿したリンクは、実際のアーカイブではなく、Webページのようですjohn-1.7.0.2.tar.gz: HTML document, ASCII text, with very long lines
。– steeldriver

回答:


25

間違ったタイプのダウンロードされたファイルの診断

以下のようsteeldriverが言うか、gzip圧縮されたファイルの任意の種類- - 1のように命名されているにもかかわらず、この手段ファイルは実際にgzip圧縮されたtarファイルではありません。

でファイルをダウンロードするとwget、多くの場合、探していたものとは異なる種類のファイルを取得したという兆候があります。

ek@Io:~$ wget http://openwall.com/john/f/john-1.7.0.2.tar.gz
--2017-01-28 23:57:33--  http://openwall.com/john/f/john-1.7.0.2.tar.gz
Resolving openwall.com (openwall.com)... 195.42.179.197
Connecting to openwall.com (openwall.com)|195.42.179.197|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://www.openwall.com/john/ [following]
--2017-01-28 23:57:40--  http://www.openwall.com/john/
Resolving www.openwall.com (www.openwall.com)... 195.42.179.202
Connecting to www.openwall.com (www.openwall.com)|195.42.179.202|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘john-1.7.0.2.tar.gz’

john-1.7.0.2.tar.gz                          [      <=>                                                                        ]  15.27K  3.61KB/s    in 4.2s

2017-01-28 23:57:51 (3.61 KB/s) - ‘john-1.7.0.2.tar.gz’ saved [15633]

この場合、主な兆候は次のとおりです。

  • 301 Moved Permanently末尾とのアドレスにリダイレクトメッセージ/。これにより、サーバー上のディレクトリのデフォルトページがロードされます。これは通常index.html、ほとんどの場合、HTMLファイルです。
  • Length: unspecified [text/html]、プレーンテキスト(text)を受け取っていること、およびとして解釈されることを意図していることを伝えますhtml。これは本当に単なるサイン以上のものです。これに基づいて実際のgzip圧縮されたファイルを取得していないことを確認できます。

また、fileユーティリティを使用することもできます。このユーティリティは、ファイルを調べて、どのようなファイルであるかを示します。

ek@Io:~$ file john-1.7.0.2.tar.gz
john-1.7.0.2.tar.gz: HTML document, ASCII text, with very long lines

そしてもちろん、あなたのようなツールを使って、ファイルを自分で調べることができheadlessview

ek@Io:~$ head john-1.7.0.2.tar.gz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>John the Ripper password cracker</TITLE>
<link href="/ubuntu//style.css" type="text/css" rel="stylesheet">
<META name="keywords" content="John the Ripper, password cracker, JtR, password checker, password recovery, password, cracker, crackers, cracking, crack, crypt, passwd, shadow, Unix, Linux, Windows, Win32, Mac OS X, Mac OSX, MacOS X, OS X, OSX, DOS, VMS, OpenVMS, hash, DES, MD5, Blowfish, Kerberos, AFS, LM, LanMan, LanManager, NT, 2000, XP, 2003, Vista, 7, NTLM, NTLMv1, MD4, Netscape LDAP, SHA, SSHA, MySQL, TGT, s/key, Eggdrop, Apache, apr1, SYSUAF, SYSUAF.DAT, AltiVec, MMX, SSE, SSE2, AVX, XOP, wordlist, wordlists, dictionary, brute force, decrypt, challenge, response, John, Ripper, john, jhon, jonh, jack, Jack the Ripper">
<META name="description" content="A fast password cracker for Unix, Windows, DOS, and OpenVMS, with support for Unix, Windows, and Kerberos AFS passwords, plus a lot more with contributed patches">
</HEAD>

<BODY bgcolor="#E0E0E0" text="black" link="blue" alink="red" vlink="navy">

これが実際にバイナリファイルである場合は、代わりに、使用するページャーまたはビューアーが実際にはそうでないプレーンテキストとして何かを解釈しようとするため、無意味なゴミが大量に発生します。たとえば、正しいファイルで:

ek@Io:~$ head john-1.8.0.tar.gz
WӦQ♥john-1.8.0.tar ▒▒kw▒ر&▒▒ٿ▒▒▒▒4E]|▒v▒NF▒d[▒n▒▒▒L&▒HB▒$▒ ▒df͚▒▒▒▒▒ꩪ▒7@▒▒▒9ӳf▒▒J▒m     ▒ؗ▒u▒▒~,▒ї▒▒▒ˣ▒▒ӣ_▒▒▒▒C▒▒|▒▒▒▒▒şw▒v▒▒>▒|w▒▒▒}▒▒▒ί▒▒i9▒?7+▒gY7i▒$▒▒ʲ▒▒s?▒J'MV%▒rY4ur[▒4▒▒e▒▒.▒▒▒▒▒&/u▒-2▒W▒▒V▒▒!o▒0b▒▒▒♥▒|Q▒4▒▒▒&▒▒Y1Y▒F▒▒Iy▒▒▒▒$▒▒▒▒,▒]▒h▒▒8▒"▒▒M▒,Һ~(▒i▒4Y▒d▒QgQ▒*ۚf7yA▒.▒&i▒<d▒↓▒7▒H_-l▒7▒▒▒Z▒▒.m▒▒ʒ%F,▒۬▒*▒▒hrW▒cY▒▒
▒+▒O1▒-y>▒▒J▒yM?▒4I▒▒▒kYS▒▒:▒▒n▒C▒▒%▒▒▒v▒▒▒{[[tN▒9▒▒▒kA▒▒▒▒▒/[▒▒▒▒u▒▒▒z▒▒▒▒>▒▒5▒▒▒▒t▒t▒▒Y6Û<▒*/i▒i{K>▒,▒▒▒▒▒;9)▒Z.mJSeiLB▒▒▒▒▒j▒▒eQ緅▒_▒α▒Ŋ▒▒▒W▒▒▒▒▒_▒▒ˢ▒▒-q▒<gyw͍▒9▒?▒,▒▒▒▒h&▒V"▒▒▒▒▒▒▒l▒▒3▒▒▒▒\▒▒i#▒▒综▒◄0▒▒▒.e♠>a▒▒▒▒▒▒$klt:▒▒rA▒M▒'F▒R▒▒▒▒Lo▒♥1z▒\▒↓X▒▒▒P"֕▒▒▒♦▒▒▒▒|▒▒▒▒▒▒1I▒o"'#|6e▒▒t▒Ц▒FVL▒▒S▒ޓ▒▒;▒x▒▒▒▒▒▒▒QVrr▒▒▒9O▒W7▒♠Og▒
▒▒▒8▒▒/▒▒dm▒FG'▒'t2L▒▒&L▒Y:▒▒▒▒▒4▒rI<▒#▒+▒je▒▒▒>T9▒▒M▒XE-ʆ▒▒'n▒▒$↑▒m▒W▒▒w̕▒▒m▒n%▒|A_▒yGp↑D▒↓߻▒▒▒i▒▒}ӡH▒▒▒▒׍$$H▒▒&▒▒4▒▒▒Z-@♣▒*~▒▒▒ y6▒▒▒`▒v↓▒s▒+̱▒?▒1▒▒▒<▒>▒^▒▒Y#k▒
7`N'▒o▒.&▒▒(▒Դ~AD▒"E◄' lq▒`▒▒`▒[▒9◄▒▒wzuK▒N▒▒Y▒▒%or▒▒)▒▒i↓▒▒▒l5.S▒޶r▒_*▒RO▒{▒$▒(▒▒▒▒C▒·▒▒׀f2ˊ[:▒▒▒,|ew▒▒▒Ag▒'▒▒▒H▒▒t▒{͓▒▒▒▒JH˭s▒)g▒ON▒▒eŚQ▒▒▒♠ s▒▒ߪ▒▒▒▒▒▒▒▒▒▒_♠▒-▒

(その最初の部分をコピーしただけです。)

適切なファイルを取得する

これは、これらの状況(そしてこの場合は特に)で何がうまくいかなかったかを知る方法を示しています。しかし、実際にはどのようにして正しいファイルを見つけてダウンロードしますか?

これは状況によって異なります。ただし、良いスタートは次のとおりです。

  • ソフトウェアの公式Webサイトにアクセスし、ダウンロードリンクが提供されているかどうかを確認します。それがあなたが元々使用しているリンクを取得した方法であったとしても、しばらく時間が経過した場合、リンクが変更されたことがわかるかもしれません。

    たとえば、この特定のケースでは、現在のバージョンは1.7.0.2ではなく1.8.0(およびのj代わりにサブディレクトリで提供f)であり、古いバージョンは同じURLで使用できなくなりました。

  • ファイルをダウンロードしたときにリダイレクトされたページに移動します。この場合、それはhttp://www.openwall.com/john/です

    または、ダウンロードしたファイルを調べることもできます。(またはオープン、それを Webブラウザで。)

ソフトウェアのメインダウンロードページにリダイレクトされまし。Webブラウザーでダウンロードするか、現在の正しいダウンロードリンクをコピーしてでダウンロードできますwget。そこいくつかの選択肢がありますが、あなたが実際にしていないと仮定すると必要なダウンロードしようとしたその特定の古いバージョンを、あなたが特定のファイルに基づいていたダウンロードしようとすると、私は疑うhttp://openwall.com/john/j/ john-1.8.0.tar.gzが探しています。

もちろん、後でこの投稿を見つけた読者はリンクが機能しなくなっていることに気付くかもしれません。ただし、この種の問題をトラブルシューティングするためにここで示したアプローチは引き続き有効です。

ek@Io:~$ wget http://openwall.com/john/j/john-1.8.0.tar.gz
--2017-01-29 00:16:19--  http://openwall.com/john/j/john-1.8.0.tar.gz
Resolving openwall.com (openwall.com)... 195.42.179.197
Connecting to openwall.com (openwall.com)|195.42.179.197|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5450412 (5.2M) [application/x-tar]
Saving to: ‘john-1.8.0.tar.gz’

john-1.8.0.tar.gz                        100%[================================================================================>]   5.20M  78.8KB/s    in 26s

2017-01-29 00:16:47 (202 KB/s) - ‘john-1.8.0.tar.gz’ saved [5450412/5450412]

ファイルをダウンロードしました。今回は、望ましくないリダイレクトは発生せず、タイプはのapplication/x-tar代わりに指定されていることに注意してくださいtext/html

(HTTPリダイレクトは必ずしも悪いわけではありません。それが本当に探しているファイルではないように思われるものにリダイレクトされたとき、ダウンロードが実際に成功しなかったと疑うべきです。)

file 同意する:

ek@Io:~$ file john-1.8.0.tar.gz
john-1.8.0.tar.gz: gzip compressed data, was "john-1.8.0.tar", last modified: Thu May 30 04:19:35 2013, max compression, from Unix

そして、正常に解凍します:

ek@Io:~$ tar xf john-1.8.0.tar.gz
ek@Io:~$ cd john-1.8.0/
ek@Io:~/john-1.8.0$ ls -l
total 12
drwxrwxr-x 2 ek ek 4096 Jan 29 00:22 doc
lrwxrwxrwx 1 ek ek   10 May 29  2013 README -> doc/README
drwxrwxr-x 2 ek ek 4096 Jan 29 00:22 run
drwxrwxr-x 2 ek ek 4096 Jan 29 00:22 src

(あなたが使用するかどうかは問題ではないことは正しいzです; tar xzfこれは正しいファイルであるため、まだ動作していました。)

ソースコードのビルドとインストールに進むことができます。

常にソースからビルドする必要はないことを忘れないでください

プログラムの最新バージョンが本当に必要な場合がありますが、Ubuntuのリポジトリにはありません。PPAを見つけようとするかもしれませんが、本当に信頼できるもの、または必要なものを提供するものが見つからない場合、またはカスタムオプションでビルドしたい場合、またはソースコードからビルドしたい場合は、ソースコードは価値のある便利なテクニックです。

ただし、少なくともシステムのUbuntuの公式リポジトリで利用可能なソフトウェアを確認することをお勧めします。16.04システム:

ek@Io:~$ apt show john
Package: john
Version: 1.8.0-2
Priority: optional
Section: admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Ruben Molina <rmolina@udea.edu.co>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 452 kB
Depends: libc6 (>= 2.14), john-data (= 1.8.0-2)
Suggests: wordlist
Homepage: http://www.openwall.com/john/
Supported: 5y
Download-Size: 184 kB
APT-Sources: http://us.archive.ubuntu.com/ubuntu xenial/main amd64 Packages
Description: active password cracking tool
 John the Ripper is a tool designed to help systems administrators to
 find weak (easy to guess or crack through brute force) passwords, and
 even automatically mail users warning them about it, if it is desired.
 .
 Besides several crypt(3) password hash types most commonly found on
 various Unix flavors, supported out of the box are Kerberos AFS and
 Windows NT/2000/XP/2003 LM hashes, plus several more with contributed
 patches.

パッケージを検索する方法は他にもいくつかあります。多くの場合、Ubuntuパッケージ検索 Webページを使用すると便利です。

バージョン1.7.0.2をインストールしようとしたので、おそらく公式リポジトリのバージョン1.8.0で十分に新しいと思われます。(実際、1.8.0は公式Webサイトからダウンロードするために提供されたものと同じバージョンのようです。)本当にそれをインストールしたいだけかもしれません。

sudo apt update
sudo apt install john
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.