dadv: (Default)
Choose your future ([personal profile] dadv) wrote2022-01-08 02:04 am

tar & zip

В современных версиях FreeBSD команда tar это оболочка над libarchive и умеет работать далеко не только с tar-файлами разных видов. Например, можно использовать tar для создания переносимых ZIP-архивов:

# tar --format zip --one-file-system --options compression-level=0,encryption,hdrcharset=UTF-8 -C / -cvf /var/tmp/archive.zip /

Такая команда создаёт ZIP-архив без сжатия, но со стандартным ZIP-шифрованием (пароль спросит интерактивно), с указанной кодировкой имён файлов и помещает в него содержимое корневой файловой системы, но без примонтированных других файловых систем (точки монтирования сохранит).

Не нашел аналога --one-file-system в документации к Info-ZIP, который устанавливается в качестве /usr/local/bin/zip из порта/пакета archivers/zip.

Страница системной документации tar(1) ссылается на libarchive-formats(5), на archive_write_set_options(3) и на archive_read_set_options(3), где всё это документировано.