LINUX.ORG.RU

Подосланный sql.bz2

 ,


0

1

История такая. Имел глупость разместить сайт на 000-webhost.com (вай шайтанама!!!) Через несколько лет этот, с позволения сказать, хостер с нетрадиционной сексуальной ориентацией, без всяких предупреждений удалил сперва учетку в мемберареа, потом и сам сайт мой, но (!!!) остались бэкапы - полная копия файлов (не первой свежести конечно, но хоть что-то) и SQL-дамп сархивированный в bz2 (как мне казалось, судя по двойному расширению sql.bz2). Если с переносом файлов на другой комп проблем не наблюдается, то с этим самым дампом, какая-то фигня происходит, bunzip2 ругается

bunzip2: a1541009_school.sql.bz2 is not a bzip2 file
file говорит:
a1541009_school.sql.bz2: data
7z вообще не понимает, что я от него хочу:
Error: a1541009_school.sql.bz2: Can not open file as archive
GNU tar тоже меня послал:
tar -xjvf a1541009_school.sql.bz2
bzip2: (stdin) is not a bzip2 file.
tar: Child returned status 2
tar: Error is not recoverable: exiting now
Файл начинается с BZh41AY&SYCQ. Каким образом его распаковать? Может эти нетрадиционалисты используют какие-нибудь хитрые алгоритмы сжатия? К то сталкивался с 000webhost.com и их архивами? ХЕЛП МИ!!!


[smola@E530 ~]$ echo -n "BZh41AY&SYCQ" > test.tmp
[smola@E530 ~]$ file test.tmp 
test.tmp: bzip2 compressed data, block size = 400k
Smola
()
Ответ на: комментарий от Smola

та же история

bzip2 -dk a1541009_school.sql.bz2
bzip2: a1541009_school.sql.bz2 is not a bzip2 file.

Ничего не понимаю, удалось-таки восстановить на 000webhost.com аккаунт %), но phpMyAdmin, тот которым я этот дамп делал отказывается его принимать. Гы, то ли я идиот, то ли лыжи по асфальту ехать не хотят %))).

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

[smola@E530 ~]$ echo -n «BZh41AY&SYCQ» > test.tmp [smola@E530 ~]$ file test.tmp test.tmp: bzip2 compressed data, block size = 400k

Это, конечно же мне намек был, и я его понял, человек намекает что файл сжат и размер блока 400к! Не? А вообще, мне не жалко, пышЬ. @Smola Спасибо за намек, проделал следующее:

school23@proxy:~$ echo "test" > test
school23@proxy:~$ bzip2 test
school23@proxy:~$ file test.bz2
test.bz2: bzip2 compressed data, block size = 900k
То есть текстовый файл он сжал с блоком 900к! Сдается мне, надо просто каким-то образом bunzip'у объяснить, что размер блока именно 400к. Как думаете?

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

Просто хотел показать, что у меня file определяет архив правильно (насколько я понял, у вас — нет). Попробуйте открыть на другой машине или WinRAR'ом.

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

@Smola Так дело-то в том, что ни WinRAR, ни 7Zip, ни bunzip2, ни tar этого сделать не могут. Как-то на Венде сталкивался с тем, что нормальный архив (не поврежденный) не хотел распаковываться 7Zip-ом и freearc'ом, а инсталлятором, который я с трудом нашел, кстати говоря распаковался на ура. А это был репак одной игрушки, очень хитро пожатый и слил я его с торрента, вот потому-то и пришлось с ним ковыряться. Ну так у меня и появилась мысль о том, что для распаковки некоторых архивов желательно знать, каким образом оно сжато было. У кого какие мысли будут?

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

о-о-о-па

school23@proxy:~$ bzip2recover a1541009_school.sql.bz2
bzip2recover 1.0.6: extracts blocks from damaged .bz2 files.
bzip2recover: searching for block boundaries ...
   block 1 runs from 88 to 682043
   block 2 runs from 682092 to 823991
bzip2recover: splitting into blocks
   writing block 1 to `rec00001a1541009_school.sql.bz2' ...
   writing block 2 to `rec00002a1541009_school.sql.bz2' ...
bzip2recover: finished
school23@proxy:~$ file a1541009_school.sql.bz2
a1541009_school.sql.bz2: data
school23@proxy:~$ file rec00001a1541009_school.sql.bz2
rec00001a1541009_school.sql.bz2: bzip2 compressed data, block size = 900k
school23@proxy:~$ bunzip2 rec00001a1541009_school.sql.bz2
school23@proxy:~$ file rec00001a1541009_school.sql
rec00001a1541009_school.sql: UTF-8 Unicode English text, with very long lines
school23@proxy:~$ bunzip2 rec00002a1541009_school.sql.bz2
school23@proxy:~$ file rec00002a1541009_school.sql
rec00002a1541009_school.sql: UTF-8 Unicode English text, with very long lines

Теперь другой вопрос, как енто чудо обратно залить... Буду эксперементировать...

OEvg85
() автор топика
Ответ на: Хм от OEvg85

Сотри первый символ в файле, не тормози.

arson ★★★★★
()
Ответ на: Хм от OEvg85

Там правда так:

$ hd -n 64 a1541009_schoolj2.5.sql.bz2 
00000000  0a 42 5a 68 34 31 41 59  26 53 59 b5 cb f7 f7 00  |.BZh41AY&SY.....|
00000010  82 ac df ff 44 90 7b ff  ff ff ff ff ff fe ff ff  |....D.{.........|
00000020  ff fe 7f ff ff df ff cb  ff ff 90 01 60 00 10 00  |............`...|
00000030  61 5e 1e f1 7d b7 0f 51  51 6f 7b 2f b7 6d 8a 29  |a^..}..QQo{/.m.)|
Но даже если сделать $ dd if=a1541009_school.sql.bz2 of=school bs=1 skip=1 все равно не распаковывает, видимо еще какой-то мусор попал в файл.

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

Вах, спасибо тебе, добрый человек!

school23@proxy:~$ file a1541009_school.sql.bz2
a1541009_school.sql.bz2: bzip2 compressed data, block size = 400k
school23@proxy:~$ bunzip2 -dk a1541009_school.sql.bz2

bunzip2: a1541009_school.sql.bz2: trailing garbage after EOF ignored
Не смотря на сообщение, что в файле мусор присутствует, все распаковалось и уже через phpmyadmin импортировалось без ошибок :)

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