gzip: stdin: не в gzip формате

Когда я работаю:

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
26
задан 28 January 2017 в 22:48

2 ответа

Диагностирование загруженного файла неправильного типа

Как steeldriver говорит, это означает, что файл не является действительно gzipped файлом tar - или никакой вид gzipped файла - несмотря на то, чтобы быть названным как один.

Когда Вы загружаете файл 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. Это - действительно больше, чем знак - можно быть вполне уверены, Вы не получили реальный gzipped файл на основе этого.

Можно также использовать 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

И конечно можно исследовать файл сами с инструментами такой как head, less, и view:

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="/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▒▒ߪ▒▒▒▒▒▒▒▒▒▒_♠▒-▒

(Я только скопировал самое начало этого.)

Получение правильного файла

Это говорит Вам, как выяснить то, что пошло не так, как надо в этих ситуациях (и в этом случае, в особенности). Но как Вы на самом деле находите и загружаете корректный файл?

Это варьируется от ситуации до ситуации. Однако хорошее начало к:

  • Перейдите к официальному сайту для программного обеспечения и посмотрите, обеспечивают ли они ссылки на загрузку. Даже если это - то, как Вы получили ссылку, которую Вы используете первоначально, если некоторое время передало Вас, может найти, что ссылка изменилась.

    Например, в данном случае, текущая версия 1.8.0 вместо 1.7.0.2 (и обеспеченный в j подкаталог вместо f), и старая версия больше не доступна в том же самом URL.

  • Перейдите к странице, что Вы были перенаправлены к тому, когда Вы загрузили файл. В этом случае это: http://www.openwall.com/john/

    Или можно даже исследовать файл, который был загружен. (Или откройте его в веб-браузере.)

Вы были перенаправлены к основной странице загрузки программного обеспечения. Можно или загрузить в веб-браузере, или скопировать корректную текущую ссылку на загрузку и загрузить его 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.

Так как Вы собирались попытаться установить версию 1.7.0.2, по-видимому, версия 1.8.0 в официальных репозиториях является достаточно недавней. (Действительно, 1.8.0, кажется, та же версия, как тот предусмотрел загрузку с официального сайта.), Таким образом, Вы действительно могли бы просто хотеть установить это:

sudo apt update
sudo apt install john
25
ответ дан 23 November 2019 в 01:10

Немного стыдно, что вопрос действительно содержал ответ по моему делу, которого я не заметил до сих пор. Но я оставлю здесь эту заметку для тех, кто пытается пропустить часть текста.

Возможно, вам не понадобится опция -z

 -z, --gzip
              filter the archive through gzip

, поэтому фактическая команда извлечения для меня была

tar -xvf bind-9.16.0.tar.xz

Аналогичный вопрос, содержащий также удаление опции

Пожалуйста, дайте мне знать, если эта информация здесь нежелательна.

3
ответ дан 6 March 2020 в 20:01

Другие вопросы по тегам:

Похожие вопросы: