Библиотека сайта rus-linux.net
Как установить и использовать архиватор 7zip в Ubuntu Linux
Оригинал: How to install and use 7zip file archiver on Ubuntu Linux
Автор: Himanshu Arora
Дата публикации: 24 ноября 2016 г.
Перевод: А.Панин
Дата перевода: 10 апреля 2017 г.
Если вы используете Microsoft Windows и в процессе работы отправляете или принимаете файлы большого объема посредством сети, вы наверняка как минимум слышали (а может и пользовались) архиватором 7zip. Для тех же, кто не знает а данном инструменте, следует пояснить, что 7zip является передовым архиватором с открытым исходным кодом, который, по заявлению разработчика, "позволяет достичь максимальной степени сжатия данных".
Помимо собственного формата 7z, архиватор поддерживает множество других форматов архивов. Например, вы можете использовать его для создания и распаковки архивов следующих форматов: 7z, XZ, BZIP2, GZIP, TAR, ZIP и WIM. Однако, это еще не все, ведь 7zip может использоваться для распаковки архивов множества других форматов, включая AR, ARJ, CAB, CHM, CPIO, CramFS, DMG, EXT, FAT, GPT, HFS, IHEX, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, QCOW2, RAR, RPM, SquashFS, UDF, UEFI, VDI, VHD, VMDK, WIM, XAR и Z.
В официальной документации архиватора говорится: "степень сжатия, достигаемая благодаря использованию нового формата 7z, превышает степень сжатия архивов формата ZIP на 30-50%". Ниже приведен список других возможностей 7zip с официального веб-сайта:
- В случае использования форматов архивов ZIP и GZIP 7zip позволяет увеличить степень сжатия на 2-10% по сравнению с архиваторами PKZip и WinZip.
- Поддерживается мощный алгоритм шифрования AES-256 для архивов форматов 7z и ZIP.
- Имеется возможность создания самораспаковывающихся архивов формата 7z.
- В комплекте поставки имеется компонент для интеграции с проводником Windows.
- Приложение с графическим интерфейсом является мощным файловым менеджером.
- Приложение с интерфейсом командной строки позволяет полноценно работать с архивами поддерживаемых форматов.
- В комплекте поставки имеется плагин для файлового менеджера FAR Manager.
- Приложение переведено на 84 языка.
Если вас интересуют различные присужденные 7zip награды, вы можете ознакомиться с данной выдержкой со
Мы узнали о достаточном количестве преимуществ данного инструмента, не так ли? Но доступен ли он в Linux? Ну, да - существует порт версии с интерфейсом командной строки для Linux/Unix под названием p7zip.
В данной статье я расскажу вам о том, как установить и использовать p7zip в Linux. Учтите, что все инструкции и команды, приведенные в данной руководстве, были протестированы в системе Ubuntu 16.04 LTS.
Загрузка и установка 7zip
Вы можете без каких-либо сложностей загрузить и установить компоненты архиватора 7zip в Ubuntu с помощью следующей последовательности команд:
$ sudo apt-get install p7zip-full $ sudo apt-get install p7zip-rar
Использование 7zip
После установки пакета программного обеспечения p7zip в системе появляется утилита под названием 7z. Это синтаксис соответствующей команды:
$ 7z [adeltux] [-] [ПАРАМЕТР] <ИМЯ_АРХИВА> <АРГУМЕНТЫ>...
Синтаксис команды выглядит немного неочевидно, поэтому мы будем обсуждать приемы использования 7zip в мельчайших подробностях.
Начнем с того, что разберемся с методикой создания архивов формата .7z
с помощью данной команды. Для этого будем использовать директорию с именем files
, содержащую четыре файла с приведенными ниже именами:
По сути, в данный момент наша задача заключается в добавлении этих четырех файлов в файл архива формата .7z
, к примеру, с именем files.7z
. Для этого нужно перейти в директорию files
с помощью терминала и выполнить в ней следующую команду:
$ 7z a files.7z *
На приведенной ниже иллюстрации показан результат исполнения данной команды.
После успешного завершения исполнения данной команды в текущей директории будет создан файл с именем files.7z
.
Теперь предположим, что вы случайно/умышленно удалили четыре файла из директории files
.
В таком случае вам понадобится восстановить файлы путем их извлечения из только что созданного файла архива формата .7z
. Для этой цели может использоваться параметр e
аналогичным образом:
$ 7z e files.7z
Это основные команды для создания и распаковки архивов с помощью архиватора 7zip. Теперь предположим, что вам нужно создать архив формата .zip
. Эта задача может быть решена с помощью следующей команды:
$ 7z a [имя-файла-архива-zip] [список-добавляемых-в-архив-файлов]
Например:
Архиватор 7zip также позволяет достаточно просто обновлять содержимое файла архива после его создания. Например, предположим, что вы создали архив и через некоторое время поняли, что в него нужно добавить дополнительные файлы, после чего вместо удаления старого архива и создания нового просто обновили его содержимое, добавив в него все необходимые файлы.
К примеру, предположим, что директория files
содержит 5 текстовых файлов и и нам нужно добавить в архив files.7z
дополнительный файл с именем file5
. В этом случае достаточно воспользоваться параметром u
архиватора 7zip. Это результирующая команда в действии:
Один из способов проверки корректности работы данной команды заключается в проверке наличия в архиве всех пяти файлов путем открытия файла архива с помощью двойного клика по его иконке в файловом менеджере. Но если вы хотите выполнить аналогичную операцию с помощью интерфейса командной строки системы, вы можете использовать параметр l
архиватора 7zip.
Из приведенной выше иллюстрации очевидно, что после исполнения соответствующей команды архиватор подтвердил факт добавления в файл архива с именем files.7z
нового текстового файла.
Далее вам может понадобиться удалить какой-либо файл из созданного с помощью 7zip архива, что также несложно сделать. В этом случае следует использовать параметр d
. При этом синтаксис команды остается практически идентичным:
$ 7z d [имя-файла-архива] [имя-удаляемого-файла]
Помните о том, что вам придется добавить параметр -r
к данной команде в том случае, если интересующий вас файл находится в одной из поддиректорий архива, хотя в официальной документации 7zip и не рекомендуется использовать его (я пользовался им несколько раз; во всех случаях он работал так, как предполагалось).
А это полезная информация, на которую разработчики утилиты 7z хотят обратить внимание пользователей:
НЕ ИСПОЛЬЗУЙТЕ архивы формата 7zip для создания резервных копий данных в Linux/Unix, так как 7zip не сохраняет информацию о владельце/группе владельцев файлов из архива.
Для создания резервных копий данных в Linux/Unix следует использовать архивы формата tar:
-
Создание резервной копии директории:
$ tar cf - directory | 7za a -si directory.tar.7z
-
Восстановление файлов из резервной копии:
$ 7za x -so directory.tar.7z | tar xf -
Если вам нужно отправлять файлы и директории (без информации об их владельцах) другим пользователям Unix/MacOS/Windows, вы можете использовать архивы формата 7zip.
-
Создание архива с содержимым директории:
$ 7za a directory.7z directory
Не используйте параметр -r
, так как он работает не так, как вы предполагаете.
Не используйте описание файлов, аналогичное "directory/*"
из-за файлов ".*"
(например, описание "directory/*"
не будет соответствовать файлу "directory/.profile"
).
Для получения дополнительной информации об утилите 7z следует обратиться к ее
Заключение
В процессе чтения данной статьи вы наверняка убедились в том, что 7zip является поистине мощным инструментом. Его вариант для Linux под названием p7zip прост в установке и использовании. Документация доступна в формате