Como posso instalar o GNU Parallel junto com o Moreutils no Ubuntu/Debian?

Como posso instalar o GNU Parallel junto com o Moreutils no Ubuntu/Debian?

Posso fazer com que o gerenciador de pacotes resolva o conflito, por exemplo, renomeando o binário (por exemplo, paralelo → gparalelo) ou instalando em um local diferente (por exemplo, /usr/ → /usr/local/)?

Responder1

ParaUbuntu v17.04 ("Zesty Zapus")eDebian v9 ("Estiramento"), (2017ou mais recente) ou distros baseadas nessas versões, leiaA resposta de Bryan Larsen primeiro, o que deve ser suficiente.

Para versões anteriores2017, Leia...


Use dpkgparaforçaa instalação;paralelose dá bem commaisutils- ele renomeiamaisutils' parallelutil para parallel.moreutils. Quando a instalação estiver concluída, ambos os programas (GNUemaisutils) Estão disponíveis.

Obs: se houverdo utilizadorscripts chamam o antigomaisutils parallel, altere esses scripts para usar o nome mais longo.

Detalhes: Buscarparalelopacote (sem instalar ou remover nada). Em seguida, usando compgen, (um bashcomando interno), encontreparalelopacote no arquivo. Se houver mais de um, use o mais recente. Force a instalação desse pacote, apesar dos conflitos.

apt-get --assume-yes --download-only install parallel &&
ls --sort=version $(compgen -f /var/cache/apt/archives/parallel) |
    tail -n 1 | xargs dpkg --force-conflicts -i

Como visualizar os desvios resultantes:

dpkg-divert --list 'par*'

Saída:

diversion of /usr/share/man/man1/parallel.1.gz to  /usr/share/man/man1/parallel.moreutils.1.gz by parallel
diversion of /usr/bin/parallel to /usr/bin/parallel.moreutils by parallel

Veja como os dois executáveis ​​binários estão disponíveis:

compgen -c parallel | xargs which | xargs ls -l

Saída:

-rwxr-xr-x 1 root root 240814 Oct 31  2014 /usr/bin/parallel
-rwxr-xr-x 1 root root  10592 Jul 21  2015 /usr/bin/parallel.moreutils

Responder2

Este conflito é resolvido emUbuntu 17.04eExtensão Debian.

Se você instalarparalelo&maisutilsvocê consegue oGNU parallelcomo /usr/bin/parallelemaisutilé parallelcomo /usr/bin/parallel.moreutils. Se você apenas instalarmaisutils, ele fornece /usr/bin/parallel.

Se você estiver usando uma versão mais antiga doUbuntuouDebian, você pode baixar e instalar os .deb de uma versão mais recente: eles instalam e funcionam perfeitamente.

Responder3

Eu acho que o caminho mais fácil seria instalar um dos pacotes normalmente (por exemplo parallel) e apenas extrair outro para o caminho personalizado:

$ sudo apt-get install libio-pty-perl libipc-run-perl
$ sudo apt-get download moreutils
$ dpkg -x moreutils_0.54-1_amd64.deb /tmp/moreutils
$ cd /tmp/moreutils/usr/bin/

Responder4

Paralelos GNU é apenas um script perl, então você pode simplesmente copiá-lo em algum lugar útil (por exemplo, /usr/local/bin/gnu-parallel).

(Basta verificar as dependências do Perl).

informação relacionada