Распаковка и создание RAR архивов в Linux. Команды unrar, rar

Рассмотрим, как распаковывать и создавать RAR архивы в Linux.
Формат RAR не популярен в Linux среде. Например, штатные графические менеджеры архивов, которые используются в Linux дистрибутивах, обычно не умеют работать с RAR. Чтобы работать с такими архивами, нужно устанавливать дополнительные пакеты.
Для распаковки RAR архивов в Linux используется бесплатный пакет UNRAR от компании RARLAB.
Для создания RAR-архивов служит пакет с одноименным названием RAR. Не пугайтесь, если увидите предупреждение, что это trial-версия. На самом деле пакет не имеет ограничений на время использования. Это такая же вечная пробная версия, как и WinRAR для Windows.
Установка UNRAR
Сначала установим пакет UNRAR.
sudo apt install unrar
yum install unrar
sudo dnf install unrar
Обычно, после того, как вы установили пакет UNRAR, некоторые графические менеджеры архивов автоматически начинают поддерживать файлы в формате RAR, и вы можете распаковать их, просто щелкнув правой кнопкой по файлу в файловом менеджере и выбрав пункт Распаковать (может зависеть от дистрибутива).
Распаковка RAR-архивов
Чтобы распаковать RAR-архив, используя командную строку, выполните следующую команду (вместо archive.rar укажите путь до вашего архива). Архив будет распакован в текущую директорию.
unrar x archive.rar
Чтобы распаковать архив в определённую директорию (она должна существовать), укажите ее путь после имени архива (вместо ./data укажите путь до директории, в которую нужно распаковать архив):
unrar x archive.rar ./data

Список файлов в архиве
Чтобы получить список файлов в архиве, используется опция l :
unrar l archive.rar
Протестировать архив
Чтобы убедиться, что архив «не битый», используется опция t (test). Тестируется целостность каждого файла в архиве и выводится результат для каждого файла.
unrar t archive.rar
Распаковать RAR с паролем
Чтобы распаковать архив, защищенный паролем, нужно указать пароль, используя опцию p :
unrar pВАШПАРОЛЬ x archive.rar
Другие возможности команды UNRAR
Мы рассмотрели только базовые опции. UNRAR имеет больше возможностей.
Приведем список некоторых часто используемых опций:
| Опция | Описание |
|---|---|
| x | Распаковать архив, сохраняя структуру директорий архива. |
| e | Распаковать архив. Структура директорий архива не сохраняется. Все файлы распаковываются в одну директорию. Если попадаются файлы с одинаковыми именами, то будет выдан запрос на перезапись/пропуск/переименование файла. |
| pПАРОЛЬ | Указать пароль для защищенного архива (password). |
| l | Вывести список файлов в архиве (list). |
| t | Протестировать целостность архива (test). |
| cl | Преобразовать имена файлов в строчные буквы (convert to lower case). |
| cu | Преобразовать имена файлов в прописные буквы (convert to upper case). |
| kb | Распаковывать все файлы, включая «битые» (keep broken). |
Полный список всех поддерживаемых опций можно получить, выполнив:
man unrar
Создание RAR архивов в Linux
Для создания RAR архивов в Linux используется пакет RAR.
Установка пакета RAR
Для установки RAR выполните команду (выберите соответствующую команду для вашего дистрибутива):
sudo apt install rar sudo dnf install rar yum install rar
Создать RAR архив
Для создания RAR архивов используется опция a команды rar . Например, заархивируем директорию mydir в файл archive.rar :
rar a archive.rar mydir
В результате будет создан архив archive.rar , который содержит только файлы, расположенные непосредственно в директории mydir , не включая вложенные директории.

Чтобы заархивировать директорию полностью, включая все вложенные файлы и директории, используется опция -r (recursive):
rar -r a archive.rar mydir
Можно указать список файлов, которые нужно заархивировать:
rar a archive.rar myfile1 myfile2 myfile3
Указать степень сжатия
Чтобы указать степень сжатия, используется опция -mЧИСЛО , для которой указывается число от 0 до 5. 0 — без сжатия, 1 — минимальное сжатие, 5 — максимальное. По умолчанию используется степень сжатия — 3. Пример создания архива с максимальной степенью сжатия:
rar a -m5 archive.rar myfiles
Разбить архив на несколько файлов
Используя опцию -vРАЗМЕР можно создать архив, который будет разбит на несколько файлов. Для указания размера нужно использовать обозначения: M — мегабайты, k — килобайты, b — байты. Например, создадим архив, который разобьем на файлы размером 100 мегабайт:
rar a -v100M archive.rar myfiles
Распаковать такой архив можно обычными средствами команды rar . Только в качестве архива нужно указать первый файл: rar x archive.part01.rar
Добавить файлы в архив
Чтобы добавить файлы в существующий архив, используется опция u :
rar u archive.rar myfile.dat
Удалить файлы из архива
Rar позволяет удалять отдельные файлы из существующего архива, для этого используется опция d .
rar d archive.rar myfile
Восстановить битый архив
Если архив поврежден, то можно попытаться его восстановить, используя опцию r :
rar r archive.rar
Создать архив с паролем
Чтобы создать архив, защищенный паролем, используется опция -p :
rar a -pВАШПАРОЛЬ archive.rar myfiles
Для существующего RAR-архива также можно задать пароль:
rar a -p archive.rar
В результате выполнения данной команды появится запрос на ввод пароля.
Распаковать архив
Команда rar , как и описанная выше команда unrar , умеет распаковывать архивы. Для распаковки архивов используется опция x :
rar x archive.rar
Другие возможности команды RAR
Команда rar обладает внушительным количеством опций. Полное описание команды rar можно получить, выполнив в терминале:
man rar
WinRAR для Linux
Стандартный архиватор на Linux не умеет открывать архивы в формате «.rar», для работы с ними вам понадобится WinRAR. Вы можете скачать WinRAR для Linux бесплатно и установить из терминала с помощью команды:
sudo apt-get install unrar
Либо воспользовавшись ссылками внизу этой страницы. Скачав архив с программой нужно извлечь его и установить также из терминала:
tar xzf rarlinux-5.4.0.tar.gz
cd rar
make install
Примечание: название архива может отличаться, в зависимости от версии, которую вы скачаете.
Версия WinRAR для Linux (Ubuntu, Fedora и др.) не имеет графического интерфейса. Для работы с ней необходимо знать основные команды. К примеру, чтобы извлечь файлы из архива в текущую папку, введите:
unrar e archive.rar
где «archive.rar» – имя вашего архива.
Для просмотра содержимого архива, введите:
unrar l archive.rar
Чтобы извлечь все файлы с папками (с сохранением путей), введите команду:
unrar x archive.rar
Ниже на странице вы можете скачать справку, в которой есть описание работы с WinRAR из командной строки. Также в архиве с программой лежит файл rar.txt – в нем есть описание всех команд (на английском).
Преимущества WinRAR для Linux
- Простота использования – нужно лишь запомнить основные команды, которых не очень много;
- Работа с RAR архивами, созданных «винраром» на Windows;
- Через cron можно настроить выполнение команд архивации по расписанию, реализовав тем самым функционал резервного копирования;
- Высокая скорость работы в многопоточном режиме;
- Есть 64-х разрядная версия.
Есть ли недостатки?
- не выявлено. Если вам известно о них, напишите в комментариях.
Скачайте WinRAR для Linux (последнюю версию) с официального сайта по ссылкам ниже:
| последняя версия | 6.24 |
| совместимость | Linux, FreeBSD |
| язык | перевод не требуется |
| лицензия | условно-бесплатно |
Установка rar-архиватора Ubuntu/Debian
Все очень просто, но программа платная, возможно начнет клянчить денег, но пока она об этом ни слова не сказала.
Для начала нужно добавить не свободные репрозитории, например от Яндекса:
Зайти в /etc/apt/sources.list и добавить строки:
deb http://mirror.yandex.ru/debian/ stable main contrib non-free deb-src http://mirror.yandex.ru/debian/ stable main contrib non-free deb http://security.debian.org/ stable/updates main contrib non-free deb-src http://security.debian.org/ stable/updates main contrib non-free
Обновить список пакетов:
ну и затем установить rar-архиватор.
apt install rar
apt install unrar
Но работает оно лишь из консоли
rar a -r -m5 -t -dh /home/admin/arhiv.rar /home/www
Пример работы в Linux
a — ключ обозначающий создание или добавление файла в архив
-r — указывает, что нужно архивировать папку целиком со всеми подпапками
-m5 — степень сжатия — 0 — шустрое сжатие — 5 максимальное сжатие
-t — тестирование архива, после создания
-dh — позволяет открыть файл, даже если он кем то занят
первый путь — куда будет сохранен архив
второй — что в него попадет.
Если нужно сжать конкретный файл, чтобы он лежал в корне архива, то лучше сперва перейти в каталог с этим файлом:
rar a arhiv.rar -m5 file.txt
Если указывать полный путь к файлу, то этот полный путь так же попадет в архив.
unrar — работа с файлами RAR в Linux Mint, Ubuntu или Debian

Люди, которые перешли на Linux с ОС Windows, привыкли пользоваться архиватором WinRAR. Популярность этого архиватора и формата RAR в частности, уже прошла, но все же его можно встретить.
Так как формат архивов RAR является проприетарным, популярные дистрибутивы Linux, такие как Ubuntu, Linux Mint, Debain и Fedore, не поддерживают этот формат архива «из коробки», но ее легко добавить.
Для того, чтобы подружить Ubuntu или Debian с файлами 7-zip, Вам сюда
История WinRAR
Для операционной системы Linux компания RARL ab выпускает нативные приложения WinRAR. Скачать можно – здесь. На удивление, но версии WinRAR for Linux актуальны и выпускаются параллельно с win-версиями. Надо отдать должное создателю. Кстати, разработчиком является Евгений Рошал, родившийся в Челябинске. Кроме WinRAR он причастен к разработке ранее популярного FAR Manager.
Кроме гордости за причастность русских к разработке WinRAR, особых достоинств на сегодняшний день у него нет. OpenSource архиватор 7-zip по производительности и функционалу на голову выше WinRAR.
Поддержка проприетарного формата от WinRAR на сегодняшний день очень распространена на территории России. Поэтому поддержку сбрасывать RAR со счетов не стоит.
Установка пакетов unrar и rar
Данный способ добавляет поддержку стандартному архиватору вашей операционной системы. Также есть возможность работать с rar из консоли.
Чтобы обучить свою Ubuntu или Debian открывать RAR , устанавливаем пакет unrar :
sudo apt-get install unrar
В Debian пакета unrar нет изначально, так как это проприетарный формат архива. В Ubuntu unrar установлен, если при установки ОС вы ставили галочку – ставить проприетарные пакеты.
Если хотите создавать RAR в Ubuntu, то устанавливаем пакет rar:
sudo apt-get install rar
Всего и делов! Файлы RAR теперь открываются и можно создавать RAR прямо из контекстного меню Nautilus`a.
Примеры работы с rar и unrar
Используем unrar
Разархивируем файл rar в Linux — /home/user/file_name.rar в директорию /home/user/tmp:
unrar e /home/user/file_name.rar /home/user/tmp
Распаковываем rar, если он запаролен:
unrar pПАРОЛЬ e /home/use/file_name.rar /home/user/tmp
Проверяем целостность rar в Ubuntu:
unrar t /home/user/file_name.rar
Используем rar
Создаем RAR в Linux:
rar a -mСЖАТИЕ /home/user/file_name.rar /home/user
Степень сжатия может быть от 0 до 5. Если не указывать, то по умолчанию используется 3 (средняя степень сжатия).
Комментарии
laacrus, 12 июля 2010 г. 10:42 #
У меня в ubuntu rar открывает, но кодировка не соответствует системной. Файлы с неправильной кодировкой не распаковываются. Как можно исправить?
Зюзгин Иван, 13 июля 2010 г. 10:32 #
laacrus: У меня в ubuntu rar открывает, но кодировка не соответствует системной. Файлы с неправильной кодировкой не распаковываются. Как можно исправить?
Даже не знаю. Не разу с таким не сталкивался.
Turuk Makto, 29 октября 2010 г. 19:45 #
А лучше установить в ubuntu архиватор 7-zip, который поддерживает работу с rar полностью
sudo apt-get install p7zip-full
примерно так 😉
Mut@NT, 31 октября 2010 г. 02:01 #
Turuk Makto: А лучше установить в ubuntu архиватор 7-zip, который поддерживает работу с rar полностью sudo apt-get install p7zip-full примерно так 😉
Можно и так. Я об этом тоже писал здесь. Но замечательно, когда есть альтернативы
Nur, 15 ноября 2010 г. 15:15 #
laacrus: У меня в ubuntu rar открывает, но кодировка не соответствует системной. Файлы с неправильной кодировкой не распаковываются. Как можно исправить?
unrar x имя_архива.rar или unrar e имя_архива.rar
lifephysic, 7 декабря 2010 г. 00:22 #
Luit -encoding cp-1251 – поможет поменять кодировку консоли.
Иногда вопрос решает…