Самораспаковывающийся архив
Самораспаковывающийся или самоизвлекающийся архив (англ. self-extracting archive, сокращённо «SFX archive») — файл, компьютерная программа, объединяющая в себе архиви исполняемый код для его распаковки. Такие архивы, в отличие от обычных, не требуют отдельной программы для их распаковки (получения исходных файлов, из которых они созданы), если исполняемый код можно выполнить в указанной операционной системе. Это удобно, когда неизвестно, есть ли у пользователя, которому передаётся архив, соответствующая программа распаковки.
Основной способ использования самораспаковывающихся архивов — создание программ для установки ПО без использования систем управления пакетами.
Исполняемый код, присоединённый к архиву, может представлять собой полноценную программу распаковки. Так как существует вероятность выполнения кода распаковщика, самораспаковывающийся архив или замаскированный под него файл может использоваться для распространения вредоносного ПО.
|
|
Примеры
Примеры программ, способных создавать самораспаковывающиеся архивы:
Zip
· Ненастраиваемые 7z SFX архивы для Microsoft Windows.
· Существует сторонний настраиваемый модуль — тоже для Windows.
ARJ
· Для различных платформ.
P7zip
· 7zCon.sfx — ненастраиваемый, для указанной пользователем платформы; поддерживает просмотр, автоматическую перезапись файлов, проверку целостности и зашифрованные архивы.
PKZIP
· Только в зарегистрированных версиях, начиная с 2.70.
RAR и WinRAR
· Возможно создание настраиваемых самораспаковывающихся RAR (и ZIP в WinRAR) архивов с русским и английским интерфейсом. Настройка архива производится путем задания комментария или в окне «Дополнительные параметры SFX». Возможно изменение значка.
ZipSfx
· Настраиваемый, поддерживает ZIP формат. Настройка производится подготовкой текстового файла и последующей «склейкой» файлов.
SFX Creator
· Создание настраиваемых самораспаковывающихся архивов для Microsoft Windows с выбором компрессора (ZLIB, BZIP2, LZMA)
· Русскоязычный интерфейс программы
· Настройка архива производится через графический интерфейс программы
Данная программа создана исключительно для создания многофункциональных SFX архивов / пакетов инсталляторов и обладает широкими возможностями в плане функционала и возможностей создаваемого архива
CAB
· Существует малоизвестная утилита IExpress, входящая в состав Windows (начиная с Windows XP), позволяющая создавать в режиме мастера CAB-архивы, в том числе настраиваемые самораспаковывающиеся. Для запуска в окне «Пуск»→"Выполнить…" введите iexpress.exe и нажмите «OK».
|
|
· Также такие архивы в своих форматах для соответствующих платформ могут создавать StuffIt и WinZip.
Существуют также программы, которые создают архивы в виде сценариев оболочки UNIX. Это часто используется для создания программ установки коммерческого ПО для UNIX-подобных ОС. Примеры: makeself и более старая shar.
Совместимость
Так как программа для одной платформы часто не может выполняться на других, то и распаковка самораспаковывающегося архива, созданного для одной системы, на других может быть затруднена.
Самораспаковывающиеся архивы в некоторых форматах — например, RAR и ZIP — могут быть распакованы самостоятельной программой распаковки.
Также можно создать код, который будет поддерживаться без дополнительных программ сразу на нескольких операционных системах — например, DOS и OS/2.
Или код, который будет поддерживаться стандартной поставкой одной ОС, и дополнительными средствами в другой — например, с использованием Python или shell (см. выше).
Архив с кодом под Win32 может потребовать дополнительных действий после распаковки с помощью Wine на UNIX-подобной системе — в частности, установки битов прав доступа.
Непрерывный архив
Материал из Википедии — свободной энциклопедии
Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 13 марта 2013; проверки требует 1 правка.
Непрерывный архив (англ. solid archive) — архив, упакованный таким образом, что все сжимаемые файлы рассматриваются как один непрерывный поток данных. При упаковке каждого файла (кроме первого) используется информация, содержащаяся в предыдущих файлах.
К преимуществам непрерывного архива следует отнести потенциальное увеличение степени сжатия. При этом чем меньше средний размер файлов, больше самих файлов и больше похожих друг на друга файлов, тем больше увеличение степени сжатия.
Недостатки непрерывного архива:
изменение непрерывного архива (то есть добавление или удаление из него файлов) происходит медленнее, чем обычного;
извлечение отдельного файла из середины или конца архива происходит медленнее, чем из его начала, так как для этого приходится анализировать все предыдущие упакованные файлы;
если непрерывный архив окажется повреждён, то не удастся извлечь не только файл, на данные которого приходится повреждение, но и все файлы, следующие после него, поэтому при создании непрерывных архивов имеет смысл всегда добавлять информацию для восстановления.
Многотомные и самораспаковывающиеся архивы также могут быть непрерывными.
Архиваторы, позволяющие создавать непрерывные архивы:
7zip.
FreeArc
Tar+gzip
, Tar+bzip2, Tar+lzma и т. д.WinAce
WinRar (только для *.rar).