Создать архив rar ubuntu

Обновлено: 03.07.2024

Содержание

Создание tar-архива без сжатия

Для создания такого архива используется команда:

Создание архива с использованием сжатия

Поскольку для сжатия доступны как минимум два метода, для использования каждого из них используется отдельный набор параметров.

Пример сжатия Gzip:

В данном случае мы попытались запаковать папку dir_name в архив filename.tar.gz. Из указанных параметров -z указывает на использование метода Gzip, а -v выводит результаты процесса создания архива с указанием упакованных файлов или папок.

Пример сжатия Bzip2:

Данная команда аналогична предыдущей и имеет отличие в параметре –j, т.к. именно он отвечает за использование метода сжатия Bzip2.

Распаковка архива

Для того, чтобы распаковать архив, используется команда:

В данном случае архив filename.tar.bz2 будет распакован в ту папку, в которой вы находились в момент запуска команды. Для того, чтобы распаковать архив в какую-либо другую директорию, можно использовать команду:

В этом случае архив распакуется в указанной директории.

Просмотр содержимого архива без распаковки

Для этих целей используется следующая команда:

В результате выполнения команды выведется список файлов и папок, хранящихся в архиве. Если в перечень параметров добавить -v, то получится расширенный вывод информации о содержимом с указанием размера файлов, прав доступа, именами владельцев и их групп, и т.п.

Просмотреть полный список возможностей архиватора tar можно при помощи команд:

Создание и распаковка ZIP-архивов

Создание zip-архива выполняется командой:

Вместо archive.zip указываем имя создаваемого архива. Вместо filename указываем имя файла, который нужно архивировать. Для архивации целой папки необходимо использовать параметр –r, который инициирует рекурсивное архивирование. Без этого параметра будет заархивирована только папка без вложенных в неё файлов. Пример команды:

Распаковка архива производится командой unzip:

Если необходимо распаковать в конкретную папку, то для этого используется параметр –d. Например:

Вместо dirname указывается папка, в которую нужно извлечь данные из архива.

Просмотреть полный список возможностей архиватора zip и unzip можно при помощи команд:

Распаковка RAR-архивов

Для извлечения содержимого архива используется команда unrar:

Посмотреть список файлов в архиве без его распаковки можно командой:

Примечание: Стоит отметить, что Unrar может отсутствовать по умолчанию в некоторых Linux-дистрибутивах. Установить данное ПО можно следующими командами:

CentOS/Fedora:

Debian/Ubuntu:

Просмотреть полный список возможностей архиватора unrar можно при помощи команд:

Пример создания резервной копии данных на VPS

Допустим, на VPS необходимо сделать резервную копию файлов сайта, которые располагаются в директории /var/www/html/mysite. Чтобы создать сжатый архив данных, расположенных в указанной директории, необходимо выполнить следующую команду:

В результате содержимое директории /var/www/html/mysite будет запаковано в архив mysite.tar.gz.

Если вы хотите перенести подобный архив с одного VPS на другой, но не знаете, как это сделать, то об этом вы можете узнать в статье Способы переноса файлов между серверами.

В наши дни мы сталкиваемся с файлами архивов очень часто и на всех платформах: Windows, Mac или Linux. Это могут быть программы, резервные копии систем или баз данных или просто архив файлов. Нам также часто приходится создавать свои архивы в Linux, чтобы передать несколько файлов друзьям или загрузить на файлообменник. В виде архивов распространяются пакеты программ, исходные коды, а также много других файлов, распространяемых на просторах интернета. Научиться выполнять архивирование файлов в Linux через терминал очень важно, возможно это вам понадобиться, когда не будет доступа к графическому интерфейсу, или просто со временем в терминале станет более приятно работать.

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

Архивирование в Linux

Важно отметить, что архивирование в linux это не одно и то же что и сжатие файлов linux. Архивирование - это объединение нескольких небольших файлов в один, с целю более удобной последующей передачи, хранения, шифрования или сжатия. Как я уже сказал, архивация выполняется специальными утилитами. Мы не будем трогать архивацию файлов в графическом интерфейсе, вы с ними разберетесь сами, наша тема - терминал.

Самой популярной для Linux утилитой для архивации есть tar. Она используется почти везде, для архивации исходников, упаковки пакетов. Для сжатия используются другие утилиты, в зависимости от алгоритма сжатия, например, zip, bz, xz, lzma и т д. Сначала выполняется архивация, затем сжатие, отдельными программами. Автоматический запуск некоторых утилит сжатия для только что созданного архива поддерживается в tar и других подобных программах с помощью специальных опций.

Также полезной возможностью архивации есть шифрование. Но теперь давайте рассмотрим какие существуют утилиты, с помощью которых выполняется архивирование файлов linux и как ими пользоваться.

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

$ tar опции f файл_для_записи /папка_файлами_для_архива

А теперь разберем основные опции:

  • A - добавить файл к архиву
  • c - создать архив в linux
  • d - сравнить файлы архива и распакованные файлы в файловой системе
  • j - сжать архив с помощью Bzip
  • z - сжать архив с помощью Gzip
  • r - добавить файлы в конец архива
  • t - показать содержимое архива
  • u - обновить архив относительно файловой системы
  • x - извлечь файлы из архива
  • v - показать подробную информацию о процессе работы
  • f - файл для записи архива
  • -C - распаковать в указанную папку
  • --strip-components - отбросить n вложенных папок

Теперь давайте рассмотрим архивирование файлов в Linux. Чтобы создать архив используйте такую команду:

tar -cvf archive.tar.gz /path/to/files

А чтобы распаковать архив tar linux:

tar -xvf archive.tar.gz

Очень просто запомнить для упаковки используется опция c - Create, а для распаковки - x - eXtract.

Сжатый архив создается точно так же, только с опцией -z, это в случае, если использовалось шифрование gizp, если нужно bzip то применяется опция -j:

tar -zcvf archive.tar.gz /path/to/files

$ tar -zxvf archive.tar.gz

Например, рассмотрим как заархивировать папку в Linux:

tar -zcvf home.tar.gz

Хотя можно поступить по-другому, тот же архив мы получим если сначала создать обычный архив с помощью tar, а потом сжать его утилитой для сжатия, только здесь мы получаем больше контроля над процессом сжатия:

Также можно убрать сжатие:

Утилиты сжатия мы рассмотрим ниже.

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

tar -rvf archive.tar file.txt

Для извлечения одного файла синтаксис тот же:

tar -xvf archive.tar file.txt

Можно извлечь несколько файлов по шаблону соответствия с помощью параметра wildcard, например, извлечем все php файлы:

tar -xvf archive.tar --wildcards '*.php'

По умолчанию распаковать архив tar linux можно в текущую папку с именем архива, чтобы распаковать в нужную папку используйте ключ -C:

tar -xvf archive.tar -C /path/to/dir

Стандартную утилиту рассмотрели, теперь кратко рассмотрим ее альтернативы. Их не так много, и большинство из них уже устаревшие.

Shar позволяет создавать самораспаковывающиеся архивы. По сути, это скрипт оболочки, и для распаковки ему необходима оболочка Bash или другая совместимая с Bourne Shell. У Shar есть несколько преимуществ, но также он потенциально небезопасный, так как архив представляет собой исполняемый файл.

  • -o - сохранять архив в файл вместо стандартного вывода
  • -l - ограничить размер выходного файла
  • -L - ограничить размер выходного файла и разбить его на части
  • -n - имя архива не будет включено в заголовок
  • -a - разрешить автоматическую генерацию заголовков

Примеры использования shar для того чтобы заархивировать папку linux:

Создаем shar архив:

shar file_name.extension > filename.shar

Распаковываем shar архив:

ar - утилита для создания и управления архивами. В основном используется для архивации статических библиотек, но может быть использована для создания любых архивов. Раньше использовалась довольно часто но была вытеснена утилитой tar. Сейчас используется только для создания и обновления файлов статических библиотек.

  • - d - удалить модули из архива
  • - m - перемещение членов в архиве
  • - p - напечатать специфические члены архива
  • - q - быстрое добавление
  • - r - добавить члена к архиву
  • - s - создать индекс архива
  • - a - добавить новый файл к существующему архиву

Теперь рассмотрим примеры использования. Создадим статическую библиотеку libmath.a из объектных файлов substraction.o и division.o:

ar cr libmath.a substraction.o division.o

Теперь извлечем файлы из архива:

Таким образом, можно распаковать любую статическую библиотеку.

cpio - означает Copy in and out (скопировать ввод и вывод). Это еще один стандартный архиватор для Linux. Активно используется в менеджере пакетов Red Hat, а также для создания initramfs. Архивация в Linux для обычных файлов с помощью этой программы не применяется.

  • -a - сбросить время обращения к файлам после их копирования
  • -A - добавить файл
  • -d - создать каталоги при необходимости

Пример использования. Создаем cpio архив:

file1.o file2.o file3.o

ls | cpio -ov > /path/to/output_folder/obj.cpio

cpio -idv < /path/to folder/obj.cpio

Архивирование папки linux выполняется также само.

Сжатие архивов в Linux

Как создать архив в linux рассмотрели. Теперь давайте поговорим о сжатии. Как я говорил, для сжатия используются специальные утилиты. Рассмотрим кратко несколько из них

Чаще всего применяется Gzip. Это стандартная утилита сжатия в Unix/Linux. Для декомпрессии используется gunzip или gzip -d Сначала рассмотрим ее синтаксис:

$ gzip опции файл

$ gunzip опции файл

Теперь разберем опции:

  • -c - выводить архив в стандартный вывод
  • -d - распаковать
  • -f - принудительно распаковывать или сжимать
  • -l - показать информацию об архиве
  • -r - рекурсивно перебирать каталоги
  • -0 - минимальный уровень сжатия
  • -9 - максимальный уровень сжатия

Примеры использования вы уже видели в описании утилиты tar. Например, выполним сжатие файла:

gzip -c файл > архив.gz

А теперь распакуем:

gunzip -c архив.gz

Но чтобы сжать папку в Linux вам придется сначала заархивировать ее с помощью tar, а уже потом сжать файл архива с помощью gzip.

bzip2 - еще одна альтернативная утилита сжатия для Linux. Она более эффективная чем gzip, но работает медленнее. Для распаковки используйте утилиту bunzip2.

Описывать опции bzip2 я не буду, они аналогичны gzip. Чтобы создать архив в Linux используйте:

В текущем каталоге будет создан файл file.bz2

Новый и высокоэффективный алгоритм сжатия. Синтаксис и опции тоже похожи на Gzip. Для распаковки используйте unlzma.

Еще один высокоэффективный алгоритм сжатия. Обратно совместимый с Lzma. Параметры вызова тоже похожи на Gzip.

Кроссплатформенная утилита для создания сжатых архивов формата zip. Совместимая с Windows реализациями этого алгоритма. Zip архивы очень часто используются для обмена файлами в интернете. С помощью этой утилиты можно сжимать как файлы, так и сжать папку linux.

$ zip опции файлы

$ unzip опции архив

Чтобы создать Zip архив в Linux используйте:

zip -r /path/to/files/*

А для распаковки:

Как видите архивирование zip в Linux не сильно отличается от других форматов.

Выводы

Теперь вы знаете все что нужно об архивации файлов в Linux. Мы рассмотрели только консольные команды, так сказать, чтобы была понятна суть. В графическом интерфейсе все еще проще. Если остались вопросы - задавайте их в комментариях.

RAR в Linux - распаковать, создать

Рассмотрим, как распаковывать и создавать RAR архивы в Linux.

Формат RAR не популярен в Linux среде. Например, штатные графические менеджеры архивов, которые используются в Linux дистрибутивах, обычно не умеют работать с RAR. Чтобы работать с такими архивами, нужно устанавливать дополнительные пакеты.

Для распаковки RAR архивов в Linux используется бесплатный пакет UNRAR от компании RARLAB.

Для создания RAR-архивов служит пакет с одноименным названием RAR. Не пугайтесь, если увидите предупреждение, что это trial-версия. На самом деле пакет не имеет ограничений на время использования. Это такая же вечная пробная версия, как и WinRAR для Windows.

Установка UNRAR

Сначала установим пакет UNRAR.

Обычно, после того, как вы установили пакет UNRAR, некоторые графические менеджеры архивов автоматически начинают поддерживать файлы в формате RAR, и вы можете распаковать их, просто щелкнув правой кнопкой по файлу в файловом менеджере и выбрав пункт Распаковать (может зависеть от дистрибутива).

Распаковка RAR-архивов

Чтобы распаковать RAR-архив, используя командную строку, выполните следующую команду (вместо archive.rar укажите путь до вашего архива). Архив будет распакован в текущую директорию.

Чтобы распаковать архив в определённую директорию (она должна существовать), укажите ее путь после имени архива (вместо ./data укажите путь до директории, в которую нужно распаковать архив):

Распаковка RAR в Linux

Список файлов в архиве

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

Протестировать архив

Чтобы убедиться, что архив «не битый», используется опция t (test). Тестируется целостность каждого файла в архиве и выводится результат для каждого файла.

Распаковать RAR с паролем

Чтобы распаковать архив, защищенный паролем, нужно указать пароль, используя опцию p :

Другие возможности команды UNRAR

Мы рассмотрели только базовые опции. UNRAR имеет больше возможностей.

Приведем список некоторых часто используемых опций:

ОпцияОписание
xРаспаковать архив, сохраняя структуру директорий архива.
eРаспаковать архив. Структура директорий архива не сохраняется. Все файлы распаковываются в одну директорию. Если попадаются файлы с одинаковыми именами, то будет выдан запрос на перезапись/пропуск/переименование файла.
pПАРОЛЬУказать пароль для защищенного архива (password).
lВывести список файлов в архиве (list).
tПротестировать целостность архива (test).
clПреобразовать имена файлов в строчные буквы (convert to lower case).
cuПреобразовать имена файлов в прописные буквы (convert to upper case).
kbРаспаковывать все файлы, включая «битые» (keep broken).

Полный список всех поддерживаемых опций можно получить, выполнив:

Создание RAR архивов в Linux

Для создания RAR архивов в Linux используется пакет RAR.

Установка пакета RAR

Для установки RAR выполните команду (выберите соответствующую команду для вашего дистрибутива):

Создать RAR архив

Для создания RAR архивов используется опция a команды rar . Например, заархивируем директорию mydir в файл archive.rar :

В результате будет создан архив archive.rar , который содержит только файлы, расположенные непосредственно в директории mydir , не включая вложенные директории.

Создание RAR в Linux

Чтобы заархивировать директорию полностью, включая все вложенные файлы и директории, используется опция -r (recursive):

Можно указать список файлов, которые нужно заархивировать:

Указать степень сжатия

Чтобы указать степень сжатия, используется опция -mЧИСЛО , для которой указывается число от 0 до 5. 0 — без сжатия, 1 — минимальное сжатие, 5 — максимальное. По умолчанию используется степень сжатия — 3. Пример создания архива с максимальной степенью сжатия:

Разбить архив на несколько файлов

Используя опцию -vРАЗМЕР можно создать архив, который будет разбит на несколько файлов. Для указания размера нужно использовать обозначения: M — мегабайты, k — килобайты, b — байты. Например, создадим архив, который разобьем на файлы размером 100 мегабайт:

Распаковать такой архив можно обычными средствами команды rar . Только в качестве архива нужно указать первый файл: rar x archive.part01.rar

Добавить файлы в архив

Чтобы добавить файлы в существующий архив, используется опция u :

Удалить файлы из архива

Rar позволяет удалять отдельные файлы из существующего архива, для этого используется опция d .

Восстановить битый архив

Если архив поврежден, то можно попытаться его восстановить, используя опцию r :

Создать архив с паролем

Чтобы создать архив, защищенный паролем, используется опция -p :

Для существующего RAR-архива также можно задать пароль:

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

Распаковать архив

Команда rar , как и описанная выше команда unrar , умеет распаковывать архивы. Для распаковки архивов используется опция x :

Другие возможности команды RAR

Команда rar обладает внушительным количеством опций. Полное описание команды rar можно получить, выполнив в терминале:

Как архивировать файлы в Ubuntu: подробное руководство

ZIP является наиболее популярным и эффективным форматом архивных файлов. Он совместим с любой платформой, включая Linux, Windows и другими операционными системами на базе UNIX. Так как он широко используется, вы часто столкнетесь с zip-файлами. И для работы с zip-файлами вам необходимо очень хорошо знать, как работать с ними. Если вы новичок в Linux и не знаете, как архивировать и распаковывать zip-файлы на Ubuntu, то это краткое и простое руководство для вас. В этом руководстве я покажу вам все доступные способы (как с помощью терминала, так и с помощью графического интерфейса) архивирования и разархивирования файлов на Ubuntu Linux.

Архивирование и распаковка файлов в Ubuntu

В данной статье мы используем версию Ubuntu 20.04 LTS. Хотя руководство будет работать точно так же для любой версии Ubuntu. Для решения этой задачи нам необходимо проверить, есть ли в системе предустановленный zip. В большинстве случаев она установлена. Если его нет, то его можно установить следующей командой. Откройте терминал и выполните команду:

Эта команда установит необходимые для наших задач программы.

1. Архивация с помощью командной строки

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

Параметр zipname - это имя вашего архивированного файла. Файлы записываются последовательно, один за другим. Вы можете заархивировать неограниченное количество файлов. Для лучшего понимания, посмотрите на рисунок ниже.


Здесь все три файла - samplefile1, samplefile2 и samplefile3 заархивированы в папку newzip.zip. Вы также можете заархивировать папки вместе с файлами, используя следующую команду:

Команда будет выполнена так же, как и раньше. Здесь мы архивировали два файла с папкой в файл newzip1.zip.


2. Архивация с помощью графического интерфейса

Вы можете добавлять файлы в архивы с помощью графического интерфейса. Системы Linux предоставляют отличный графический интерфейс для более простой работы. Прежде всего, перейдите в каталог файлов, которые нужно заархивировать. Затем выделите файлы с помощью ctrl и щелкните правой кнопкой мыши, чтобы увидеть контекстное меню. Выберите пункт Сжать.


После щелчка по по этому пункту меню появится всплывающее окно.


Здесь мы можем указать наименование файла и выбрать способ сжатия. Существуют и другие способы, например, .tz, .gz, .rar и др. В нашем руководстве мы рассмотрим формат сжатия .zip.

3. Распаковка архива с помощью командной строки терминала

Чтобы распаковать архивный файл, перейдите в целевую директорию. Затем вам просто нужно использовать команду unzip. См. ниже

Здесь zipname - это также имя вашего будущего файла архива.


Повторяющиеся файлы будут автоматически заменены. Это потому, что мы распаковываем zip-файл в одну папку с файлами. Введите A, чтобы распаковать все. Если вы хотите распаковать файлы в другой каталог, команда будет выглядеть следующим образом:

Здесь необходимо указать имя директории, указав ее вместе с атрибутом -d.

4. Распаковка архива с помощью графического интерфейса

Чтобы сделать это в графическом интерфейсе системы, вы должны открыть папку, где хранятся zip-файлы. Выберите файл, нажмите по нему правой кнопкой мыши и выберите Извлечь в. Сделайте все в точности, что указано на рисунке ниже:


5. Распаковка .gz файлов

В системах Linux многие файлы заархивированы в формате .gz. В Ubuntu вы также можете извлечь этот тип файлов. Просто используйте следующую команду:

gunzip работает с другими форматами архивов, включая z, .Z, .taz, .tgz, _z и др. Просто укажите имя файла после команды, и файл будет распакован.

6. Распаковка .rar файлов

Для распаковки файлов .rar на вашем компьютере должен быть установлен пакет unrar. Сначала установите его следующей командой:

Данная утилита распаковывает файлы .rar.

Чтобы распаковать файл в выбранную директорию, используйте следующий формат команды:

7. Распаковка .tar.gz файлов

Другой популярный формат архивных файлов - .tar.gz. Вы можете распаковать его и в терминале. Сначала распакуйте файл .gz командой gunzip.

Затем выполните следующую команду:

Если в вашей системе есть GNU tar, вы можете извлечь файл непосредственно одной командой:

8. Распаковка .7z файлов

Для распаковки файлов с расширением .7z необходимо сначала установить p7zip на компьютер. Для этого выполните следующую команду в терминале:

Эта команда покажет содержимое файла:

Теперь напишите выполните это для извлечения файла:

9. Распаковка файлов, используя Python Script

Если вы не хотите вручную ничего устанавливать для извлечения файлов, вы можете использовать для этого скрипты. Скриптовый язык Ubuntu Python поставляется со всеми необходимыми модулями, которые также предлагают функционал распаковки архивов. Следующий скрипт может быть использован при распаковке zip-файла.

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

10. Распаковка файлов, используя Perl Script

Perl также является скриптовым языком для Linux и предлагает похожие модули, как Python выше. Этот простой Perl скрипт позволит вам распаковать файлы. Просто вставьте этот код и сохраните, например, под названием perlunzip.pl:

Затем напишите эту команду для извлечения ваших zip-файлов.

В заключение

Этим мы заканчиваем наше руководство. В нем мы попытались описать все возможные способы архивирования и разархивирования файлов в Ubuntu. Утилита командной строки пригодится при работе с удаленным сервером. Формат пользовательского интерфейся прост и доступен из контекстного меню, чтобы сделать приятной работу в Linux пользователям windows и macOS.

Если вы не хотите больше ничего устанавливать для распаковки файлов, вы также можете написать сценарии на Python или Perl, чтобы сделать эту работу автоматически. Мы показали примеры скриптов для поставленной задачи.

Надеюсь, что этого руководства будет достаточно. Если я пропустил что-нибудь, пожалуйста, дайте мне знать в комментариях. Счастливого обучения!


Люди, которые перешли на Linux с ОС Windows, привыкли пользоваться архиватором WinRAR. Популярность этого архиватора и формата RAR в частности, уже прошла, но все же его можно встретить.

Так как формат архивов RAR является проприетарным, популярные дистрибутивы Linux, такие как Ubuntu, Linux Mint, Debain и Fedore, не поддерживают этот формат архива «из коробки», но ее легко добавить.

Для того, чтобы подружить Ubuntu или Debian с файлами 7-zip, Вам сюда

История WinRAR

Кроме гордости за причастность русских к разработке WinRAR, особых достоинств на сегодняшний день у него нет. OpenSource архиватор 7-zip по производительности и функционалу на голову выше WinRAR.

Поддержка проприетарного формата от WinRAR на сегодняшний день очень распространена на территории России. Поэтому поддержку сбрасывать RAR со счетов не стоит.

Установка пакетов unrar и rar

Данный способ добавляет поддержку стандартному архиватору вашей операционной системы. Также есть возможность работать с rar из консоли.

Чтобы обучить свою Ubuntu или Debian открывать RAR , устанавливаем пакет unrar :

Если хотите создавать RAR в Ubuntu, то устанавливаем пакет rar:

Всего и делов! Файлы RAR теперь открываются и можно создавать RAR прямо из контекстного меню Nautilus`a.

Примеры работы с rar и unrar

Используем unrar

Распаковываем rar, если он запаролен:

Проверяем целостность rar в Ubuntu:

Используем rar

Создаем RAR в Linux:

Степень сжатия может быть от 0 до 5. Если не указывать, то по умолчанию используется 3 (средняя степень сжатия).

Комментарии

Даже не знаю. Не разу с таким не сталкивался.

А лучше установить в ubuntu архиватор 7-zip, который поддерживает работу с rar полностью
sudo apt-get install p7zip-full
примерно так ;)

Turuk Makto: А лучше установить в ubuntu архиватор 7-zip, который поддерживает работу с rar полностью sudo apt-get install p7zip-full примерно так ;)

Можно и так. Я об этом тоже писал здесь. Но замечательно, когда есть альтернативы

unrar x имя_архива.rar или unrar e имя_архива.rar

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