Not in gzip format ошибка linux

Обновлено: 06.07.2024

Если вы используете CD-ROM, убедитесь в отсутствии на нем царапин, пыли или других гадостей, которые могут приводить к ошибкам. Причиной может быть и то, что соответствующее средство инсталляции имеет неподходящий формат. Например, при использовании дискет многие дистрибутивы Linux требуют, чтобы дискета была отформатирована в формате high-density MS-DOS. (Загрузочная дискета - исключение; в большинстве случаев она вообще не в формате MS-DOS). Если все прочее потерпело неудачу, либо достаньте новый набор дискет с дистрибутивом или перепишите его на новые дискеты, если вы скачали дистрибутив откуда-то.

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

опцию периода загрузки, чтобы инициировать определение геометрии своего жесткого диска и описали геометрию некорректно, то вы должны будете познакомиться с этой проблемой. Это также может случиться, если геометрия вашего драйвера описана некорректно в CMOS.

Если у вас появляются другие странные ошибки во время инсталляции Linux (особенно если вы сами переписали где-то эти программы), убедитесь, что вы действительно списали все необходимое. Например, некоторые используют команду FTP

для скачивания программ Linux через FTP. Она скачает только те файлы, которые содержат "." в именах файлов; если есть файлы без ".", вы их не получите. В этом случае уместной была бы команда

Самый лучший совет - заново пересмотреть все шаги, которые вы совершили, если у вас застопорилось дело. Вы можете наивно думать, что вы все делали правильно, когда на самом деле вы забыли сделать какой-то маленький, но важный шаг, где-то посреди нелегкого пути инсталляции. Во многих случаях даже сама попытка заново переписать или заново инсталлировать Linux может натолкнуть на решение действительной проблемы. Не надо биться головой об стену дольше, чем надо!

Кроме прочего, если Linux завис при инсталляции, причины могут быть в аппаратуре. Смотрите по этому поводу Раздел 2.5.2.

Некоторые люди сказали мне не использовать z но я получаю ту же ошибку.

Это - файл, что я загрузил этот путь:

1 ответ

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

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

Когда Вы загружаете файл wget , часто существуют признаки, что Вы закончили тем, что получили другой вид файла, чем, что Вы искали:

В этом случае основные знаки:

Можно также использовать file утилита, которая исследует файл и говорит Вам, каким файлом она надеется быть:

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

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

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

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

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

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

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

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

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

Я загрузил файл. Заметьте, что на этот раз никакого нежелательного перенаправления не произошло, и тип дан как application/x-tar вместо text/html .

И это распаковывает успешно:

(Вы правы, что не имеет значения, если Вы используете z ; это все еще работало бы с tar xzf , так как это - корректный файл.)

Можно продолжить создавать исходный код и установку.

Помните, необходимо не всегда создавать из источника

Иногда Вы действительно хотите последнюю версию программы, и это не находится в репозиториях Ubuntu. Вы могли бы попытаться найти PPA, но если Вы не находите никого, которому Вы действительно доверяете или который обеспечивает вполне, что Вы хотите, или Вы хотите создать его с пользовательскими опциями, или Вам просто действительно нравится создавать из исходного кода, затем создавание из исходного кода является ценной и полезной техникой.

Я действительно рекомендую проверить, по крайней мере, программное обеспечение, которое доступно в официальных репозиториях Ubuntu для Вашей системы, все же. В моих 16,04 системах:

Существует несколько других способов искать пакеты. Часто удобно использовать веб-страницу Поиска Пакетов Ubuntu.

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

Некоторые люди сказали мне не использовать z , но я получаю ту же ошибку.

Это файл, который я загрузил следующим образом:

1 ответ

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

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

Когда вы загружаете файл с помощью wget , часто появляются признаки того, что вы попали в другой файл, вы искали:

В этом случае основными признаками являются:

Вы также можете использовать утилиту file , которая проверяет файл и сообщает, какой файл он выглядит:

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

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

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

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

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

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

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

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

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

Я загрузил файл. Обратите внимание, что на этот раз не произошло нежелательного перенаправления, и тип указан как application/x-tar вместо text/html

И он распаковывается успешно:

(Вы правы, что неважно, используете ли вы z ; он все равно работал бы с tar xzf , так как это правильный файл.)

Вы можете приступить к созданию исходного кода и установке.

Помните, что вам не всегда нужно строить из источника

Иногда вам действительно нужна последняя версия программы, и она не находится в репозиториях Ubuntu. Вы можете попытаться найти PPA, но если вы не находите того, что действительно доверяете или предоставляете то, что хотите, или хотите создать его с помощью настраиваемых параметров, или просто хотите создать исходный код, а затем создать из исходный код является ценным и полезным методом.

Я рекомендую проверить хотя бы программное обеспечение, доступное в официальных репозиториях Ubuntu для вашей системы. В моей системе 16.04:

Существует несколько других способов поиска пакетов. Часто удобно использовать веб-страницу поиска пакетов Ubuntu .

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

/test
Убедимся, что файл создан
$ cat

/test
Т Е С Т
упакуем этот файл, например, архиватором gzip
$ gzip

/test
и посмотрим на упакованный файл утилитой hexdump, точнее посмотрим 1-ые 16 байт
$ hexdump -C -n 16

/test.gz
00000000 1f 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 bb |. R.Y..test..|
Первые 3 байта — это так называемая сигнатура (HEX код) архиватора gzip - 1F 8B 08, которая является составной частью упакованного файла (его началом) и присуща только архиватору gzip, что позволяет отличить этот файл от других и, главное, видно, что архиватор, точнее сигнатура начинается с самого начала (с нулевого байта, смещение равно 0).
UPD - если быть точным, то сама сигнатура два байта (0x1f, 0x8b), а 3-ий байт определяет compression method (08 - deflate)
При распаковке этого файла, утилита gzip сначала проверит наличие сигнатуры, присущей gzip, и только после этого примет решение о распаковке.
Проверим это, а для чего изменим сигнатуру файла, точнее, изменим 1-ый байт — вместо 1F запишем 1E (я проделал это в hex редакторе)
$ hexdump -C -n 16

/test.gz
00000000 1e 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 bb |. R.Y..test..|
Ну и попытаемся рапаковать
$ gzip -d

/test.gz: not in gzip format
И то же самое будет, если сигнатура будет правильная, но начинаться будет не с начала файла (смещение не равно 0) — вернем все на место, но перед сигнатурой запишем 1 байт — 00 (я сохранил этот файл, как test1.gz).
$ hexdump -C -n 16

/test1.gz
00000000 00 1f 8b 08 08 9e 52 18 59 00 03 74 65 73 74 00 |. R.Y..test.|
$ gzip -d

/test1.gz: not in gzip format
И значит распаковывать такие файлы нужно по-другому, а именно, нужно указать при распаковке смещение, откуда начинать, т.е. где начинается сигнатура.
Самый простой вариант — удалить байты до сигнатуры, но это не этично, да и иногда это выливается в мегабайты и десятки мегабайт.
Лучше поступить грамотно — указать утилите смещение, с которго начинать распаковку (делаем пропуск с помощью dd в 1 байт прежде чем начать распаковку)
$ dd if=

/test1.gz skip=1 bs=1 | gzip -d > test1
Проверим, что мы получили
$ cat

Читайте также: