Connect with us

Wie man

So arbeiten Sie mit Snap-Paketen unter Linux

So arbeiten Sie mit Snap-Paketen unter Linux

Ubuntu

Wenn Sie Linux-Softwarepakete mit installieren snapkönnen Sie sich von der Abhängigkeitshölle verabschieden und andere funktionierende Anwendungen brechen. Snap-Pakete wurden ursprünglich für Ubuntu entwickelt, sind aber jetzt auf einer Vielzahl von Linux-Distributionen verfügbar.

Was sind Snap-Pakete?

In der Vergangenheit war die Installation von Anwendungen unter Linux eine möglicherweise frustrierende Erfahrung. Sie würden etwas nur installieren, um festzustellen, ob eine bestimmte Bibliothek oder eine andere Abhängigkeit fehlt oder veraltet ist. Sie würden dann die fehlende Ressource suchen und installieren, nur um eine andere Anwendung zu finden, die von der Version der Bibliothek abhängt, die Sie gerade ersetzt haben. Repariere eins, breche eins, wiederhole.

Dies hat sich mit besseren Paketverwaltungssystemen wie verbessert geeignet, dnf, und Pacman. Sie haben jedoch immer noch Probleme, wenn Sie verschiedene Versionen derselben Anwendung installieren müssen. Oder wenn Sie zwei Anwendungen verwenden, die in Konflikt geraten, weil sie an bestimmte, aber unterschiedliche Versionen einer Bibliothek gebunden sind.

Eine Lösung für diese Probleme sind Anwendungsverpackungs- und Bereitstellungssysteme. Bissig ist einer der beliebtesten von diesen. Es basiert auf einem Verpackungs- und Bereitstellungssystem namens Click, das auf das zurückgreift Ubuntu Touch Initiative. AppImage und Flachgehäuse sind andere, denen Sie begegnet sein könnten.

Diese Systeme kapseln die Anwendung zusammen mit allen Abhängigkeiten und anderen Anforderungen in einer einzigen komprimierten Datei. Die Anwendung wird dann in einer Art Mini-Container ausgeführt. Es ist sandboxed und von anderen Anwendungen getrennt. Die Bibliotheken und anderen Ressourcen, mit denen die Anwendung gepackt ist oder die sie benötigt, stehen nur ihr zur Verfügung.

Sie werden nicht im herkömmlichen Sinne installiert, sodass sie bei anderen Anwendungen, für die unterschiedliche Versionen derselben Ressourcen erforderlich sind, keine Probleme verursachen. Sie können sogar Anwendungen installieren und ausführen, für die widersprüchliche Bibliotheksversionen erforderlich sind, da sich jede Anwendung in einer eigenen Sandbox befindet.

Wie werden sie behandelt, wenn sie nicht wie gewohnt installiert sind? Nun, die einzelne Paketdatei wird heruntergeladen, dekomprimiert und als bereitgestellt SquashFSvirtuelles Dateisystem. Es wird Ihnen dann als virtuelle Umgebung präsentiert. All dies findet hinter den Kulissen statt. Sie wissen nur, dass Sie eine Anwendung installiert haben und jetzt Zugriff darauf haben.

Da jede Paketdatei jede Ressource enthalten muss, die die Anwendung benötigt, können die Paketdateien natürlich groß sein. Es ist auch einfach, eine Ressource zu duplizieren, die Sie normalerweise nur einmal installieren würden, z MySQL oder Apache. Wenn zwei unterschiedlich snap Anwendungen erfordern die gleichen Ressourcen, sie bringen jeweils ihre eigene Kopie mit.

Dies ist jedoch der Kompromiss für die Einfachheit der Installation und die Beseitigung der Probleme mit Ressourcenkonflikten.

Snapd installieren

Snappy wurde mit Ubuntu 16.04 eingeführt. Wenn Sie also diese Version oder höher ausführen, können Sie bereits loslegen. Auf unserem Computer wurde Snappy auf Manjaro 18.04 installiert, aber wir mussten es auf Fedora 31 installieren.

snap ist sowohl der Name der Paketdateien als auch der Befehl, mit dem Sie mit ihnen interagieren. Hinter den Kulissen der snapd Daemon ist auch der Name des Pakets, das Sie installieren müssen, wenn Sie Snappy noch nicht auf Ihrem Computer haben.

Installieren snapd Geben Sie unter Fedora den folgenden Befehl ein:

sudo dnf install snapd

Das "sudo dnf installiere snapd" Befehl in einem Terminalfenster.

Wenn Sie es auf Manjaro installieren müssen, verwenden Sie die folgenden Befehle:

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

Du kannst den … benutzen snap version Befehl, um die Version des zu sehen snap Klient, snapd Daemon und die Software-Seriennummer. Der Name und die Version Ihrer Linux-Distribution sowie die Kernel-Version werden ebenfalls für Sie angezeigt.

Geben Sie Folgendes ein:

snap version

Das "Snap-Version" Befehl in einem Terminalfenster.

Snap-Pakete installieren

Die Installation von a ist ziemlich einfach snap Paket. Sie können verwenden snap suchen snap Pakete, und installieren Sie dann die gewünschte.

Wir geben Folgendes ein, um zu suchen und zu installieren der Gimp-Bildeditor::

snap find gimp

Das "Schnappverschluss Gimp" in einem Terminalfenster.

snap sucht nach Übereinstimmungen mit dem Suchhinweis „gimp“ und gibt seine Ergebnisse zurück. Es wird alles gefunden, was mit dem Suchbegriff übereinstimmt oder diesen erwähnt.

Um eines der Pakete zu installieren, verwenden wir den Wert aus dem Name Spalte, wie unten gezeigt:

sudo snap install gimp

Das "sudo snap gimp installieren" Befehl in einem Terminalfenster.

Beim Herunterladen steigt der Prozentsatz der abgeschlossenen Zahlen und ein Fortschrittsbalken kriecht links vom Terminalfenster herüber. Nach Abschluss der Installation wird (wie unten gezeigt) eine Meldung angezeigt, dass das Paket installiert wurde.

EIN "gimp 2.10.18 von Snapcrafters installiert" Nachricht in einem Terminalfenster.

Du kannst den … benutzen df Befehl an Überprüfen Sie die Kapazität und Nutzung der verschiedenen Dateisysteme, die auf Ihrem Linux-Computer konfiguriert sind. Wenn wir seine Ausgabe in die leiten grep befehle und suche nach „gimp“, wir Isolieren Sie den Eintrag für das Paket Wir haben gerade installiert.

Wir geben Folgendes ein:

df | grep gimp

Das "df |  grep gimp" Befehl in einem Terminalfenster.

Dies zeigt uns, dass das Snap-Paket wie ein Dateisystem gemountet wurde. Der Einhängepunkt befindet sich in der snap Verzeichnis hier: /snap/gimp/252. Die „252“ ist die Versionsnummer dieser Version von gimp.

Das Dateisystem ist wie folgt aufgeführt: /dev/loop18. Loop-Gerätedateien werden verwendet, um reguläre Dateien als Blockgeräte zugänglich zu machen. Sie werden normalerweise zum Mounten der Dateisysteme in Disk-Images verwendet. In diesem Fall montieren sie die SquashFS Dateisystem innerhalb der snap Paket. Die „18“ bedeutet, dass dies die 18 ist /dev/loop Gerätedatei, die auf diesem Linux-Computer verwendet wird.

Wir können die verwenden df Befehl, um dies schnell zu überprüfen. Wir werden die – verwenden t (Typ) Option zum Begrenzen der Ausgabe auf SquashFS Nur Dateitypen.

Wir geben Folgendes ein:

df -t squashfs

Das "df -t squashfs" Befehl in einem Terminalfenster.

Die montiert SquashFS Dateisysteme werden aufgelistet. EIN /dev/loop Die Gerätedatei verarbeitet jeden einzelnen, und es gibt 18 davon.

SquashFS-Dateisysteme, die in einem Terminalfenster aufgelistet sind.

Jedes Dateisystem ist in einem Verzeichnis innerhalb des eingebunden /snap Verzeichnis. Dies bedeutet jedoch nicht, dass es 18 verschiedene gibt snap auf diesem Computer installierte Pakete. Dies ist eine Ubuntu-Distribution, also einige snap Pakete werden sofort installiert, und wir haben gerade ein weiteres installiert.

Zusätzlich bei der Installation snapdinstalliert es einen Kern snap Pakete, um die Bedürfnisse anderer zu erfüllen snap Pakete.

Wir können die verwenden snap list Befehl, wie unten gezeigt, um die installierten aufzulisten snap Pakete:

snap list

Eine Fangliste in einem Terminalfenster.

Die Ausgabe war etwas breit, so dass das Ende der Auflistungen unten gezeigt wird.

Das Ende der Snap-List-Ausgabe in einem Terminalfenster.

Hier ist die gesamte Liste:

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*   -

Wie Sie sehen können, sind 10 Snap-Pakete installiert, nicht 18. Diese 10 Pakete haben jedoch zu den 18 geführt SquashFS Dateisysteme. Die Tabellenspalten sind ziemlich selbsterklärend, aber hier einige Erläuterungen:

  • Name: Der Name des snap Paket, das installiert wurde.
  • Ausführung: Die Versionsnummer der Software in der snap Paket.
  • Rev.: Die Revisionsnummer des snap Paket.
  • Verfolgung: Der Kanal dies snap Paketmonitore für Updates. Es gibt vier:
    • Stabil: Der Standardkanal. Wie der Name schon sagt, enthält dieser Kanal die stabilsten Pakete.
    • Kandidat: Dieser Kanal ist weniger stabil, aber sehr nahe daran, da er Software auf Release Candidate-Ebene enthält, die vollständig für den Code ist. Es durchläuft die letzten Tests, bevor es in den stabilen Kanal verschoben wird.
    • Beta: Dieser Kanal hat eine späte Entwicklungszyklusqualität, kann jedoch nicht als stabil garantiert werden.
    • Kante: Für frühe Build-Tester. Sie sollten diesen Kanal nicht für wichtige Arbeiten oder auf einem Produktionscomputer verwenden. Hier sind Drachen!
  • Verleger: Die Person, Firma oder Organisation, die die snap Paket. Wenn es sich um einen verifizierten Herausgeber handelt (und Ihr Terminalfenster unterstützt Unicode) wird neben dem Namen des Herausgebers ein grünes Häkchen angezeigt. Wenn kein Häkchen angezeigt wird, wird ein Sternchen angezeigt (*).
  • Anmerkungen: Alle Kommentare oder zusätzlichen Informationen werden hier angezeigt.

Die Snap-Kanäle

Du kannst den … benutzen info Option, um eine Beschreibung von a zu erhalten snap Paket.

Dazu geben wir Folgendes ein:

snap info gtk-common-themes

Das "Snap Info GTK-Common-Themes" Befehl in einem Terminalfenster.

Wir können sehen, welchen Kanal das Paket verfolgt und welche Version der Software in der snap Pakete in jedem der vier Kanäle. In den meisten Fällen sollten Sie auf dem stabilen Kanal bleiben.

EIN snap Das Paket überprüft viermal pro Tag, ob eine neuere Version der Software auf dem Kanal verfügbar ist, den es gerade anzeigt oder verfolgt. Wenn Sie den Kanal wechseln möchten a snap Paketspuren können Sie verwenden refresh und --channel Optionen.

Dazu geben wir Folgendes ein:

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

Das "sudo snap refresh gtk-common-themen --channel = beta" Befehl in einem Terminalfenster.

Wenn eine neuere Version der Software verfügbar wäre, würde sie installiert, aber das war hier nicht der Fall. Die snap Paket verfolgt jetzt den Beta-Kanal. Sobald eine neue Beta-Version veröffentlicht wird, wird sie automatisch heruntergeladen und aktualisiert.

Du kannst den … benutzen --list Option, um zu überprüfen, ob Updates für eines der Programme verfügbar sind snap auf Ihrem Computer installierte Pakete.

Dazu geben wir Folgendes ein:

sudo snap refresh --list

Das "sudo snap refresh --list" Befehl in einem Terminalfenster.

Sie werden informiert, ob einer der Kanäle die snap Pakete auf Ihrem Computer, die nachverfolgt werden, enthalten neuere Softwareversionen.

Wenn eine neuere Version der Software verfügbar ist, können Sie die verwenden refresh Option, wie unten gezeigt, um eine Aktualisierung manuell zu erzwingen:

sudo snap refresh gtk-common-themes

Das "sudo snap refresh gtk-common-themen" Befehl in einem Terminalfenster.

Snap-Paket entfernen

So deinstallieren Sie a snap Paket können Sie die Option zum Entfernen verwenden, wie unten gezeigt:

sudo snap remove gimp

Das "Sudo Snap Gimp entfernen" Befehl in einem Terminalfenster.

Der Snap Cheat Sheet

Die Verwendung von Snap-Paketen ist ziemlich einfach, aber wir haben eine Liste einiger Befehle zusammengestellt, die Ihnen helfen werden:

  • So suchen Sie nach einem Paket: snap find package_name
  • So installieren Sie ein Paket: sudo snap install package_name
  • So zeigen Sie alle installierten Pakete an: snap list
  • So erhalten Sie Informationen zu einem einzelnen Paket: snap info package_name
  • So ändern Sie den Kanal, den ein Paket für Updates verfolgt: sudo snap refresh package_name --channel=channel_name
  • So sehen Sie, ob Updates für installierte Pakete bereit sind: sudo snap refresh --list
  • So aktualisieren Sie ein Paket manuell: sudo snap refresh package_name
  • So deinstallieren Sie ein Paket: sudo snap remove package_name

Continue Reading
Click to comment

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Tendencia