Como instalar unrar-nonfree?

31

Eu instalei unrar-free, mas eu não posso extrair uma multi-arquivo de .rararquivo ( my_archive.part01.rar, my_archive.part02.rar, etc.):

$ 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

Li que preciso unrar-nonfreegerenciar arquivos com várias partes, mas parece que não está incluído no repositório oficial do Raspbian.

Como posso instalar unrar-nonfree?

Morgan Courbet
fonte
1
Pode ser diferente do que era em 2012, mas eu instalei recentemente runrar-freee a sintaxe é unrar e -r <filename>.rare ela extrairá recursivamente seus arquivos.
precisa saber é o seguinte

Respostas:

54
  1. Desinstalar unrar-free.

    $ sudo apt-get remove unrar-free
    
  2. Verifique se você possui um repositório de origem editando /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. Sincronize o banco de dados apt.

    $ sudo apt-get update
    
  4. Crie um diretório de trabalho e vá para ele. O unrar-nonfreecomando será construído neste diretório.

    $ cd $(mktemp -d)
    
  5. Instale as dependências requeridas por unrar-nonfree.

    $ sudo apt-get build-dep unrar-nonfree
    
  6. Faça o download das unrar-nonfreefontes e construa o .debpacote.

    $ sudo apt-get source -b unrar-nonfree
    
  7. Instale o .debpacote gerado . Seu nome varia de acordo com a versão do unrar-nonfree.

    $ sudo dpkg -i unrar*.deb
    
  8. O diretório de trabalho que você criou na etapa 4 será removido na próxima inicialização; não há como excluí-lo.

Depois de instalado, você pode usar unrarou unrar-nonfree( unraré um link simbólico para unrar-nonfree).

Aviso: unrar-nonfreee as unrar-freeopções são diferentes. Por exemplo, para extrair um arquivo morto:

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

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

Por favor, man unrar-nonfreepara mais detalhes.

Morgan Courbet
fonte
Esta é uma pequena correção à excelente resposta de Morgan. A etapa 7 deve ser a seguinte: $ sudo dpkg -i unrar_4.1.4-1_armhf.deb Além disso, é uma solução perfeita. Tim
1
Transformei a etapa 7 em, sudo dpkg -i unrar*.debpara que não dependa mais do número da versão.
Marius Butuc
Eu segui essas etapas exatamente apenas para obter 'E: Você deve colocar alguns URIs' source 'em seu sources.list'. Estou certo de que fiz isso adicionando -src a uma duplicata do meu repositório existente. O erro ocorreu na etapa cinco. Alguém pode ajudar?
BenjaminJB.
Você digitou o comando sudo apt-get update, certo? Existe alguma mensagem de erro?
Morgan Courbet
A resposta foi editada com uma pequena correção: remover os diretórios de compilação não é possível porque precisamos do sudo. Também foi adicionada a flag f (force) para que não sejam questionados "você tem certeza?" para cada arquivo.
Vini.g.fer
2

este é o meu unrar compilado 4.20

unrar_4.20_armhf.deb

eliafino

eliafino
fonte
11
Olá. Esta resposta só será relevante por um curto período de tempo (até que o unrar) seja atualizado. Geralmente, gostamos de respostas para podermos manter-se sozinhos, e é por isso que ensinar como compilar o pacote é melhor.
Jivings