Как установить unrar-несвободный?


31

Я установил unrar-free, но я не могу извлечь несколько файлов .rarархива ( my_archive.part01.rar, my_archive.part02.rarи т.д.):

$ ls
my_archive.part01.rar
my_archive.part02.rar
my_archive.part03.rar
$ unrar -x my_archive.part01.rar

unrar 0.0.1  Copyright (C) 2004  Ben Asselstine, Jeroen Dekkers


Extracting from /home/morgan/my_archive.part01.rar

Extracting  my_text_file.txt      Failed
1 Failed

Я прочитал, что мне нужно unrar-nonfreeуправлять многочастными архивами, но, похоже, он не включен в официальное репо Raspbian.

Как я могу установить unrar-nonfree?


1
Это может отличаться от того, что было в 2012 году, но я недавно установил runrar-freeсинтаксис, unrar e -r <filename>.rarи он будет рекурсивно извлекать ваши файлы.
Blairg23

Ответы:


54
  1. Удалить unrar-free.

    $ sudo apt-get remove unrar-free
    
  2. Убедитесь, что у вас есть исходный репозиторий путем редактирования /etc/apt/sources.list.

    $ cat /etc/apt/sources.list
    # Default repository
    deb http://archive.raspbian.org/raspbian wheezy main contrib non-free rpi
    # Source repository to add
    deb-src http://archive.raspbian.org/raspbian wheezy main contrib non-free rpi
    
  3. Синхронизировать базу данных apt.

    $ sudo apt-get update
    
  4. Создайте рабочий каталог и перейдите в него. Команда unrar-nonfreeбудет встроена в этот каталог.

    $ cd $(mktemp -d)
    
  5. Установите зависимости, необходимые для unrar-nonfree.

    $ sudo apt-get build-dep unrar-nonfree
    
  6. Загрузите unrar-nonfreeисходники и соберите .debпакет.

    $ sudo apt-get source -b unrar-nonfree
    
  7. Установите сгенерированный .debпакет. Его имя варьируется в зависимости от версии unrar-nonfree.

    $ sudo dpkg -i unrar*.deb
    
  8. Рабочий каталог, созданный на шаге 4, будет удален при следующей загрузке; нет смысла его удалять.

После установки вы можете использовать либо unrarили unrar-nonfree( unrarявляется simlink для unrar-nonfree).

Внимание: unrar-nonfreeи unrar-freeварианты разные. Например, чтобы извлечь архив:

$ # with unrar-free
$ unrar -x my_archive.part01.rar

$ # with unrar-nonfree
$ unrar e my_archive.part01.rar

Пожалуйста, man unrar-nonfreeдля более подробной информации.


Это небольшая поправка к отличному ответу Моргана. Шаг 7 должен быть следующим: $ sudo dpkg -i unrar_4.1.4-1_armhf.deb Кроме этого, это идеальное решение. Тим

1
Превратил шаг # 7, sudo dpkg -i unrar*.debчтобы он больше не зависел от номера версии.
Мариус Бутук

Я следовал этим шагам только для того, чтобы получить «E: Вы должны поместить некоторые« исходные »URI в ваш sources.list». Я уверен, что сделал это, добавив -src к дубликату моего существующего репозитория. Ошибка произошла на пятом шаге. Кто-нибудь может помочь?
BenjaminJB

Вы ввели команду sudo apt-get update, верно? Есть ли сообщение об ошибке?
Морган Курбе

Отредактировал ответ с небольшим исправлением: удалить каталоги компиляции невозможно, потому что мы должны sudo. Также добавлен флаг f (сила), чтобы нас не спрашивали "ты уверен?" для каждого файла.
Vini.g.fer

2

это мой скомпилированный unrar 4.20

unrar_4.20_armhf.deb

eliafino


11
Всем привет. Этот ответ останется актуальным только в течение короткого периода времени (пока не обновится). Обычно нам нравятся ответы, чтобы иметь возможность стоять самостоятельно, поэтому обучение тому, как скомпилировать пакет, лучше.
Jivings
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.