snap
Artikel in Arbeit
Dieser Artikel wird momentan von noisefloor und march erstellt. Als Fertigstellungsdatum wurde der 31.8.2016 angegeben.
Achtung: Insbesondere heißt das, dass dieser Artikel noch nicht fertig ist und dass wichtige Teile fehlen, oder sogar falsch sein können. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist mit keiner aktuell unterstützten Ubuntu-Version getestet! Bitte teste diesen Artikel für eine Ubuntu-Version, welche aktuell unterstützt wird. Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Snappy Apps (Snap) sind ein Paketformat von Canonical, welches ursprünglich vor allem für den Einsatz im Server- bzw. Cloud-Umfeld gedacht war. In den Archiven sind alle benötigten Dateien und Abhängigkeiten, wie z.B. Binaries, Bibliotheken und Konfigurationsdateien, enthalten. Alle Dateien sind nach der Installation in einem einzigen Verzeichnis vorhanden. Entwickler können die Anwendungen teilweise oder komplett aktualisieren. Da eine neue Version in ein neues Verzeichnis installiert wird, werden keine Dateien überschrieben und die alte Programmversion bleibt komplett erhalten. So kann man bei Problemen auf einfache Art und Weise die vorherige Version verwenden (Rollback). Sofern ein Entwickler keine aktuelle Version seines Programms zur Verfügung stellt kann es vorkommen, dass veraltete und ggf. sicherheitsanfällige Programmteile installiert sind und verwendet werden.
Neben Snap-Apps gibt es Frameworks, welche ebenfalls als .snap-Paket angeboten werden. Diese beinhalten Ressourcen die von anderen Anwendungen genutzt werden können. Für Frameworks gelten höhere Sicherheitsrichtlinien und können nur von Entwicklern hochgeladen werden, welche für Canonical arbeiten. Snappy ist ab Ubuntu 16.04 im System enthalten.
snap ist eine Paketformat, welches maßgeblich von Canonical entwickelt wird. snap Pakete können dabei parallel und konfliktfrei zur "normalen" Paketverwaltung installiert und genutzt werden.
Der grundlegende Unterschied zwischen snap-Paketen, songenannten "snaps" und den .deb Paketen ist, dass snaps alle benötigten Bibliotheken etc enthalten, es gibt keinerlei Abhängigkeiten mehr. Dafür kann es aber sein, dass man Bibliotheken mehrfach auf dem Rechner installiert hat, wenn mehrere snaps die gleiche Bibliothek mit an Bord haben.
snaps ermöglichen es, dass mehrere Versionen des gleichen Programms gleichzeitig installiert sind. Gibt es z.B. Probleme mit einer neueren Version, dann kann man problemlos zu einer älteren zurück wechseln, da jede Version in einem eigenen, unabhängigen snap liegt.
Die Grundlage, auf der alle snaps laufen, ist das "Core OS" im Falle von Ubuntu "ubuntu-core". Um die Verwaltung etc. der snaps kümmert sich der im Hintergrund laufende Dienst snapd 🇬🇧. snaps sind gegeneinander abgesichert, d.h. ein snap kann grundsätzlich nicht auf die Daten eines anderen snaps zugreifen. Außerdem unterliegen unter Ubuntu dies snaps der Überwachung durch AppArmor.
snaps können aus dem zentralen Snap-Store von Canonical bezogen werden. Die Installation von lokal heruntergeladenen snaps ist aber auch möglich.
Installation¶
Ab Ubuntu 16.04 sind die für snap benötigten Pakete bereits vorinstalliert, können ansonsten aber auch nach installiert werden[1]:
snapd
snap-confine
Befehl zum Installieren der Pakete:
sudo apt-get install snapd snap-confine
Oder mit apturl installieren, Link: apt://snapd,snap-confine
Snappy-Store |
Bedienung¶
Über das Terminal [1] können die Befehle übergeben und ggf. Programmteile installiert [2] werden. Hierfür sind erweiterte Rechte [3] erforderlich.
Snappy | |
Parameter | Beschreibung |
snappy info | Versioninformationen |
snap find | Anzeige der Inhalte aus dem Snappy-Store |
snappy list | Installierte Apps |
snappy list -v | Verfügbare Apps |
snappy list -uv | |
snappy search webserver | Suche im Store nach webserver |
sudo snappy update | Aktualisierungen durchführen |
snappy versions | Programmversionen anzeigen |
sudo snappy rollback ubuntu-core | Rollback auf eine ältere Version (reboot nötig) |
snappy install | Snap-Paket installieren |
sudo snap remove NAME | NAME deinstallieren |
sudo snap install ubuntu-core | |
sudo snap refresh NAME | Aktualisierung des Programms NAME |
Um eigene Anwedungen sind entwickeln findet man unter ubuntu.com 🇬🇧 eine erste Anlaufstelle.
Benutzung¶
Der zentrale Kommandozeilenbefehl ist snap
, die allgemeine Syntax lautet[3]:
snap BEFEHL [OPIONEN]
Je nach Befehl werden zusätzlich Root-Rechte[3] benötigt (z.B. zur Installation und Deinstallation von snaps).
snaps suchen¶
Mit dem Befehl
snap find SUCHBEGRIFF
werden alle im Snap-Store enthaltenen snaps, auf die der Suchbegriff SUCHBEGRIFF
passt, angezeigt. Der Suchbegriff muss aus mindestens einem Buchstaben bestehen, dass Suchen z.B. mit nur *
ist nicht möglich.
snaps installieren¶
Channels¶
snaps aktualisieren¶
Der Befehl refresh
aktualisiert alle snaps:
sudo snap refresh
Man kann auch gezielt einzelne snaps aktualisieren. So würde
sudo snap refresh SNAPNAME
nur den snap SNAPNAME
aktualisieren.
installierte snaps anzeigen¶
Der Befehl
snap list
listet alle installierten snaps auf. Dabei werden standardmäßig Name, Version, Revision, Entwicklet und Notizen des snaps angezeigt.
snaps deinstallieren¶
Zur Deinstallation dient der Befehl remove
. mit
#! vorlage Befehl sudo snap remove SNAPNAME
würde der snap SNAPNAME
entfernt.
Programme starten¶
Programme, die via snap
installiert wurden, lassen sich normalerweise wie alle anderen Programme auch starten. Unter Ubuntu mit Unity tauschen diese z.B. in der Dash auf.
Sollte dies nicht der Fall sein - was z.B. bei snaps passieren kann, die manuell lokal und nicht über das zentrale Snap-Store installiert wurden, dann kann man auch ins Verzeichnis /snap/bin/ wechseln und das Programm dann von dort manuell starten.
Links¶
Transactional Updates 🇬🇧 - Erklärung, wie die Verwaltung der verschiedenen Versionen eines snaps funktioniert