Как использовать p7zip для открытия файлов RAR?

Как использовать p7zip для открытия файлов RAR?

Это более конкретный вопросКак открыть файл rar в Linux (вопрос задан в 2015 году)на момент написания статьи не было подробного ответа на вопрос, как p7zip открывает файлы RAR.

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

Этот вопрос может охватывать следующие подвопросы (без вопросительных знаков, чтобы не путать с основным вопросом), которые имеют отношение к объяснению инструкций:

  • Действительно ли p7zip поддерживает формат RAR?
  • Какой пакет установить для p7zip для поддержки формата RAR и какой репозиторий предоставит этот пакет
  • Какой двоичный файл 7z, 7za или 7zr может открыть файл RAR
  • Можно ли использовать p7zip для открытия файла RAR через графический интерфейс?
  • При использовании p7zip для открытия файла RAR произошла ошибка команды с сообщением «Ошибка: Невозможно открыть файл как архив». Как решить эту проблему?

Так как же использовать p7zip для открытия файлов RAR?

Этосамоответвопрос, который был написан как новый вопрос, который был создан на основе обсуждения вэтот мета пост. Если ответов будет несколько, наиболее точный и полный ответ будет принят через некоторое время (не сразу).

решение1

p7zip — это порт командной строки Unix 7-Zip, который поддерживает множество форматов. p7zip поддерживает формат RAR только для распаковки или извлечения. Пользователь может либозагрузить двоичные файлы и исходный кодили установите пакеты, предоставляемые дистрибутивами Linux и другими поддерживаемыми системами.

С бинарниками и исходным кодом p7zip доступен в виде одного файла для загрузки, который может обрабатывать все поддерживаемые форматы, а установка необязательна. Это означает, что инструмент командной строки может быть запущен сразу после того, как файл загрузки (tar.bz2) будет извлечен собственным менеджером архивов в Linux.

С пакетами p7zip потребует отдельных пакетов для обработки всех поддерживаемых форматов и установки. Для Debian (и Ubuntu) p7zip доступен в трех различных пакетах из репозиториев. Убедитесь, что основные и несвободные репозитории (или репозитории universe и multiverse для Ubuntu) включены и обновлены в первую очередь.

Установите требуемый пакет «p7zip-rar», который дополнительно будет включать «p7zip-full» как одну из зависимостей пакета; другой пакет «p7zip» — этоне требуетсясовсем.

sudo apt-get install p7zip-rar

Затем запустите команду 7z, чтобы извлечь файл RAR.

7z x filename.rar

Краткое объяснение:p7zipпредоставляет 7zrкоманду, которая может обрабатывать только архивы 7z.p7zip-полныйпредоставляет 7zкоманду, которая может обрабатывать больше поддерживаемых форматов иp7zip-rarтребуется для 7zработы с архивами RAR.

Обратите внимание на следующие варианты использования:

  • 7zrи 7zaкоманды не будут работать, и только 7zкоманда будет работать с форматом RAR.p7zip на ArchWikiзаметил разницу между двоичными файлами 7z, 7za и 7zr.
  • 7zможет использоваться с любым из поддерживаемых графических архиваторов файлов, включаяфайл-роллер,ковчег,xarchiver,энгрампа. Просто установите один из поддерживаемых менеджеров архивов, чтобы использовать p7zip через графический интерфейс, и никакая дополнительная настройка не потребуется.
  • Более новые версии файлов RAR (особенно RAR версии 5) следует распаковывать или извлекать с помощью более новой версии p7zip (не ниже 16.02), в противном случае p7zip выдаст ошибку и не сможет открыть файл.

Пример выходных данных p7zip (9.20), не сумевшего проверить открытие файла RAR (Rar5):

$ 7z t sample.rar 

7-Zip 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,1 CPU)

Processing archive: sample.rar

Error: Can not open file as archive

Пример выходных данных p7zip (16.02) при успешном открытии RAR-файла (Rar5):

$ p7zip_16.02/bin/7z t sample.rar 

7-Zip [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,32 bits,1 CPU Intel(R) Celeron(R) M processor         1.60GHz (6D8),ASM)

Scanning the drive for archives:
1 file, 483579957 bytes (462 MiB)

Testing archive: sample.rar
--
Path = sample.rar
Type = Rar5
Physical Size = 483579957
Solid = -
Blocks = 5
Encrypted = -
Multivolume = -
Volumes = 1

Everything is Ok

Files: 5
Size:       498584235
Compressed: 483579957

Последний вывод p7zip (16.02) включал строку Type = Rar5, указывающую версию RAR 5. fileКоманда может содержать похожую, но менее удобочитаемую информацию о версии RAR.

$ file *.rar 
sample4.rar: RAR archive data, v1d, os: Unix
sample.rar:  RAR archive data, va6, flags: Archive volume, Commented, Locked, os: Unix

Обратите внимание, что старый файл RAR (Rar) по умолчанию включал, v1dа новый файл RAR (Rar5) включал va6в описание каждого файла. На эту дату ответа нет соответствующей информации, чтобы определить, соответствуют ли описания файлов версиям RAR или нет.

TL;DRp7zip может открывать файлы RAR, при условии, что для обработки формата RAR используются пакет (p7zip-rar), команда (7z) и более новая версия (16.02+ для поддержки Rar5).


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

Связанный контент