LINUX.ORG.RU

busybox bunzip error -5; есть альтернативы?

 , ,


0

1

Не могу распаковать большие bz2-тарболы busybox'ом: после некоторого времени получаю bunzip error -5 Заметно как на x86, так и на arm. При этом на десктопе распаковка работает. Ясное дело, что кривой bz2 туда запихали, но сейчас нужен легковесный статический архиватор на arm. Есть какие-нибудь проекты по сборке статических бинарников с утилитами кроме busybox?

Перемещено beastie из talks

★★★★★

Ответ на: комментарий от tides

Я думаю, что 140 мб это не large file, а на них тоже ошибка Вот примеры: http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stag... http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stag... попробуйте прогнать busybox'овским bzcat'om в /dev/null

mittorn ★★★★★
() автор топика
Ответ на: комментарий от mittorn

При этом на десктопе распаковка работает.

http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stag...
http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stag...

Именно эти ^ архивы на десктопе нормально распаковываются? (у меня сейчас нет возможности скачать на деск именно эти архивы для проверки, слишком они большие)

попробуйте прогнать busybox'овским bzcat'om в /dev/null

Прогнал. Подтверждаю, ошибка есть. Проверил на коробке v1.14.2, (какая-то китайская хреновина, типа ресивера). НО, она же, без всяких ошибок скачала->распаковала->отправила_в_/dev/null созданный мною bz2-архив размером ~177mb.

Думаю что ошибка в указанных архивах.

t1351
()
Ответ на: комментарий от t1351

Тогда каким образом она на десктопе распаковалась? Встречал такую же ошибку 3 месяца назад с такими же симптомами. Возможно, архив какой-то кривой, но раз нормальным bz2 распаковал, значит скорее в busybox дело. Какой-нибудь баг, например, при котором определённая последовательность ошибку выдаёт. Приведённые выше архивы различны, но ошибка выскакивает именно на чём-то, связанном с perl в обоих случаях.

mittorn ★★★★★
() автор топика
Ответ на: комментарий от mittorn

Приведённые выше архивы различны, но ошибка выскакивает именно на чём-то, связанном с perl в обоих случаях.

Я запускал на указанных поделках (2 штуки) команды типа:

wget -q -O- "ССЫЛКА" | busybox bzcat > /dev/null

, вряд ли пёрл тут как-то связан.

Какой-нибудь баг, например, при котором определённая последовательность ошибку выдаёт.

Вполне вероятно.

Сейчас удалось подключиться к нескольким рабочим серверам (все на debian'е), вот что сказали они:

t13@7:~$ busybox |head -1
BusyBox v1.20.2 (Debian 1:1.20.0-7) multi-call binary.
t13@7:~$ cat /etc/debian_version 
7.1
t13@7:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | busybox bzcat > /dev/null
bzcat: bunzip error -5
t13@7:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | bzcat > /dev/null
t13@7:~$ 


t13@8:~$ busybox | head -1
BusyBox v1.17.1 (Debian 1:1.17.1-8) multi-call binary.
t13@8:~$ cat /etc/debian_version 
6.0.7
t13@8:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | busybox bzcat > /dev/null
bzcat: bunzip error -5
t13@8:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | bzcat > /dev/null
t13@8:~$ 


t13@9:~$ busybox |head -1
BusyBox v1.20.2 (Debian 1:1.20.0-7) multi-call binary.
t13@9:~$ cat /etc/debian_version 
7.1
t13@9:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | busybox bzcat > /dev/null
bzcat: bunzip error -5
t13@9:~$ wget -q -O- "http://mirror.yandex.ru/gentoo-distfiles/releases/arm/autobuilds/current-stage3-armv6j/stage3-armv6j-20130206.tar.bz2" | bzcat > /dev/null
t13@9:~$ 

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

t1351
()
Ответ на: комментарий от t1351

Попробуйте другие стейжи. У меня сейчас с этого стейжа gentoo собирается, причём вполне успешно. Можно точно сказать, что конкретно со стейжами busybox работает криво, а полноценный bzip2 - нормально.

mittorn ★★★★★
() автор топика
Ответ на: комментарий от mittorn

Ещё парочку я сразу попробовал — результат тот-же. Хотелось бы затестировать с каким-нибудь не «гентушным» bz2. Потому-что самостоятельно созданные мною архивы (tgz -cjf) — нормально распаковываются коробкой.

t1351
()
Ответ на: комментарий от t1351

Пробую такие пайпы:

cat ./stage3-armv6j_hardfp-20130207.tar.bz2 |bunzip2|busybox bzip2| busybox bzcat>/dev/null

cat ./stage3-armv6j_hardfp-20130207.tar.bz2 |bunzip2|bzip2| busybox bzcat>/dev/null

cat ./stage3-armv6j_hardfp-20130207.tar.bz2 |bunzip2|bzip2 --best| busybox bzcat>/dev/null

cat ./stage3-armv6j_hardfp-20130207.tar.bz2 |bunzip2|bzip2 --fast| busybox bzcat>/dev/null

Ошибки не происходит.

mittorn ★★★★★
() автор топика
Последнее исправление: mittorn (всего исправлений: 1)
Ответ на: комментарий от mittorn

Похоже, их всё-таки жали как-то криво.

mittorn ★★★★★
() автор топика
Ответ на: комментарий от mittorn

В этих вариантах bunzip2 же не бизибоксовский?

Обычный, не busybox'овский bunzip2 с лёгкостью распаковывает указанные архивы. (По крайней мере начиная с версии 1.0.5 от 10-Dec-2007.)

t1351
()
Ответ на: комментарий от mittorn

Я имею в виду, что после перепаковки в gentoo (а сборка явно на gentoo) архив берётся busybox'ом

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

Похоже, их всё-таки жали как-то криво.

Похоже на то. При сливании с других зеркал подобных архивов — та же ошибка.

t1351
()
Ответ на: комментарий от t1351

Оставил сообщение а gentoo-сообществе,но пока молчат. Подозреваю, что просто старая версия bzip2.

mittorn ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.