Respuestas:
Para Ubuntu v17.04 ("Zesty Zapus") y Debian v9 ("Stretch") , ( 2017 o más reciente), o distribuciones basadas en esas versiones, lea primero la respuesta de Bryan Larsen , que debería ser suficiente.
Para versiones anteriores a 2017 , sigue leyendo ...
Use dpkgpara forzar la instalación; Paralelamente se lleva muy bien con moreutils - renombra moreutils ' parallelutil a parallel.moreutils. Cuando se realiza la instalación, ambos programas ( GNU y moreutils ) están disponibles.
Nota: si alguna secuencia de comandos de usuario llama a moreutils anteriores parallel , cambie esas secuencias de comandos para usar el nombre más largo.
Detalles: Obtenga el paquete paralelo (sin instalar ni quitar nada). Luego compgen, usando (un bashcomando interno), busque el paquete paralelo en el archivo. Si hay más de uno, use el último. Fuerce la instalación de ese paquete, a pesar de los conflictos.
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
Cómo ver los desvíos resultantes:
dpkg-divert --list 'par*'
Salida:
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
Vea cómo ambos ejecutables binarios están disponibles:
compgen -c parallel | xargs which | xargs ls -l
Salida:
-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
apt-get installsigue quejándose del conflicto, como escribiste anteriormente.
/var/lib/dpkg/statuspara eliminar el conflicto. Busqué "Conflictos: moreutils", eliminó esta línea. Fuente: superuser.com/a/815371/99136 . Parece funcionar ahora, pero me temo que una actualización del paquete "paralelo" volverá a romper las cosas.
apt-get installadvierte que el parallelpaquete no se actualizará, pero apt-cache policyno muestra versiones diferentes, e incluso apt-get dist-upgradeno tocará el parallelpaquete. Entonces, la actualización parallelparece ser un proceso que debe iniciarse conscientemente. Bien por mi.
Si instala en paralelo y moreutils se obtiene la GNU parallel como /usr/bin/parallely moreutil 's parallelcomo /usr/bin/parallel.moreutils. Si solo instala moreutils , proporciona /usr/bin/parallel.
Si está utilizando una versión anterior de Ubuntu o Debian , puede descargar e instalar los .deb de una versión más nueva: se instalan y funcionan bien.
Supongo que la ruta más fácil sería instalar uno de los paquetes normalmente (por ejemplo parallel) y simplemente extraer otro a la ruta personalizada:
$ 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/
GNU parallels es solo un script perl, por lo que podría copiarlo en algún lugar útil (por ejemplo, / usr / local / bin / gnu-parallel).
(Solo verifique las dependencias perl).