Website-Suche

Exodus - Sicheres Kopieren von Linux-Binärdateien von einem Linux-System auf ein anderes


Exodus ist ein einfaches, aber nützliches Programm zum einfachen und sicheren Kopieren von Linux ELF-Binärdateien von einem System auf ein anderes. Wenn Sie z. B. htop (Linux Process Monitoring Tool) auf Ihrem Desktop-Computer installiert haben, aber nicht auf Ihrem Linux-Remote-Server, bietet exodus die Möglichkeit, die htop-Binärdatei vom Desktop-Computer auf den Remote-Server zu kopieren/zu installieren.

Es bündelt alle Abhängigkeiten der Binärdatei, kompiliert einen statisch verknüpften Wrapper für die ausführbare Datei, der den verschobenen Linker direkt aufruft, und installiert das Bundle im Verzeichnis ~/.exodus/ auf dem Remote-System.

Sie können es hier in Aktion sehen.

Installieren Sie Exodus auf Linux-Systemen

Sie können Exodus mit dem Python-PIP-Paket-Manager wie folgt installieren. Der folgende Befehl führt eine benutzerspezifische Installation durch (nur für das Konto, mit dem Sie sich angemeldet haben).

$ 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] 

Fügen Sie als nächstes das Verzeichnis ~/.local/bin/ zu Ihrer PATH-Variablen in Ihrer ~/.bashrc-Datei hinzu, um die ausführbare Exodus-Datei wie jeden anderen Systembefehl auszuführen.

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

Speichern und schließen Sie die Datei. Öffnen Sie dann ein weiteres Terminalfenster, um Exodus zu verwenden.

Hinweis: Es wird auch dringend empfohlen, dass Sie gcc und eine von entweder musl libc oder diet libc (C-Bibliotheken, die zum Kompilieren kleiner statisch verknüpfter Launcher für die gebündelten Anwendungen verwendet werden) auf dem Rechner installieren, auf dem Sie Binärdateien verpacken werden.

Verwenden Sie Exodus, um die lokale Binärdatei auf ein Remote-Linux-System zu kopieren

Nachdem Sie Exodus installiert haben, können Sie eine lokale Binärdatei (htop-Tool) auf einen Remote-Computer kopieren, indem Sie einfach den folgenden Befehl ausführen.

$ exodus htop | ssh tecmint@server3

Melden Sie sich dann am Remote-Rechner an und fügen Sie das Verzeichnis /home/tecmint/.exodus/bin zu Ihrem PATH in Ihrer ~/.bashrc-Datei hinzu, um htop wie jeden anderen Systembefehl auszuführen.

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

Speichern und schließen Sie die Datei, und geben Sie sie dann wie folgt als Quelle an, damit die Änderungen wirksam werden.

$ source ~/.bashrc

Jetzt sollten Sie in der Lage sein, htop auf Ihrem Remote-Linux-Computer auszuführen.

$ htop

Wenn Sie zwei oder mehr Binärdateien mit dem gleichen Namen haben (z.B. mehr als eine Version von htop auf Ihrem System installiert, eine /usr/bin/htop und eine andere /usr/local/bin/htop), können Sie sie kopieren und parallel mit dem Flag -r installieren, das die Zuweisung von Aliasen für jede Binärdatei auf dem entfernten Rechner ermöglicht.

Der folgende Befehl installiert die beiden htop-Versionen parallel zu /usr/bin/grep mit dem Namen htop-1 und /usr/local/bin/htop mit dem Namen htop-2, wie gezeigt.

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

Achtung: Exodus hat eine Reihe von Einschränkungen und es kann sein, dass es nicht funktioniert mit Nicht-ELF-Binärdateien, inkompatiblen CPU-Architekturen, inkompatiblen Glibc- und Kernel-Versionen, treiberabhängigen Bibliotheken, programmatikalisch geladenen Bibliotheken und Nicht-Bibliotheksabhängigkeiten.

Weitere Informationen finden Sie auf der Exodus-Hilfeseite.

$ exodus -h           

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

Schlussfolgerung

Exodus ist ein einfaches, aber leistungsstarkes Tool zum Kopieren von Binärdateien von einem Linux-Rechner auf ein anderes Linux-Remote-System. Probieren Sie es aus und geben Sie uns Ihr Feedback über das untenstehende Kommentarformular.

Verwandte Artikel: