Зачем создавать самораспаковывающийся архивный файл

Обновлено: 21.11.2024

В то время как обычный архивный файл использует отдельную программу (например, tar , gunzip , 7z ) для извлечения содержимого из архивного файла, самораспаковывающийся (SFX) архив сам по себе является исполняемым файлом и может самостоятельно извлекать свое содержимое. просто при беге. Самораспаковывающийся установщик делает то же самое, но также копирует извлеченное содержимое в соответствующие каталоги.

В этом руководстве я объясню, как создать самораспаковывающийся архив или программу установки в Linux.

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

Установить makeself в Linux

Чтобы установить makeself, загрузите последнюю версию в формате архива и распакуйте загруженный архив следующим образом. После извлечения архива будет создан новый каталог с именем makeself-2.4.2. Скопируйте все сценарии оболочки в каталог /usr/bin .

Основные способы использования makeself.sh следующие.

Аргумент label — это сообщение для печати, когда SFX-архив не сжат.

Аргумент startup_script указывает сценарий/команду для запуска после успешного извлечения архива SFX. Это полезно при создании самораспаковывающегося установщика. Обычно сценарий запуска копирует/устанавливает извлеченное содержимое в соответствующие целевые каталоги. Сценарий запуска должен находиться внутри каталога для упаковки, чтобы сценарий был включен в архив SFX.

Вот некоторые из доступных опций для makeself.sh:

  • --gzip : использовать gzip для сжатия (параметр по умолчанию).
  • --bzip2 : использовать bzip2 для сжатия.
  • --nocomp : не сжимать.
  • --notemp: извлекать файлы не во временный каталог, а в новый подкаталог, созданный в текущем каталоге.
  • --follow : перейти по всем символическим ссылкам и архивировать файлы, на которые есть символические ссылки.

Создать самораспаковывающийся архив

Чтобы создать самораспаковывающийся архив, содержащий все файлы в каталоге ./backup, выполните следующие действия. Здесь процедура запуска не делает ничего, кроме вывода сообщения «Выполнено извлечение».

Чтобы извлечь файлы из архива, просто запустите архив:

Создать самораспаковывающийся установщик

Если вы хотите создать самораспаковывающийся установщик, вам необходимо подготовить отдельный сценарий запуска, который будет выполнять установку после извлечения файла. Здесь я предполагаю, что каталог программы для упаковки находится в ./program. Поэтому подготовьте сценарий запуска в каталоге ./program.

Затем сделайте скрипт запуска исполняемым.

Создайте самораспаковывающийся установщик и упакуйте вместе с ним сценарий запуска, как показано ниже.

Поддержка Xmodulo

Этот веб-сайт стал возможен благодаря минимальной рекламе и вашему любезному пожертвованию через PayPal или кредитную карту

Лучшая в мире zip-утилита позволяет выполнять задачи архивирования, защиты, передачи и управления данными — где бы вы ни находились.

Стандарт WinZip XP

Распаковка всех основных форматов

Распаковывайте все основные форматы воспроизведения (Zip, Zipx, RAR, 7Z, TAR, GZIP, VHD, XZ и др.) одним единственным компьютером мыши.

Полный набор средств управления файлами

С обнаружением решите задачи поиска, обнаружения, передачи и получения сообщений, сетей и облачных файлов.

Защита конфиденциальности

Для защиты информации о начале простой процедуры шифрования во время видеозаписи. Доступны только для чтения файлы в формате PDF и используются водные знаки для принятия несанкционированных мер.

Гибкие файлы сообщений

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

Функции

УЛУЧШЕНО!Сжатие файлов с любой точки зрения

НОВОЕ! Распаковывать файлы стало еще проще

Используйте инструмент выбора для удобной распаковки файлов на компьютере или в облачном хранилище.

Работа с настройками WinZip из других приложений

WinZip Express позволяет использовать популярные функции WinZip даже при работе в других приложениях. Вы можете выполнять сбор, отправку, шифрование и другие операции в Explorer, Microsoft Office и Microsoft Outlook, а также при сборе сканера (только в версии Pro) и работе с фотографиями (только в версии Pro). *Теперь инструменты WinZip Express отчет Office 2016.

Гибкий интерфейс

Поддержка датчика ввода позволяет работать с WinZip на любом компьютере или выводе с датчиком обнаружения. Приложение WinZip оптимизировано для работы с применением 2-в-1 и автоматически изменяет свой интерфейс в зависимости от того, в каком режиме используется ваше устройство в режиме планшета или ноутбука. Автоматически скрываемые полосы прокрутки позволяют максимально увеличить экранное пространство.

Распаковка любых архивов

Поддержка самого широкого в отрасли типа архивов позволяет использовать содержимое файлов из самых высоких форматов, включая Zip, Zipx, RAR, 7Zip, BZ2, LHA/LZH, VHD/VDMK, XZ и пр. Для предотвращения использования данных не по назначению при распаковке зашифрованных файлов WinZip автоматически уничтожает все временно изъятые копии.

*WinZip Express не работает с Windows XP.

УЛУЧШЕНО! Сжатие файлов с любой точки зрения
НОВОЕ! Дополнительные возможности
НОВОЕ! Сканирование и отправка

Оптимизируйте отправку фотографий с помощью средств прямой публикации снимков с камер через WinZip.
Только в версиях Pro и Enterprise

НОВОЕ! Новые средства управления файлами
  • Создавайте новые папки на своем компьютере, в сети или в облачном хранилище.
  • Выполняйте удаление файлов и папок с помощью функции защиты данных.
  • Восстанавливайте случайно удаленные, скопированные, предполагаемые или переименованные файлы.
  • Откройте файл из облачного хранилища в приложении, внесите необходимые изменения, а обновление этого файла в облачном хранилище для вас выполнит WinZip.
  • Открывайте и редактируйте файлы в приложении, установленном по умолчанию, или открывайте файлы в альтернативном приложении.
  • Просматривайте данные о свойствах файлов и папок.
  • Подключайте папку или сетевое расположение к диску.
  • Копируйте, перемещайте, удаляйте и одновременно переименовывайте несколько файлов вне зависимости от их местоположения.
  • Копируйте путь в буфер обмена; скопируйте облачные ссылки в буфер обмена.
НОВОЕ! Средство предварительной версии
НОВОЕ! Инструмент выбора Мастера заданий

Теперь в составе резервных копий можно скачать файлы практически из любого места. Кроме того, теперь файлы можно перетаскивать из проводника или с панели файлов WinZip напрямую в Мастер заданий. Объедините файлы из сети, облачных хранилищ и папок на следующем компьютере в одном файле резервной копии. Получившийся в результате zip-файл можно сохранить на облаке. Задачи выполнения резервного распространения и распространения данных можно автоматизировать с помощью разработки заданий, которые будут заниматься сбором файлов из различных облачных хранилищ с последующим сжатием данных и распространением zip-файлов по электронной почте в соответствии с применением.
Только в версиях Pro и Enterprise

Когда ваш друг отправляет вам сжатый файл в относительно неизвестном формате, таком как 7z, bz2 и т. д., разве вы не ненавидите, когда вам нужно установить дополнительный инструмент только для того, чтобы иметь возможность извлечь содержимое из архива? Вот где самораспаковывающийся архив полезен. Он позволяет извлекать архивы без дополнительного программного обеспечения. Все, что вам нужно сделать, это дважды щелкнуть архив, и он автоматически извлечет файлы внутри. Хотя существует множество приложений для создания самораспаковывающихся архивов, вот встроенные инструменты, встроенные в вашу ОС.

Примечание:

<р>1. Хотя вы можете создать самораспаковывающийся архив в Windows и Linux, созданный архив не является кросс-платформенным. Вы не можете создать самораспаковывающийся архив в Windows и ожидать, что он будет работать в Linux. Даже в Linux архив может быть несовместим с каждым дистрибутивом.Если вы планируете отправить самораспаковывающийся архив своему другу, убедитесь, что вы используете ту же платформу ОС, что и он.

<р>2. Самораспаковывающийся архив может представлять опасность, если вы не уверены в содержимом внутри. Если вы не ожидаете получить самораспаковывающийся архив из надежного источника, не открывайте никакие самораспаковывающиеся архивы, особенно те, которые вы скачали с каких-то сомнительных веб-сайтов.

Также читайте: 7-Zip, WinRAR и WinZIP: лучший инструмент для сжатия файлов

Создание самораспаковывающегося архива в Windows

Windows поставляется со встроенным инструментом iexpress.exe, который позволяет создавать самораспаковывающийся установщик. Проблема с Microsoft заключается в том, что она любит скрывать эти полезные изящные инструменты от общественности, поэтому неудивительно, что мало кто слышал об этом инструменте.

В Windows (от XP до Windows 10) откройте меню «Выполнить» и введите «iexpress». Выберите программу «iexpress».

На первом экране выберите «Создать новый файл директивы самораспаковки» и нажмите «Далее».

На следующем экране выберите «Извлекать только файлы». Это создаст самораспаковывающийся архив, а не установщик.

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

Создание самораспаковывающегося архива в Ubuntu

Ubuntu поставляется с диспетчером архивов, который позволяет сжимать файлы, но не позволяет создавать самораспаковывающийся архив. Для этого нам нужно использовать команду unzipsfx.

Для этого примера предположим, что мы хотим создать самораспаковывающийся архив «test», содержащий «test.txt».

<р>1. Сначала сожмите «test.txt» в формат zip (с помощью диспетчера архивов). Теперь у вас должен быть файл «test.zip», содержащий «text.txt».

<р>2. Откройте терминал и введите:

Эта команда добавляет «unzipsfx» в начало «test.zip» и сохраняет его как новый файл «test».

<р>3. Далее мы собираемся изменить разрешение файла и сделать настройку самораспаковывающегося архива:

Вот и все. Всякий раз, когда вы дважды щелкаете «тест», он автоматически извлекает файлы, содержащиеся внутри него.

Также читайте: Как упростить сжатие 7z с помощью псевдонимов Bash

Управление самораспаковывающимся архивом на Mac

В Mac нет встроенного инструмента для создания самораспаковывающегося архива просто потому, что в этом нет необходимости. macOS очень хорошо обрабатывает сжатые файлы. Приложение по умолчанию — Archive Utility — извлекает сжатые файлы при двойном щелчке по архиву. Кроме того, приложение Unarchiver поддерживает множество форматов сжатия, поэтому вам не нужно беспокоиться о проблемах совместимости с Mac.

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

Что такое самораспаковывающиеся архивы?

SFX-архивы: преимущества и недостатки

  • контент и инструменты извлечения передаются как атомарная информация
  • чтобы извлечь содержимое, конечному пользователю необходимо выполнить только простой подмножество инструкций с помощью минимального пользовательского интерфейса, требующего минимальной обратной связи или вообще не требующей обратной связи, вместо того, чтобы устанавливать и учиться работать с полноценным программным обеспечением для управления архивами общего назначения< /li>
  • будучи модулем извлечения, встроенным в сам архив, он представляет собой дополнительную нагрузку (обычно несколько десятков или сотен КБ), что делает его заметным недостатком в случае небольших архивов.
  • sfx-архив может быть выполнен только на платформах операционных систем, способных запускать sfx-модуль. Он по-прежнему может работать как стандартный архив на других платформах, если доступно подходящее программное обеспечение.
  • поскольку самораспаковывающийся архив представляет собой исполняемый файл, некоторые платформы обмена файлами — поставщики облачных услуг, серверы электронной почты — могут счесть это угрозой безопасности и заблокировать файл, препятствуя его доступу к предполагаемым конечным пользователям.

Как создавать самораспаковывающиеся файлы 7Z или ARC

Пользовательские SFX-модули с различными наборами функций и интерфейсов взаимодействия с пользователем доступны в разделе дополнений PeaZip. Пользовательские SFX-модули.

Краткий обзор: что такое самораспаковывающиеся архивы, каковы преимущества и недостатки использования файлов sfx. Создавайте sfx-файлы с помощью бесплатного архиватора PeaZip. Как создавать самораспаковывающиеся архивы и работать с sfx-архивами.

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