Разбивка архивов (gzip, bzip) на части

noname

Новичок
Разбивка архивов (gzip, bzip) на части

возможно ли разбиение архива на части
 

bedladen

Новичок
скорее да чем нет
если линух хостинг, то
exec("какие то команды шелла чтоб архив из нескольких файлов");
 

noname

Новичок
нет, не так, при самом архивировании делить на равные части (file.bz, file.bz.part01 ... и т д) как в
ВинЗИП, 7зип. И всё это на ПХП.
я так понимаю низя так сделать так как никому не нужно это... кроме меня.
 

FreeSpace

Чукча-читатель
Zip - можно, если осторожно. Только готовых библиотек я не видел.
gzip и bzip - нельзя, они не поддерживают многотомность, AFAIK.
 

noname

Новичок
то есть если уж разбивать то самому, типа:
заголовок: \x1f\x8b\x08\x00\x00\x00\x00\x00 + часть файла (2048Кб)
след файл: часть файла (2048Кб)
...
при том что crc32 надо всего файла...(!!!!????)
...
конец:gzip_PrintFourChars($Crc).gzip_PrintFourChars($Size);
Ну а много-"файловость"(в одном архиве 1,2...n файлов) gzip-bzip
можно сделать?, а то я в хелпе PHP не видел...
 

FreeSpace

Чукча-читатель
Про чексуммы я не понял, у тебя какая-то специфическая задача?
А "многофайловость" реализуется заворачиванием набора файлов в TAR. А уже этот TAR потом сжимается. Обычно GZIP'ом.
 

bedladen

Новичок
FreeSpace, *****
тссс.... пусть наш друг идет по более сложные пути и поднабьет шишек - это научит его в будущем любить простые и быстрые решения.
 

FreeSpace

Чукча-читатель
bedladen, зачем быть таким злым? :)
Никто же человеку готовый код не дает, просто подсказываю направление движения. Ведь чтобы "любить простые и быстрые решения", надо сначала узнать, что это...
 

noname

Новичок
Не берём во внимание функции path"cpy" exec. Именно пхп -> архив -> разбивка архива на равные части!...
Что, никто не видел 7зип?
 

dimagolov

Новичок
noname, если ты не можешь запускать из php exec, то об этом надо сказать во вводной. если не знаешь как, то тоже можно сказать.
 

noname

Новичок
а так если разбить:
открываем архив fopen($arch, "r").
берём блок 2 мб
пишем его в файл вида file.1.gz
....
file.n.gz
до тех пор пока EOF
пересылаем архивы по фтп на другой сервак,
и там склеиваем все части...
 

FreeSpace

Чукча-читатель
noname
Ну если будешь склеивать собстыенным скриптом, то не вижу никаких проблем.
 

SiMM

Новичок
Стоило ли морочить голову людям, если речь идёт о передаче данных с одного СВОЕГО сервака на другой СВОЙ сервак? Достаточно [m]ftp[/m]-функций без всяких извращений с многотомными архивами.
 

noname

Новичок
SiMM
Если б так всё просто. на некоторых бесплатных хостингах нет функций фтп, мыло ограничено до 2-8 МБ за письмо, вот и приходится изворачиваться.
 

dimagolov

Новичок
noname, ключевые слова с одного СВОЕГО сервака на другой СВОЙ сервак. то есть то, что ты контролируешь и отправку и прием и волен выдумывать свои форматы хранения данных
 

noname

Новичок
РЕЗЮМЕ:
подобного, как в архиваторе 7zip, WinZip - разбивка архива на части (НЕ МНОГОТОМНОСТЬ) - в php не предусмотрено?
 

SiMM

Новичок
> на некоторых бесплатных хостингах...
... не подключен zlib - пишите архиватор на PHP.
 
Сверху