
Почему это не работает?
sh-3.2# tar -xzf postgresql-7.4.28.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error exit delayed from previous errors
решение1
Это означает, что это на самом деле не сжатый файл. Используйте file
утилиту, чтобы узнать, что это на самом деле, а затем используйте соответствующие флаги, чтобы tar
распаковать его.
решение2
Скорее всего, ваш браузер распаковал файл при передаче. Это может произойти, поскольку gzip — один из способов, с помощью которых HTTP-серверы будут отправлять данные в ваш браузер, поэтому он распакует их, чтобы они отображались правильно.
Вы можете попробовать file
command, чтобы увидеть, что это такое. Или, в качестве альтернативы, просто пропустите все и попробуйте распаковать его следующим образом: tar xf postgresql-7.4.28.tar.gz
.
решение3
Сначала проверьте правильность размера файла и суммы MD5. Возможно, загруженный файл поврежден или в нем есть какая-то ошибка HTML.Этот сайтговорит, что сумма MD5 должна быть fed173049eda38ce6c3348e277fabec7
. Есть также sha1sum, если вы предпочитаете это.
Если это так, то файл не является правильным архивом .tar.gz, и вам следует использовать другие программы для определения типа файла или его распаковки, но я в этом сомневаюсь.
EDIT: Пробую под Windows с помощью 7-Zip, работает отлично. Результатом является файл TAR размером 54.298.624 байт, а окончательное извлечение приводит к 2.761 файлам и 309 папкам... возможно, вам следует попробовать использоватьp7zipдля Mac OS X. Если это сработало, возможно, что-то не так с вашим tar/gzip и вам следует попробовать переустановить пакеты.
решение4
Мне удалось извлечь архив postgresql-7.4.28.tar.gz (имеющий MD5 fed173049eda38ce6c3348e277fabec7, упомянутый выше), используя команду автора оригинального сообщения:
tar -xzf postgresql-7.4.28.tar.gz
...поэтому я ожидаю, что мы услышим, что MD5 не совпадает.