Búsqueda de sitios web

Exodus: copie de forma segura archivos binarios de Linux de un sistema Linux a otro


Exodus es un programa sencillo pero útil para copiar de forma fácil y segura archivos binarios de Linux ELF de un sistema a otro. Por ejemplo, si tiene htop (Herramienta de monitoreo de procesos de Linux) instalado en su máquina de escritorio, pero no instalado en su servidor Linux remoto, exodus le brinda una forma de copiar/instalar el binario htop desde la máquina de escritorio. al servidor remoto.

Agrupa todas las dependencias del binario, compila un contenedor vinculado estáticamente para el ejecutable que invoca al vinculador reubicado directamente e instala el paquete en el directorio ~/.exodus/, en el sistema remoto.

Puedes verlo en acción aqui.

Instalar Exodus en sistemas Linux

Puede instalar exodus usando el administrador de paquetes Python PIP, de la siguiente manera. El siguiente comando realizará una instalación específica del usuario (solo para la cuenta con la que inició sesión).

sudo apt install python-pip                [Install PIP On Debian/Ubuntu]
sudo yum install epel-release python-pip   [Install PIP On CentOS/RHEL]
sudo dnf install python-pip	             [Install PIP On Fedora]
pip install --user exodus-bundler          [Install Exodus in Linux] 

A continuación, agregue el directorio ~/.local/bin/ a su variable PATH en su archivo ~/.bashrc, para ejecutar el Éxodo ejecutable como cualquier otro comando del sistema.

export PATH="~/.local/bin/:${PATH}"

Guarde y cierre el archivo. Luego abra otra ventana de terminal para comenzar a usar Exodus.

Nota: También se recomienda instalar gcc y uno de musl libc o diet libc ( Bibliotecas C utilizadas para compilar pequeños lanzadores vinculados estáticamente para las aplicaciones empaquetadas), en la máquina donde empaquetará los archivos binarios.

Utilice Exodus para copiar archivos binarios locales a un sistema Linux remoto

Una vez que haya instalado exodus, puede copiar un binario local (herramienta htop) a una máquina remota simplemente ejecutando el siguiente comando.

exodus htop | ssh tecmint@server3

Luego inicie sesión en la máquina remota y agregue el directorio /home/tecmint/.exodus/bin a su PATH en su ~/.bashrc archivo, para ejecutar htop como cualquier otro comando del sistema.

export PATH="~/.exodus/bin:${PATH}"

Guarde y cierre el archivo, luego obténgalo de la siguiente manera para que los cambios surtan efecto.

source ~/.bashrc

Ahora debería poder ejecutar htop en su máquina Linux remota.

htop

Si tiene dos o más binarios con el mismo nombre (por ejemplo, más de una versión de htop instalada en su sistema, una /usr/bin/htop y otra /usr/local/bin/htop), puede copiarlos e instalarlos en paralelo con el indicador -r, lo que permite asignar alias para cada binario en la máquina remota. .

El siguiente comando instalará las dos versiones de htop en paralelo con /usr/bin/grep llamado htop-1 y /usr/ local/bin/htop llamado htop-2 como se muestra.

exodus -r htop-1 -r htop-2 /usr/bin/htop /usr/local/bin/htop | ssh tecmint@server3

Atención: Exodus tiene una serie de limitaciones y es posible que no funcione con archivos binarios que no sean ELF, arquitecturas de CPU incompatibles, versiones de Glibc y kernel incompatibles, bibliotecas dependientes de controladores, -Bibliotecas cargadas gramaticalmente y dependencias no bibliotecarias.

Para obtener más información, consulte la página de ayuda de Éxodo.

exodus -h           

Repositorio de Exodus Github: https://github.com/intoli/exodus

Conclusión

Exodus es una herramienta simple pero poderosa para copiar archivos binarios desde una máquina Linux a otro sistema Linux remoto. Pruébelo y envíenos su opinión a través del formulario de comentarios a continuación.