3 geriausi universalūs „Linux“ paketų tvarkytuvai 2023 m


Paketų valdymas arba programinės įrangos diegimas Linux sistemose gali būti labai mįslingas, ypač naujokams (naujiems Linux vartotojams), nes skirtingi Linux platinimai naudoja skirtingas tradicines paketų valdymo sistemas. Daugeliu atvejų painiausia viso to dalis yra paketo priklausomybės sprendimas/valdymas.

Pavyzdžiui, „Debian“ pagrindu veikiantys platinimai, tokie kaip Ubuntu ir Linux Mint, naudoja .deb paketus, kurie valdomi per dpkg paketų valdymo sistemą.

Kita vertus, RHEL pagrįsti platinimai, pvz., CentOS Stream, Rocky Linux ir AlmaLinux, naudoja .rpm paketus, kurie valdomi naudojant rpm paketų valdymo sistemą.

Per pastaruosius kelerius metus paketų valdymas ir platinimas Linux ekosistemoje niekada nebuvo toks pat, kai atsirado universalių arba kryžminio platinimo paketų valdymo įrankiai.

Šie įrankiai leidžia kūrėjams supakuoti savo programinę įrangą ar programas keliems Linux platinimams iš vienos versijos, todėl vartotojai gali lengvai įdiegti tą patį paketą keliuose palaikomuose platinimuose.

Šiame straipsnyje apžvelgsime 3 populiariausias atvirojo kodo universaliąsias arba kryžminio platinimo paketų valdymo sistemas, skirtas Linux.

1. Snap – universalus paketo formatas

Snap yra populiari atvirojo kodo programos/paketo formatas ir paketų valdymo sistema, kurią sukūrė Canonical, Ubuntu Linux gamintojas. Keli Linux platinimai dabar palaiko snapus, įskaitant Ubuntu, Debian, Fedora, Arch Linux, Manjaro ir CentOS/RHEL.

Lengvas diegimas ir atnaujinimai

Snap programa yra kryžminio platinimo programa, susieta su visomis priklausomybėmis (be priklausomybės), kad būtų lengva įdiegti su automatiniais naujiniais (programos visada atnaujinamos) bet kuriame „Linux“ paskirstyme, palaikančiame „Snaps“. Snap gali veikti darbalaukyje, serveryje, debesyje arba IoT (daiktų internete).

Norėdami sukurti arba pritraukti programą, naudokite Snapcraft, sistemą ir galingą komandų eilutės įrankį, skirtą snapams kurti. Norėdami įdiegti ir naudoti „snaps“ sistemoje „Linux“, turite įdiegti snapd (arba „snappy“ demoną) – foninę paslaugą, kuri leidžia „Linux“ sistemoms dirbti su .snap failais. Faktinis „snaps“ diegimas atliekamas naudojant „snap“ komandinės eilutės įrankį.

Saugumas ir izoliacija

Kadangi jie veikia apriboti (skirtingi ir konfigūruojami uždarymo lygiai), snaps yra saugūs pagal numatytuosius nustatymus. Svarbu tai, kad snapas, kuriam reikia pasiekti sistemos išteklius už jo ribų, naudoja „sąsają“, kurią kruopščiai atrenka snapo kūrėjas, atsižvelgdamas į momento reikalavimus. Tai leidžia paleisti programas nepakenkiant pagrindinės operacinės sistemos stabilumui ir lankstumui.

Be to, snap paketo valdymo sistema naudoja sąvoką, vadinamą kanalais (kuri susideda iš ir yra suskirstyta į takelius, rizikos lygius ir šakas), kad nustatytų, kuris snap leidimas yra įdiegtas ir stebimas naujinimams. Snaps taip pat atnaujina automatiškai – procesą, kurį galite valdyti rankiniu būdu.

Norėdami rasti ir įdiegti „Snap“, ieškokite jo „Snap“ parduotuvėje (vieta, kur kūrėjai gali bendrinti savo „snap“) arba skaitykite daugiau apie tai naudodami mūsų vadovus:

2. Flatpak – suderinamumas su įvairiais paskirstymais

„Flatpak“ yra gerai žinoma atvirojo kodo sistema, skirta platinti darbalaukio programas „Linux“ platinimuose. Nepriklausomos bendruomenės sukurtas Flatpak leidžia įdiegti vieną programos versiją ir paleisti ją praktiškai bet kuriame Linux paskirstyme.

Jis palaiko iš viso 25 platinimus, įskaitant Fedora, Ubuntu, RHEL, CentOS, OpenSUSE ir Arch Linux, taip pat veikia su Raspberry Pi.

„Flatpak“ vykdymo laikas suteikia bendrų bibliotekų platformas, kurias programa gali panaudoti. Tačiau taip pat labai lengva visiškai valdyti priklausomybes, galite susieti bibliotekas kaip programos dalį.

Flatpak yra su lengvai naudojamais kūrimo įrankiais ir siūlo nuoseklią aplinką (tokią pat visuose įrenginiuose ir panašią į tą, kurią jau turi naudotojai), kad kūrėjai galėtų kurti ir išbandyti savo programas.

Smėlio dėžė, skirta sustiprintam saugumui

„Flatpak“ užtikrina saugumą, nes kiekviena programa yra įdėta į smėlio dėžę, todėl programos negali susimaišyti su pagrindine sistema ar kitomis programomis. Tai labai patogu, kai dirbate su programomis iš šaltinių, dėl kurių nesate tikri.

Patogus vartotojui ir kūrėjui

Naudingas flatpak aspektas yra išankstinis suderinamumas, kai tą patį flatpak galima paleisti skirtingose to paties platinimo versijose, įskaitant versijas, kurių kūrėjai dar neišleis. Jis taip pat siekia ir toliau yra suderinamas su naujomis Linux platinimo versijomis.

Jei esate kūrėjas, galite padaryti savo programą prieinamą „Linux“ vartotojams per „Flathub“ – centralizuotą programą, skirtą platinti programas visuose platinimuose.

3. „AppImage“: nešiojama alternatyva

„AppImage“ taip pat yra atvirojo kodo paketo formatas, leidžiantis kūrėjams vieną kartą supakuoti programą, kuri veikia visuose pagrindiniuose „Linux“ darbalaukio platinimuose. Skirtingai nuo ankstesnių paketų formatų, naudojant AppImage, paketo įdiegti nereikia. Tiesiog atsisiųskite programą, kurią ketinate naudoti, padarykite ją vykdomą ir paleiskite – taip paprasta. Jis palaiko daugumą 32 bitų ir 64 bitų Linux stalinių kompiuterių.

Diegimo nereikia

Naudojant AppImage nieko nereikia diegti. Šiuos paketus galite įdėti į USB diską, jais bendrinti ir paleisti programas nekeisdami sistemos. Tai puikiai tinka nešiojamoms „Linux“ ir tiesioginėms sistemoms.

Platus suderinamumas

AppImage turi daug privalumų. Kūrėjams tai leidžia pasiekti kuo daugiau vartotojų, neatsižvelgiant į „Linux“ platinimo ir versijos naudotojus. Naudotojams nereikia jaudintis dėl programų priklausomybių, nes kiekviena AppImage yra susieta su visomis priklausomybėmis (viena programa=vienas failas). Išbandyti naujas programų versijas taip pat lengva naudojant AppImage.

Sistemos administratoriams, kurie palaiko daugybę stalinių sistemų ir paprastai neleidžia vartotojams įdiegti programų, kurios gali sugadinti sistemas, jiems nebereikia jaudintis. Naudojant AppImage, sistema išlieka nepakitusi, nes naudotojams nereikia įdiegti programų, kad jas paleistų.

Trio palyginimas: „Snap“, „Flatpak“ ir „AppImage“.

Čia yra trijų universalių paketų tvarkyklių palyginimas:

Feature Snap Flatpak AppImage
Package format Self-contained, compressed file Self-contained, compressed file Single executable file
Sandboxing Yes (by default) No (by default) No
Automatic updates Yes Optional No
Installation Requires snapd daemon Requires Flatpak runtime Does not require installation
Root privileges Requires root privileges to install Does not require root privileges to install Does not require root privileges to run

Kurį paketų tvarkyklę turėčiau pasirinkti?

Jei ieškote saugios ir lengvai naudojamos paketų tvarkyklės su automatiniais atnaujinimais, tada Snap yra geras pasirinkimas. Jei ieškote lankstesnės paketų tvarkyklės, kurią būtų galima naudoti bet kokio tipo programoms supakuoti, tada Flatpak yra geras pasirinkimas. Jei ieškote paketų tvarkyklės, kuriai nereikia diegimo ar root teisių, tada AppImage yra geras pasirinkimas.

Taip pat svarbu pažymėti, kad visos trys paketų tvarkyklės vis dar kuriamos, todėl gali būti klaidų arba trūksta funkcijų. Tačiau jie visi yra aktyviai prižiūrimi ir reguliariai atnaujinami.

Išvada

Universalūs arba kryžminio platinimo paketų formatai yra naujos kartos programinės įrangos kūrimo ir platinimo Linux ekosistemoje technologijos. Tačiau tradicinės paketų valdymo sistemos vis dar išlaiko savo pozicijas.

kokia tavo mintis? Pasidalykite ja su mumis per komentarų skyrių.