Exodus - droši kopējiet Linux binārus failus no vienas Linux sistēmas uz citu


Exodus ir vienkārša, tomēr noderīga programma, lai viegli un droši kopētu Linux ELF bināros failus no vienas sistēmas uz otru. Piemēram, ja jūsu darbvirsmas datorā ir instalēts htop (Linux procesu uzraudzības rīks), bet tas nav instalēts jūsu attālajā Linux serverī, exodus dod iespēju kopēt/instalēt htop bināro versiju no darbvirsmas mašīnas uz attālo serveri.

Tas apvieno visas binārā režīma atkarības, sastādot izpildāmam failam statiski saistītu iesaiņojumu, kas tieši izsauc pārvietoto saiti, un paketi instalējot attālās sistēmas direktorijā ~/.exodus/.

To var redzēt darbībā šeit.

Exodus patiešām noder divos kritiskos gadījumos: 1) ja jums nav root piekļuves mašīnā un/vai 2) ja pakete, kuru vēlaties izmantot, nav pieejama Linux izplatīšanai, kuru izmantojat citā mašīnā.

Instalējiet Exodus Linux sistēmās

Exodus var instalēt, izmantojot Python PIP pakotņu pārvaldnieku, šādi. Tālāk sniegtā komanda veiks lietotāja instalēšanu (tikai kontam, kurā esat pieteicies).

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

Pēc tam pievienojiet direktoriju ~/.local/bin/ savam PATH mainīgajam failā ~/.bashrc , lai palaistu exodus izpildāmo failu tāpat kā jebkuru citu sistēmas komandu .

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

Saglabājiet un aizveriet failu. Pēc tam atveriet citu termināļa logu, lai sāktu izmantot izceļošanu.

Piezīme. Ir arī ļoti ieteicams mašīnā, kurā iesaiņojat bināros failus, instalēt gcc un vienu no musl libc vai diet libc (C bibliotēkas, ko izmanto, lai apkopotu nelielas statiski saistītas palaišanas programmas apvienotajām lietojumprogrammām).

Izmantojiet Exodus, lai kopētu lokālo bināro failu uz attālo Linux sistēmu

Kad esat instalējis exodus, varat kopēt vietējo bināro failu (htop rīks) uz attālo mašīnu, vienkārši izpildot šo komandu.

$ exodus htop | ssh [email 

Pēc tam piesakieties attālajā datorā un pievienojiet direktoriju /home/tecmint/.exodus/bin savam PATH failā ~/.bashrc , lai palaistu htop tāpat kā jebkura cita sistēmas komanda.

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

Saglabājiet un aizveriet failu, pēc tam iegūstiet to šādi, lai izmaiņas stātos spēkā.

$ source ~/.bashrc

Tagad jums vajadzētu būt iespējai palaist htop savā attālajā Linux mašīnā.

$ htop

Ja jums ir divi vai vairāki bināri faili ar tādu pašu nosaukumu (piemēram, sistēmā ir instalēta vairāk nekā viena htop versija, viena /usr/bin/htop un otra /usr/local/bin/htop ), tos var kopēt un instalēt paralēli karodziņam -r , tas ļauj piešķirt pseidonīmus katram tālvadības mašīnas bināram.

Šī komanda instalēs abas htop versijas paralēli/usr/bin/grep ar nosaukumu htop-1 un/usr/local/bin/htop ar nosaukumu htop-2 kā parādīts.

$ exodus -r htop-1 -r htop-2 /usr/bin/htop /usr/local/bin/htop | ssh [email 

Uzmanību: Exodus ir vairāki ierobežojumi, un tas var neizdoties strādāt ar ne-ELF bināriem failiem, nesaderīgām CPU arhitektūrām, nesaderīgām Glibc un kodola versijām, no draivera atkarīgām bibliotēkām, gramatiski ielādētām bibliotēkām un ārpus bibliotēkas atkarībām.

Plašāku informāciju skatiet izceļošanas palīdzības lapā.

$ exodus -h           

Exodus Github krātuve: https://github.com/intoli/exodus

Exodus ir vienkāršs, tomēr spēcīgs rīks bināru kopēšanai no vienas Linux mašīnas uz citu attālo Linux sistēmu. Izmēģiniet to un sniedziet mums atsauksmes, izmantojot zemāk esošo komentāru veidlapu.