Ricerca nel sito web

Exodus: copia in modo sicuro i file binari Linux da un sistema Linux a un altro


Exodus è un programma semplice ma utile per copiare in modo semplice e sicuro i binari Linux ELF da un sistema all'altro. Ad esempio, se hai htop (Linux Process Monitoring Tool) installato sul tuo computer desktop, ma non installato sul tuo server Linux remoto, exodus offre un modo per copiare/installare il file binario htop dal computer desktop al server remoto.

Raggruppa tutte le dipendenze del binario, compilando un wrapper collegato staticamente per l'eseguibile che richiama direttamente il linker riposizionato e installando il bundle nella directory ~/.exodus/, sul sistema remoto.

Puoi vederlo in azione qui.

Installa Exodus nei sistemi Linux

Puoi installare exodus utilizzando il gestore pacchetti PIP Python, come segue. Il comando seguente eseguirà un'installazione specifica per l'utente (solo per l'account con cui hai effettuato l'accesso).

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] 

Successivamente, aggiungi la directory ~/.local/bin/ alla variabile PATH nel tuo file ~/.bashrc, per eseguire il comando exodus eseguibile come qualsiasi altro comando di sistema.

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

Salva e chiudi il file. Quindi apri un'altra finestra di terminale per iniziare a utilizzare exodus.

Nota: si consiglia inoltre vivamente di installare gcc e uno tra musl libc o diet libc ( Librerie C utilizzate per compilare piccoli launcher collegati staticamente per le applicazioni in bundle), sulla macchina su cui impacchetterai i binari.

Usa Exodus per copiare file binari locali su un sistema Linux remoto

Dopo aver installato exodus, puoi copiare un file binario locale (strumento htop) su un computer remoto semplicemente eseguendo il comando seguente.

exodus htop | ssh tecmint@server3

Quindi accedi al computer remoto e aggiungi la directory /home/tecmint/.exodus/bin al tuo PATH nel tuo ~/.bashrc file, per eseguire htop come qualsiasi altro comando di sistema.

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

Salva e chiudi il file, quindi sorgente come segue, affinché le modifiche abbiano effetto.

source ~/.bashrc

Ora dovresti essere in grado di eseguire htop sulla tua macchina Linux remota.

htop

Se hai due o più file binari con lo stesso nome (ad esempio, più di una versione di htop installata sul tuo sistema, una /usr/bin/htop e un'altra /usr/local/bin/htop), puoi copiarli e installarli in parallelo con il flag -r, abilita l'assegnazione di alias per ogni binario sul computer remoto .

Il seguente comando installerà le due versioni htop in parallelo con /usr/bin/grep chiamate htop-1 e /usr/ local/bin/htop chiamato htop-2 come mostrato.

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

Attenzione: Exodus ha una serie di limitazioni e potrebbe non funzionare con binari non ELF, architetture CPU incompatibili, versioni Glibc e kernel incompatibili, librerie dipendenti dai driver, versioni professionali -librerie caricate grammaticalmente e dipendenze non di libreria.

Per ulteriori informazioni, consultare la pagina di aiuto sull'esodo.

exodus -h           

Repository Github di Exodus: https://github.com/intoli/exodus

Conclusione

Exodus è uno strumento semplice ma potente per copiare i file binari da una macchina Linux a un altro sistema Linux remoto. Provalo e forniscici il tuo feedback tramite il modulo di commento qui sotto.