Red*_*eam 31 downloads mime-type wget tar file-type
当我运行时:
tar -zxvf john-1.7.0.2.tar.gz
Run Code Online (Sandbox Code Playgroud)
我明白了:
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Run Code Online (Sandbox Code Playgroud)
它应该开始拆包。
有些人告诉我不要使用,z但我得到了同样的错误。
这是我以这种方式下载的文件:
wget http://openwall.com/john/f/john-1.7.0.2.tar.gz
Run Code Online (Sandbox Code Playgroud)
Eli*_*gan 32
正如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]
Run Code Online (Sandbox Code Playgroud)
在这种情况下,主要迹象是:
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
Run Code Online (Sandbox Code Playgroud)
当然,你可以检查自己的文件,等工具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">
Run Code Online (Sandbox Code Playgroud)
如果这真的是一个二进制文件,那么您将得到一大堆毫无意义的垃圾,因为无论您使用什么寻呼机或查看器,都徒劳地试图将某些内容解释为真正不是的纯文本。例如,在正确的文件上:
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?????????????_??-?
Run Code Online (Sandbox Code Playgroud)
(我只复制了最开始的部分。)
这告诉您如何找出在这些情况下出了什么问题(尤其是在这种情况下)。但是,您实际上如何找到并下载正确的文件呢?
这因情况而异。然而,一个好的开始是:
转到该软件的官方网站,看看他们是否提供下载链接。即使这是您最初使用的链接的方式,但如果过了一段时间,您可能会发现链接已更改。
例如,在这种特殊情况下,当前版本是 1.8.0 而不是 1.7.0.2(并且在j子目录中提供而不是f),并且旧版本不再在同一 URL 上可用。
转到下载文件时重定向到的页面。在这种情况下,那就是:http : //www.openwall.com/john/
或者您甚至可以检查下载的文件。(或在网络浏览器中打开它。)
您被重定向到该软件的主下载页面。您可以在 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]
Run Code Online (Sandbox Code Playgroud)
我已经下载了文件。请注意,这一次,没有发生不需要的重定向,并且类型被指定为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
Run Code Online (Sandbox Code Playgroud)
它成功解包:
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
Run Code Online (Sandbox Code Playgroud)
(您是对的,如果您使用 并不重要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.
Run Code Online (Sandbox Code Playgroud)
还有其他几种搜索包的方法。通常使用Ubuntu Packages Search网页很方便。
由于您打算尝试安装 1.7.0.2 版,因此官方存储库中的 1.8.0 版大概是最新的。(确实,1.8.0 似乎与从官方网站提供的下载版本相同。)所以您可能真的只想安装它:
sudo apt update
sudo apt install john
Run Code Online (Sandbox Code Playgroud)
小智 5
有点可耻的是,这个问题实际上包含了我的案例的答案,而我直到现在才注意到。但我会在这里为那些试图跳过部分文本的人留下这条注释。
您可能不需要 -z 选项
-z, --gzip
filter the archive through gzip
Run Code Online (Sandbox Code Playgroud)
所以对我来说实际的提取命令是
tar -xvf bind-9.16.0.tar.xz
Run Code Online (Sandbox Code Playgroud)
如果此处不需要此信息,请告诉我。
| 归档时间: |
|
| 查看次数: |
136042 次 |
| 最近记录: |