Команда tar: архивация, распаковка и сжатие файлов в linux

Как распаковать RAR в Linux

Формат RAR был разработан российским программистом, Евгением Рошалом, отсюда и название формата — Roshal ARchiver. Изначально формат был разработан для DOS и поддерживал несколько улучшений по сравнению с уже использовавшимся тогда ZIP. Сразу была поддержка большого количества файлов, разбиения архива на части и создания самораспаковывающихся архивов.

Распаковка rar linux выполняется с помощью утилиты unrar. А упаковка архива командой rar. Обычно она не поставляется в системе по умолчанию, но вы можете очень просто установить ее из официальных репозиториев. Для установки утилиты в Ubuntu выполните такую команду:

В Fedora и других системах, использующих пакеты rpm, имя будет точно таким же, только будет отличаться пакетный менеджер:

Перед тем как перейти к работе с командой и рассмотрению того как распаковать rar linux давайте рассмотрим ее синтаксис:

$ unrar команда опции архив файлы путь_для_расспаковки

Основной смысл работы утилиты уже понятен, но рассмотрим ее параметры подробнее:

  • e — распаковать архив;
  • l — вывести список файлов внутри архива;
  • p — вывести распакованный файл в стандартный вывод;
  • t — проверить архив;
  • v — вывести подробную информацию про архив;
  • x — извлечь файлы, сохраняя полный путь внутри архива.

Опции настраивают поведение утилиты, рассмотрим основные опции, которые могут вам понадобиться:

  • -ad — добавить имя архива к пути распаковки;
  • -ai — игнорировать атрибуты файлов;
  • -inul — не выводить сообщения об ошибках;
  • -p — указать пароль архива;
  • -sl — распаковывать только файлы, меньше указанного размера;
  • -u — обновить уже распакованные файлы;
  • -y — отвечать y на все вопросы;
  • -x — не распаковывать указанные файлы;
  • -ts — сохранять временную метку исходных файлов.

Основные опции, которые вам могут понадобиться мы рассмотрели, теперь давайте приведем несколько примеров как работать с утилитой. Чтобы извлечь файлы из архива в текущую папку достаточно передать утилите имя архива и команду e:

Вы можете вывести содержимое архива, ничего не распаковывая с помощью команды l:

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

Также вы можете проверить архив на целостность с помощью команды t:

Кроме того, вы можете указать папку, в которую стоит распаковывать файлы:

Это все команды unrar, которые вам могут понадобиться при повседневной работе с архивами, обратите внимание, что после установки утилиты unrar многие менеджеры архивов, например, Arc, теперь тоже поддерживают этот формат:

Но без этой утилиты вы получите ошибку что утилита не знает что это за формат архива. Всем графическим программам нужен этот rar архиватор linux.

RAR compression examples

General syntax

$ rar command -switch 1 -switch N archive files.rar @listfiles...

For a complete listing of commands and switches, see the last section of this article or simply run .

Recursively compress an entire directory structure

Task: backup /home/darkhorse to /media/data/darkhorse-backup.rar using 10 % recovery records:

$ rar a -r -rr10 /media/data/darkhorse-backup.rar /home/darkhorse

Explained:

Switch Action
a adds files to archives.
-r recurse subdirectories (includes all dirs/files under the parent directory).
-rr10 adds recovery records to the archive. This way up to 10% of the compressed archive can become corrupt or unusable, and it will be able to recover the data through parity.

Mixed-mode archives

You can also use mixed-mode archives which means that file types you specifiy do not get compressed — they simply get stored.

Task: backup /home/darkhorse to /media/data/darkhorse-backup.rar:

$ rar a -r -rr10 -s -m5 -msjpg;mp3;tar /media/data/darkhorse-backup.rar /home/darkhorse

Explained:

Switch Action
a adds files to archives.
-r recurse subdirectories (includes all dirs/files under the parent directory).
-rr10 adds recovery records to the archive. This way up to 10% of the compressed archive can become corrupt or unusable, and it will be able to recover the data through parity.
-m5 Use the highest level of compression (m0 = store … m3 = default … m5 = maximal level of compression.
-msjpg;mp3;tar ignore the compression option and store all .jpg and .mp3 and .tar files.

Recursively compress many directory structures using a list

Task: backup /home/darkhorse and /home/palomino and /home/seabiscuit to /media/data/homes-backup.rar.

First create a list (simple text file) containing the various targets. In this example, the list will be three lines long. I named it ‘home-list’ in this example but you can call it anything you want:

/home/darkhorse
/home/palomino
/home/seabiscuit
$ rar a -r -rr10 -s /media/data/homes-backup.rar @/path/to/home-list

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

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

Gzip

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

$ gzip опции файл

$ gunzip опции файл

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

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

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

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

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

Bzip

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

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

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

Lzma

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

Zip

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

Синтаксис утилиты:

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

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

Опции утилиты:

  • -d удалить файл из архива
  • -r — рекурсивно обходить каталоги
  • -0 — только архивировать, без сжатия
  • -9 — наилучший степень сжатия
  • -F — исправить zip файл
  • -e — шифровать файлы

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

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

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

Извлечь файлы RAR — Терминал

Многие программы архивирования в Linux используют Unrar для извлечения файлов RAR. Однако можно взаимодействовать с Unrar и использовать его для извлечения архивных файлов непосредственно из терминала Linux. Вот как это сделать.

Шаг 1. Найдите расположение архива (ов) RAR, которое вы хотите распаковать, на вашем компьютере Linux с помощью команды locate.

locate *.rar

Шаг 2: Обратите внимание на расположение вывода архива RAR. Или скопируйте его в буфер обмена с помощью мыши

Шаг 3: Запишите unrar, затем установите переключатель e и местоположение файла из шага 1.

unrar e /home/username/path/to/rar/file.rar

Шаг 4: Запустите команду ls, чтобы просмотреть результат процесса извлечения.

ls

Найдите имя папки, полученной из вашего архива RAR, и запишите его.

Шаг 5: Используя команду CD, переместите сеанс терминала в папку с файлами.

cd extracted-rar-file-folder

Шаг 6. Просмотрите элементы в папке с файлами RAR, повторно запустив команду ls.

ls

Установка 7zip в Linux

В Linux Mint и Ubuntu Вы можете пойти 2 путями:

Урезанная версия 7zip

Что умеет урезанная linux-версия 7zip:

  1. поддержку только архивов формата 7z;
  2. нет поддержки полноценной консольной утилиты, для автоматизации в скриптах.

Для этого нужно установить пакет:

В Ubuntu с версии 18.04 данный пакет входит в список установленных пакетов по умолчанию. В большинстве дистрибутивов Linux также.

Полная версия

Полная версия 7zip для Linux содержит в себе:

  1. упаковка и распаковка: 7z, BZIP2 (BZ2, TB2, TBZ, TBZ2), GZIP (GZ, TGZ), TAR, ZIP (JAR), XZ, WIM;
  2. только распаковка: ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, MBR, ISO, LZH (LHA), LZMA, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, XAR, Z (TAR);
  3. в этой версии есть также консольный вариант для терминала – .

Для этого нужно установить полную версию 7zip:

Для файлов RAR также предусмотрена поддержка в Linux, для которой нужно поставить отдельный пакет. Вынесли его в отдельный пакет из-за его проприетарности.

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

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

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

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

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

Примеры основного использования программы 7Z

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

Для создания архива используется команда a. Поддерживаемые форматы архивов для создания: 7Z, XZ, GZIP, TAR, ZIP и BZIP2. Если данный файл архива уже существует, он будет добавлять файлы в существующий архив, если нет — создаст. По умолчанию создается архив 7Z.

Для упаковки в архив archive.7z файлов file01.c и file02.c в директории /home/user_name/

cd /home/user_name/
7z a archive.7z file01.c file02.c

Для упаковки в архив archive.7z всего содержимого директории /home/user_name/

cd /home/user_name/
7z a archive.7z

Файл archive.7z будет создаваться в текущей директории /home/user_name/.

Чтобы выбрать формат архива, нужно использовать опцию (ключ) -t (format name), которая позволит вам выбрать формат архива, такой как zip, gzip, bzip2 или tar

7z a -tzip archive.zip

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

7z a -mx9 archive.7z

Создать архив всех файлов за исключением файла file01.c

7z a -mx9 archive.7z -xfile01.c

Установить пароль на файл архива, например password

7z a -mx9 -ppassword archive.7z -xfile01.c

Посмотреть содержимое архива

7z l archive.7z

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

Для распаковки архивов используются команды a и x

Для извлечения содержимого из архива arch.7z в текущую директорию, выполните в терминале:

7z е archive.7z

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

7z x archive.7z

Если архив разбит на множество частей, используйте имя с наименьшим номером тома:

7z x archive.7z.001

Если вы хотите извлечь архив не в текущей диретории, вы можете явно задать целевую директорию с помощью опции -o

7z x arch.7z -o/home/user_name/allarhives

Команда b измеряет скорость процессора и проверяет оперативную память на наличие ошибок.

Тест показывает рейтинг в MIPS (миллион инструкций в секунду). Значение рейтинга рассчитывается по измеренной скорости процессора и нормализуется по результатам работы процессора Intel Core 2 с отключенной опцией многопоточности. Так что, если у вас Intel Core 2 Duo, номинальные значения должны быть близки к реальной частоте процессора.

Как открыть архив RAR в Linux?

Раньше я читал, что для исправления этого косяка, нужно удалить лишние из перечисленных пакетов и оставить какой-то один, который корректно открывает такие архивы. Ну что же, проведём эксперимент, так ли это на самом деле, и какой архиватор откроет корректно архив rar в Linux?

В итоге был достигнут положительный результат: нужно установить или unrar, или p7zip-rar. Пакеты rar и unrar-free обязательно удалите, и будет вам счастье.

Открою ещё один секрет: в линукс просто отлично работает программа 7zip для windows и она отлично открывает любой виндозный архив – проверено! Это так, на всякий случай.

Это конечно костыль, но он меня уже не раз выручал. Остался у меня ещё один вопрос в отношении архивов: как в Linux встроить в контекстное меню пункты: создать архив, распаковать архив? (Вопрос этот решён в последних дистрибутивах линукс, например, в Linux Mint 17)

Но это уже тема отдельной статьи.

Не нашли ответ на свой вопрос? Воспользуйтесь поиском.

4 комментариев к статье “Как открыть архив RAR в Linux?”

Такая проблемма не только в rar но и в zip архивах а все из затого что кто то посчитал что utf-8 теперь у всех. А еще кто то более другой не может по человечески работать с utf и блудит кодировки на каждый язык.

С zip пока не сталкивался, а вот с rar созданных в windows – постоянно. А всё просто – windows почему то предпочитает больше cp1251 нормальной utf8.

Привет. Огромное тебе спасибо за статью. Я уже замучался с этим Rar`ом. Из-за кодировки он даже файлы распаковывать не хотел. Но по твоему совету заработало все как часы.

Да не за что, я сам часто пользуюсь виндозным 7zip и открывает всегда все как нужно:)

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

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

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

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

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

Что такое 7zip?

В 1998 году украинский программист Игорь Павлов разработал новый алгоритм сжатия LZMA, который в первой своей версии превосходил все аналоги в скорости и степени сжатия. Формат архива получил расширение .7z. В 1999 году выпускается первый релиз программы 7zip, в основу которого встал LZMA. На сегодняшний день используется уже усовершенствованный алгоритм LZMA2, что делает его еще быстрее и эффективнее. Архиватор 7zip поддерживает аппаратную инструкцию современных процессоров AES-NI, которая помогает архивировать данные на высокой скорости. Это задействует аппаратные возможности процессоров.

7zip на данный момент можно назвать «комбайном», который работает со всеми популярными форматами, даже с такими как проприетарный RAR. Архиватор WinRAR разработал тоже русский парень.

Архивация файлов – что это такое

Действительно, зачем архивировать документы и папки? Архивацией называется процесс создания архива посредством упаковки файлов. Может происходить вместе со сжатием или без него.

Для архивирования используются специальные программы, именуемые архиваторами. Это идеальный вариант для тех, кто хотел бы увеличить свободное место на винчестере, привести файлы в порядок либо организовать на компьютере рабочее пространство.

Архиватор – особое ПО, предназначенное для аккуратной упаковки файлов в архив или, наоборот, их извлечения оттуда. При создании архивов сохраняются метаданные: название, время создания, право доступа и пр. Качественные архиваторы могут задействовать сжатие без потерь для того, чтобы снизить вес архива. В дальнейшем это позволит выполнить распаковку с точностью до одного бита. Качество не теряется.

Все файлы сжимаются совершенно по-разному. Некоторые упаковываются как текстовые, то есть размер уменьшается существенно. Другие – исключительно как бинарные (либо сильно уменьшаются в размерах, либо остаются почти неизменными).

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

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

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

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

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

Общее описание 7Z

7-Zip является архиватором файлов с наивысшей степенью сжатия, с открытым исходным кодом.

Первоначально она была разработана для Windows. Портированная на Linux 7zip также часто используется для извлечения DEB, RPM и ISO файлов.

Кроме простого архивирования, 7zip может поддерживать шифрование AES-256, а также самораспаковывающиеся и многотомные архивы.

Программа поддерживает 7Z (реализующий алгоритм сжатия LZMA), LZMA2, XZ, ZIP, Zip64, CAB, RAR (если установлен несвободный пакет p7zip-rar), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, большинство образов файловой системы и форматов DEB.

Степень сжатия в новом формате 7z на 30-50% лучше, чем в формате ZIP. 7Z использует плагины для обработки архивов.

Интеграция и распространение

В конце концов, 7z не так уж и далеко вырвался вперед. Zip и RAR, буквально, дышат ему в спину. А какой из этих форматов без проблем «переварит» ваш компьютер или система того пользователя, которому вы передадите сжатый файл?

По степени распространенности лидирует Zip. Инструменты для работы с ним интегрированы в Windows и OS X. Большинство дистрибутивов Linux поддерживают Zip из коробки. В Chrome OS сразу после установки мы можем сжимать и распаковывать файлы в форматах Zip и RAR.

А что же 7z? Для работы с ним необходимо скачать и установить отдельное приложение. Пусть даже это и бесплатная программа, но стоит ли 1—2% от объема файла этой возни? А если вы передаете архив человеку, далекому от всего этого, то придется потратить уйму времени, чтобы объяснить ему, как поступить с файлом.

Поэтому я рекомендую использовать 7z только в той ситуации, когда действительно необходимо добиться максимальной степени сжатия файла. Можно еще поупражняться с настройками архиватора и уменьшить размер файла еще сильнее (но это обернется потерей времени на сжатие и распаковку, а также повысит риск потери данных).

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

Shar

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

Опции shar:

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

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

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

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

Как просто разархивировать файл zip

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

Что же делать, если вы получили такой архив? Если интересно, то почитайте о том, как сжать файл. Как извлечь информацию из него,

Штатные средства Windows

Операционка Windows имеет встроенную программу распаковки.  Научившись извлекать файлы из архива, вы сможете комфортно и без проблем работать с форматом ZIP. В проводнике выбираем заархивированный файл, например, debug.zip. 

Правой кнопкой мыши на него жмем, и в контекстном меню выбираем «Извлечь всё».

Нажимаем кнопку «Обзор» — выбираем куда он будет разархивирован . Жмем кнопку «Извлечь». Вот и вся распаковка.

Подготовка в работе…Итак, вам понадобится следующее: Программа, функцией которой является распаковка архива и извлечение сжатых файлов. Сейчас таких приложений создано очень много, самым популярным среди них признана программа WinRAR. Скачать можно на сайте производителя. WinRAR относится к условно-бесплатному программному обеспечению (Shareware) — через 40 дней, когда истечет пробный период, вам будет предложено приобрести лицензию.

Но настоящий пользователь интернета найдет и «крякнутый » вариант, например, здесь. (Я этого Вам не советовал! Только в ознакомительных целях). Когда закончите установку программы, возможно, понадобится перезагрузка компьютера. После этого можно будет приступать к самой распаковке архива.

Пользоваться ею очень просто, интерфейс понятен даже начинающим пользователям. Архив, который требуется распаковать, в списке файлов он отличается от других ярлыком в виде стопки книг или папки с «молнией» (если у вас установлена ОС Windows XP. У вас ещё установлена XP? ).

Проще всего -нажать кнопку «Извлечь».

Выбирайте папку назначения и жмите «ОК».

Но можно и так.Найдите архив формата ZIP на своем компьютере. О том, как его распознать среди других, было рассказано выше. Лучше заранее переместить архив в отдельную папку, где он не потеряется среди остальных. Зачем еще это нужно, поймете чуть позже. Итак, архив найден – теперь нужно щелкнуть по нему правой кнопкой мыши.

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

Там и увидите все файлы, которые программа предоставила после распаковки. Сам архив со сжатыми копиями этих же файлов все еще остается на компьютере. Лучше удалить его, т.к. он просто уже не нужен. Как видите, извлекать файлы из ZIP-архива очень просто.

Но программа WinRAR может пригодиться не только для этого. С ее помощью вы способны не только распаковать архив формата ZIP, но и создать нечто подобное самостоятельно, а также добавить файлы в уже существующий. Впрочем, об этом речь пойдет уже в другой раз.

Вместо вывода

Надеемся, вам понравился материал об архивации данных. Мы продолжим публиковать материалы на эту тему. Впереди много интересного – оставайтесь с нами!

Вы поверите нам, если мы заверим, что это самое полное и подробное руководство по использованию архивации данных в Windows? Если ваш ответ «Нет», спешим вас огорчить – это именно оно. Убедитесь сами!

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

Начнем мы с теории.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: