Hogyan dolgozzunk Snap-csomagokkal Linuxon

Amikor Linux szoftvercsomagokat snap segítségével telepít, búcsút mondhat a függőségi pokolnak és a többi működő alkalmazás feltörésének. A Snap csomagokat eredetileg Ubuntuhoz tervezték, de mára számos Linux disztribúción elérhetőek.

Mik azok a Snap csomagok?

A múltban az alkalmazások Linuxra telepítése potenciálisan frusztráló élmény volt. Csak akkor kell telepítenie valamit, ha meg kell találnia, hogy egy adott könyvtár vagy más függőség hiányzik vagy elavult. Ezután fel kell kutatnia a hiányzó erőforrást, és telepítenie kell, de egy másik alkalmazást talált, amely a könyvtár éppen lecserélt verziójától függ. Javíts egyet, törj el egyet, ismételd meg.

Ez javult a jobb csomagkezelő rendszerekkel, mint pl alkalmas, dnf, és pacman. Azonban továbbra is nehézségekkel kell szembenéznie, ha ugyanannak az alkalmazásnak különböző verzióit kell telepítenie. Vagy ha két olyan alkalmazást használ, amelyek ütköznek egymással, mert egy könyvtár adott – de eltérő – verzióihoz kötődnek.

Az egyik megoldás ezekre a problémákra az alkalmazáscsomagolási és -telepítési rendszerek. Lendületes ezek közül az egyik legnépszerűbb. Ez a Click nevű csomagolási és telepítési rendszeren alapul, amely visszaköszön a Ubuntu Touch kezdeményezés. AppImage és Lapos csomag mások, akikkel találkozhattál.

Ezek a rendszerek egyetlen tömörített fájlba foglalják össze az alkalmazást a függőségekkel és egyéb követelményekkel együtt. Az alkalmazás ezután egyfajta mini-tárolóban fut. Sandboxba van helyezve, és el van választva más alkalmazásoktól. Azok a könyvtárak és egyéb erőforrások, amelyekkel az alkalmazás össze van csomagolva, vagy amelyekre szüksége van, csak az alkalmazás számára érhetők el.

Hagyományos értelemben nincsenek telepítve, így nem okoznak problémát más alkalmazásoknál, amelyek ugyanazon erőforrások különböző verzióit igénylik. Még olyan alkalmazásokat is telepíthet és futtathat, amelyeknek egymásnak ellentmondó könyvtárverziókra van szükségük, mivel mindegyik alkalmazás a saját homokozójában van.

Ha azonban nem a szokásos módon telepítik őket, hogyan kezelik őket? Nos, az egyetlen csomagfájlt letölti, kicsomagolja, és SquashFS-ként csatoljavirtuális fájlrendszer. Ezután virtuális környezetként jelenik meg. Mindez a színfalak mögött játszódik. Csak annyit fog tudni, hogy telepített egy alkalmazást, és most már hozzáférhet.

  Ellenőrizze, hogy sebezhető-e az összeomlás és a kísérteties miatt Linuxon

Természetesen, mivel minden csomagfájlnak tartalmaznia kell minden erőforrást, amelyre az alkalmazásnak szüksége van, a csomagfájlok nagyok lehetnek. Könnyű másolni egy olyan erőforrást is, amelyet általában csak egyszer telepítene, mint pl MySQL vagy Apache. Ha két különböző snap-alkalmazás ugyanazokat az erőforrásokat igényli, mindegyik hozza a saját példányát.

Ez a kompromisszum a telepítés egyszerűsége és az erőforrás-konfliktus okozta fejfájás megszüntetése mellett.

snapd telepítése

A Snappy-t az Ubuntu 16.04-el mutatták be, tehát ha ezt a verziót vagy újabb verziót futtatod, máris készen állsz. A mi gépünkön a Snappy a Manjaro 18.04-re volt telepítve, de Fedora 31-re kellett telepítenünk.

A snap a csomagfájlok neve és a velük való interakcióhoz használt parancs is. A színfalak mögött a snapd démon annak a csomagnak a neve is, amelyet telepítened kell, ha még nincs Snappy a számítógépeden.

A snapd Fedorára való telepítéséhez írja be a következő parancsot:

sudo dnf install snapd

A

Ha telepítenie kell a Manjaro-ra, használja az alábbi parancsokat:

sudo pacman -Sy snapd
sudo systemctl enable --now snapd.socket

A snap version paranccsal megtekintheti a snap kliens, a snapd démon verzióját és a szoftver sorozatszámát. A Linux disztribúció neve és kiadása, valamint a kernel verziója is megjelenik az Ön számára.

Írja be a következőket:

snap version

A

Snap csomagok telepítése

A snap csomag telepítése meglehetősen egyszerű folyamat. A snap segítségével megkeresheti a snap csomagokat, majd telepítheti a kívántat.

A kereséshez és telepítéshez a következőket írjuk be a gimp képszerkesztő:

snap find gimp

A

A snap egyezéseket keres a „gimp” keresési nyomra, és visszaadja az eredményeket. Mindent megtalál, ami megfelel a keresési kifejezésnek vagy megemlíti azt.

Az egyik csomag telepítéséhez a Név oszlopban található értéket használjuk, az alábbiak szerint:

sudo snap install gimp

A

Letöltés közben a teljesített százalékos érték emelkedik, és egy folyamatjelző sáv kúszik át a terminálablak bal oldalán. Amikor a telepítés befejeződött, megjelenik egy üzenet (az alábbiak szerint), amely tájékoztatja Önt, hogy a csomag telepítve van.

A

Használhatja a df parancsot ellenőrizze a kapacitást és a felhasználást a Linux számítógépen konfigurált különböző fájlrendszerek közül. Ha a kimenetét a grep parancsba vezetjük, és rákeresünk a „gimp” szóra, akkor mi elkülönítse a csomag belépését most telepítettük.

  A Microsoft Planner feladatok automatikus hozzáadása az Outlook naptárához

A következőket írjuk be:

df | grep gimp

A

Ez azt mutatja, hogy a snap csomagot úgy szereltük fel, mintha fájlrendszer lenne. A csatolási pont itt található a snap könyvtárban: /snap/gimp/252. A „252” a gimp ezen verziójának kiadási száma.

A fájlrendszer a következőképpen jelenik meg: /dev/loop18. A hurokeszközfájlokat a normál fájlok blokkeszközként való hozzáférhetővé tételére használják. Általában a fájlrendszerek lemezképekbe történő csatlakoztatására használják. Ebben az esetben a SquashFS fájlrendszert a snap csomagon belül csatlakoztatják. A „18” azt jelenti, hogy ez a 18. /dev/loop eszközfájl, amely ezen a Linuxos számítógépen használatos.

Ezt a df paranccsal gyorsan ellenőrizhetjük. A – t (type) opciót használjuk, hogy a kimenetet csak SquashFS fájltípusokra korlátozzuk.

A következőket írjuk be:

df -t squashfs

A

A csatolt SquashFS fájlrendszerek listája. Mindegyiket egy /dev/loop eszközfájl kezeli, és 18 van belőlük.

Minden fájlrendszer a /snap könyvtáron belüli könyvtárba van felszerelve. Ez azonban nem jelenti azt, hogy 18 különböző snap csomag van telepítve erre a számítógépre. Ez egy Ubuntu disztribúció, így néhány snap csomag azonnal telepítésre kerül, mi pedig most telepítettünk egy másikat.

Ezenkívül a snapd telepítésekor néhány alapvető snap csomagot is telepít más snap csomagok igényeinek kielégítésére.

Használhatjuk a snap list parancsot az alábbiak szerint a telepített snap csomagok listázásához:

snap list

A kimenet egy kicsit széles volt, így a listák vége az alábbiakban látható.

Íme a teljes lista:

Name                 Version                    Rev   Tracking  Publisher    Notes
core                 16-2.43.3                  8689  stable    canonical*   core
core18               20200124                   1668  stable    canonical*   base
gimp                 2.10.18                    252   stable    snapcrafters -
gnome-3-26-1604      3.26.0.20191114            98    stable/…  canonical*   -
gnome-3-28-1804      3.28.0-16-g27c9498.27c9498 116   stable    canonical*   -
gnome-calculator     3.34.1+git1.d34dc842       544   stable/…  canonical*   -
gnome-characters     v3.32.1+git3.b9120df       399   stable/…  canonical*   -
gnome-logs           3.34.0                     81    stable/…  canonical*   -
gnome-system-monitor 3.32.1-3-g0ea89b4922       127   stable/…  canonical*   -
gtk-common-themes    0.1-28-g1503258            1440  stable/…  canonical*   -

Amint látja, 10 snap csomag van telepítve, nem 18. Azonban ez a 10 csomag eredményezte a 18 SquashFS fájlrendszert. A táblázat oszlopai eléggé magától értetődőek, de itt van néhány pontosítás:

Név: A telepített snap csomag neve.
Verzió: A szoftver verziószáma a snap csomagban.
Rev: A snap csomag verziószáma.
Nyomon követés: Ez a snap csomag figyeli a frissítéseket. Van négy:
Stabil: Az alapértelmezett csatorna. Ahogy a neve is mutatja, ez a csatorna tartalmazza a legstabilabb csomagokat.
Candidate: Ez a csatorna kevésbé stabil, de nagyon közel áll hozzá, mert tartalmaz kiadásjelölt szintű szoftvert, amely kód-teljes. Végső tesztelésen megy keresztül, mielőtt a stabil csatornába kerülne.
Béta: Ez a csatorna késői fejlesztési ciklusú, de nem garantált, hogy stabil lesz.
Edge: Korai építésű tesztelőknek. Ne használja ezt a csatornát fontos munkára vagy éles számítógépen. Itt legyenek sárkányok!

  Táblázatok és képek igazítása a Microsoft Word programban

Kiadó: Az a személy, vállalat vagy szervezet, amely kiadta a snap csomagot. Ha ellenőrzött kiadó volt (és a terminálablak támogatja Unicode), egy zöld pipa jelenik meg a kiadó neve mellett. Ha nem tud pipát megjeleníteni, csillagot fog látni
.

Megjegyzések: Minden megjegyzés vagy további információ itt jelenik meg.

A pillanatnyi csatornák

Használhatja az információs lehetőséget, hogy leírást kapjon egy snap csomagról.

snap info gtk-common-themes

Ehhez a következőket írjuk be:

A

Mind a négy csatornán láthatjuk, hogy melyik csatornát követi a csomag, és a szoftver verzióját a snap csomagokban. A legtöbb esetben a stabil csatornán kell maradnia.

Egy snap csomag naponta négyszer ellenőrzi, hogy elérhető-e a szoftver újabb verziója az általa nézett vagy „követett” csatornán. Ha módosítani szeretné a snap csomag által követett csatornát, használhatja a frissítési és -csatorna opciókat.

sudo snap refresh gtk-common-themes --channel=beta

Ehhez a következőket írjuk be:

A

Ha elérhető lenne a szoftver újabb verziója, az telepítve lenne, de itt nem ez történt. A snap csomag azonban most követi a béta csatornát. Amint megjelenik egy új béta verzió, az automatikusan letöltődik és frissül.

A –list opcióval ellenőrizheti, hogy elérhetők-e frissítések a számítógépre telepített snap csomagok valamelyikéhez.

sudo snap refresh --list

Ehhez a következőket írjuk be:

A

A rendszer tájékoztatni fogja, ha a számítógépén lévő snap-csomagok által követett csatornák valamelyike ​​tartalmaz újabb szoftververziókat.

sudo snap refresh gtk-common-themes

Ha elérhető a szoftver újabb verziója, az alábbiak szerint a frissítési opcióval manuálisan kényszerítheti ki a frissítést:

A

Snap csomag eltávolítása

sudo snap remove gimp

Snap csomag eltávolításához használhatja az eltávolítási lehetőséget, az alábbiak szerint:

A

A pillanatnyi csalólap

A snap csomagok használata meglehetősen egyszerű, de összeállítottunk egy listát néhány parancsról, amelyek segítenek:
Csomag keresése: snap find package_name
Csomag telepítése: sudo snap install csomag_neve
Az összes telepített csomag megtekintéséhez: snap lista
Információk lekérése egyetlen csomagról: snap info csomag_neve
A csatorna módosításához, amelyet egy csomag követ a frissítésekhez: sudo snap refresh csomagnév –csatorna=csatorna_neve
Ha meg szeretné tudni, hogy a frissítések készen állnak-e valamelyik telepített csomaghoz: sudo snap refresh –list
Csomag kézi frissítése: sudo snap refresh csomag_neve

Csomag eltávolítása: sudo snap Remove package_name