Sind über Snap installierte Dateien bei Linux Speicherfresser?

santander

Lieutenant
Registriert
Juni 2010
Beiträge
716
Heute habe ich mir einmal genauer den Festplatten-Speicherverbrauch meines Ubuntu Mate-Systems angesehen, nachdem von den 100 GB für die Betriebssystempartition nahezu 95 % voll sind. Dabei dachte ich immer, daß Linux so ressourcenschonend ist.

Erschüttert musste ich feststellen, daß ca. 75 % der Festplattenbelegung auf Snap-Dateien zurückzuführen ist. Das sind sage und schreibe 74 GB !

Ist das normal? Und zweite Frage: Braucht dasselbe Programm, das "normal" installiert wird, etwa viel weniger Fesplattenspeicher?

Was davon könnte ich händisch löschen? - Darf man das überhaupt, ohne daß das System danach nicht mehr funktionsfähig ist? Ich sehe da z.B. "KDE-Frameworks-5-QT" mit zwei Mal "Core18" und zwei Mal mit "Core20". Könnte man da "Core18" nicht löschen? Ist das eine Dateileiche von der Altinstallation von Ubuntu-Mate 18? Immerhin belegen die "KDE-Framework Core18"-Snaps mehr als 4 GB Speicher.

Dann OBS-Studio sage und schreibe 2,4 GB Festplattenbelegung. - Ja, geht's noch?

Hier eine Auflistung der Programme mit dem Speicherverbrauch:
Snap-Dateien Speicherplatzverbrauch (05-09-2021)#.png
 
Zuletzt bearbeitet:
Zitat Wikipedia:
Im Gegensatz dazu hat ein Snappy-Paket typischerweise alle benötigten Dateien und Abhängigkeiten für die Software dabei und ist dadurch vom Restsystem gut entkoppelt
Also:
Ja, es ist normal das Snap-Pakete viel mehr Platz benötigen als herkömmlich per Paketmanager installierte Pakete weil die Snaps die benötigten Abhängigkeiten in der gewünschten Version mitbringen statt die vom System bereitgestellten zu verwenden. Das ist sozusagen der "Tradeoff" den man sich damit erkauft, nicht von den Packagern der Distribution abhängig zu sein und einer der Kritikpunkte an Formaten wie Snap (oder auch Flatpak und Co).

Darüber hinaus solltest Du dir die Frage stellen ob es notwendig ist, 4 Versionen von Gnome installiert zu haben.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: madmax2010, fixedwater, trb2357 und 2 andere
santander schrieb:
Ist das normal? Und zweite Frage: Braucht dasselbe Programm, das "normal" installiert wird, etwa viel weniger Fesplattenspeicher?
Ja und Ja

Dadurch dass jedes Snap seine eigenen Abhängigkeiten nachzieht, sammelt sich jede Menge "Müll" an. Wenn eine Snap Applikation mit gnome-3-28 und eine andere mit gnome-3-34 gebaut ist, hast du zwangsweise beide Abhängigkeiten auf der Platte. Wie schon gesagt: Das ist der Preis dafür, dass ein Paket überall funktioniert.
 
  • Gefällt mir
Reaktionen: santander
up.whatever schrieb:
Und woran liegt das dann letztendlich? - Sorry, bin immer noch mehr oder weniger Linux-Laie.
Etwa an den Bibliotheken, die da alle aus dem Betriebssystem für das Programm entnommen wurden und in das "Snap-Pack" gepackt werden, damit es "autonom" läuft (oder laufen könnte)?
 
guzzisti schrieb:
Darüber hinaus solltest Du dir die Frage stellen ob es notwendig ist, 4 Versionen von Gnome installiert zu haben.
Das ist (oder war) keine Absicht, sondern kommt vermutlich von den mehrmaligen Update-Läufen.


guzzisti schrieb:
Siehe Beitrag #2 in diesem Thema.

Habe deine Antwort erst später gelesen, sorry. Meine Fragen haben sich damit mehr oder weniger erübrigt. Dachte mir ja, schon, daß es an den integrierten Bibliothken liegt.
 
Linux ist ressourcenschonend, meistens meint man eher dabei CPU-Last und RAM-Verbrauch ;-)

Ansonsten ist das Problem mit SNAPs, dass es "volle Pakete" sind.
Heißt es kommt das Programm mit allen Abhängigkeiten mit und je nach dem
was dieses Programm benötigt kommen da paar GB zusammen.
OBS-Studio, wobei es auch mit temporären Dateien zu tun haben, ist mal eben 2GB groß.
Normalerweise liegt das bei +- 120MB, heißt OBS hat als SNAP noch Abhängigkeiten von 1,9GB mit.

Installierst du ein Programm via Apt, Aptitude, Yum, Zypper, Pacman, etc. dann werden die
Abhängigkeiten anders aufgelöst.
15 Programme verwenden schon ffmpeg? Dann reiht sich OBS-Studio mit in die Liste und es sind 16,
damit verwenden 16 Programme die gleichen Dateien, wodurch nicht 16 mal ffmpeg auf der
Festplatte vorhanden sein muss.

Die ganze Geschichte ist gut als auch schlecht.
Auf der einen Seite kann man am System herumbasteln wie man möchte,
die Programme finden in ihren SNAP-Ordnern immer die Dateien die sie benötigen
und sollten* dann auch ohne Probleme funktionieren.
Nachteil ist halt das SNAPs mehr Platz auf der HDD verbrauchen.

*Wenn man Dateien Kerndateien, wie libc kaputt macht, dann ist es aber vorbei,
weil auf einmal dem System wichtige Befehle fehlen.

Ansonsten hast du 4 Gnome und 4 KDE-Frameworks installiert, was man normalerweise
nicht braucht.
 
  • Gefällt mir
Reaktionen: Alter_Falter
GTrash81 schrieb:
Ansonsten hast du 4 Gnome und 4 KDE-Frameworks installiert, was man normalerweise
nicht braucht.
Und wie bekomme ich die wieder los?

Ich denke, ich werde mein System demnächst einmal komplett neu aufsetzen. Das jetzige läuft nun schon seit fast 3 Jahren auf dem Notebook und hat damit schon etliche Versionsupdates hinter sich.

Vielleicht ist das sogar ein Nachteil von Linux, daß es so stabil läuft. Denn bei Windows war man meist schon nach einem oder 1 1/2 Jahren gezwungen, das System komplett neu aufzusetzen.
 
Snap Pakete sind ziemlich ähnlich zu macOS .app Paketen. Und auch viele Windows Programme arbeiten so.

Der Entwickler kann dadurch garantieren, dass die Applikation funktioniert, weil exakt die Abhängigkeiten benutzt werden, mit denen die Software auch entwickelt und getestet wurde. Dabei geht es auch nicht ausschließlich um die Versionen der Abhängigkeiten. Es ist z.B. auch möglich eine bestimmte Library mit anderen Parametern oder zusätzlichen Patches / Features zu kompilieren.

Der Nachteil ist zum einen der Speicherplatzverbrauch, wobei das heutzutage eigentlich eher nebensächlich sein sollte. Viel wichtiger ist aber, dass sich jetzt der Entwickler der Software darum kümmern muss, seine Abhängigkeiten auf den neusten Stand zu bringen, um mögliche Sicherheitsprobleme zu beseitigen.

santander schrieb:
Vielleicht ist das sogar ein Nachteil von Linux, daß es so stabil läuft. Denn bei Windows war man meist schon nach einem oder 1 1/2 Jahren gezwungen, das System komplett neu aufzusetzen.
Nachteil? :freak: Stell dir mal das Internet vor, wenn jede Sekunde irgendwo auf der Welt 20 Server spontan abstürzen und danach sogar komplett neu installiert werden müssen :D Oder von Tag zu Tag immer träger werden und dann nach einem Jahr so langsam werden, dass sie quasi unbenutzbar sind.
Es zwingt dich ja keiner das System 3 Jahre zu nutzen. Du kannst auch ein Linux jeden Tag neu installieren.
Bei macOS ist das auch nicht anders. Ich kenne mindestens 5 Leute, die seit 5-6 Jahren keine einzige Neuinstallation gemacht haben, und jede macOS Version via Softwareupdate mitgenommen haben. Mein Fall ist das auch nicht, aber für Leute, die keine Ahnung von Technik haben, ist das perfekt.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: GTrash81
santander schrieb:
Denn bei Windows war man meist schon nach einem oder 1 1/2 Jahren gezwungen, das System komplett neu aufzusetzen.
Um es mit den Worten von Sgt. Hartman aus FMJ zu sagen:"Bullshit!". Du vielleicht.
 
  • Gefällt mir
Reaktionen: up.whatever und GTrash81
Wenn man unbedingt seine Programme als Snap Apps installieren möchte, könnte es eine Option sein, ein Dateisystem zu verwenden welches Kompression unterstützt. Btrfs wäre z.B. eines. Eine weitere Option wäre Deduplizierung, ob das allerdings Sinnvoll ist muss man abwägen.
 
guzzisti schrieb:
Wieder typisch für Linux: Kein Programm mit GUI, das so eine Massen-Deinstallation ermöglichen würde.
Außerdem: Wieso wird da JEDES Snap mit Backup auf der Festplatte gespeichert? - Das erinnert mich stark an diese ausufernde WINSXS-Datei, die jede Änderung der Programmversion archivierte, und im Nu mehr als ein dutzend GB groß war.
Ich würde da eher für ein Vorgehen plädieren nach dem Motto "Was weg ist, ist weg".
 
santander schrieb:
Das erinnert mich stark an diese ausufernde WINSXS-Datei, die jede Änderung der Programmversion archivierte, und im Nu mehr als ein dutzend GB groß war.
Und du meinst, dass dein nicht-Snap-Linux-Paketmanager das anders macht? :D Nope, der macht's genau so.
 
jb_alvarado schrieb:
Wenn man unbedingt seine Programme als Snap Apps installieren möchte, könnte es eine Option sein, ein Dateisystem zu verwenden welches Kompression unterstützt. Btrfs wäre z.B. eines. Eine weitere Option wäre Deduplizierung, ob das allerdings Sinnvoll ist muss man abwägen.
Snaps sind bereits komprimiert. Und daher ist dann auch dedup nicht sinnvoll.
 
  • Gefällt mir
Reaktionen: jb_alvarado
Jetzt habe ich doch noch eine Frage, welche von diesen 4 Snap-Dateien ich bedenkenlos deinstallieren kann:

gnome-3-26-1604 3.26.0.20210629 104 latest/stable canonical✓ -
gnome-3-28-1804 3.28.0-19-g98f9e67.98f9e67 161 latest/stable canonical✓ -
gnome-3-34-1804 0+git.3556cb3 72 latest/stable canonical✓ -
gnome-3-38-2004 0+git.6ba6040 70 latest/stable canonical✓ -
Kann ich da alle 3 vorhergehenden Snaps bis auf die "gnome3-38-2004" deinstallieren?
Dem widerspricht aber die höhere Versionsnummer der -1804 (Revision 72). Oder doch nicht?
Wäre es überhaupt möglich, alle 4 Dateien zu deinstallieren? - Und welche Folgen hätte das? Etwa ein Nichtstarten des Systems?
 
santander schrieb:
Jetzt habe ich doch noch eine Frage, welche von diesen 4 Snap-Dateien ich bedenkenlos deinstallieren kann:

Kann ich da alle 3 vorhergehenden Snaps bis auf die "gnome3-38-2004" deinstallieren?
Dem widerspricht aber die höhere Versionsnummer der -1804 (Revision 72). Oder doch nicht?
Wäre es überhaupt möglich, alle 4 Dateien zu deinstallieren? - Und welche Folgen hätte das? Etwa ein Nichtstarten des Systems?
Mußte vorhin feststellen, daß diese Dateien gar nicht zu deinstallieren gehen.
 
santander schrieb:
Kann ich da alle 3 vorhergehenden Snaps bis auf die "gnome3-38-2004" deinstallieren?
Wenn diese Versionen nicht mehr in Verwendung sind und man Platz sparen möchte, macht das Sinn.

santander schrieb:
Dem widerspricht aber die höhere Versionsnummer der -1804 (Revision 72). Oder doch nicht?
Nein, die Revisionsnummer dient nur der Verwaltung im Snap Store.

santander schrieb:
Wäre es überhaupt möglich, alle 4 Dateien zu deinstallieren? - Und welche Folgen hätte das? Etwa ein Nichtstarten des Systems?
Es ist nicht sinnvoll, hier händisch einzugreifen. Man kann ein Skript nutzen, um ältere, nicht mehr genutzte Versionen zu entfernen: https://www.debugpoint.com/2021/03/clean-up-snap/
 
  • Gefällt mir
Reaktionen: santander und GTrash81
Moinmoin,
als ich vor einem viertel Jahr so verschiedenes probiert hatte.
Ist genau dies mir auch aufgefallen.
Weil nämlich die Softwaresuche oder Shop beides anzeigte und ich dann schaute was ist jetzt der Unterschied? Aber ich als Laie finde es mal einfach.
Und heute hat doch jeder riesen Platten oder SSDs.
Hätte ich mir aufschreiben müssen wo das so war, welche Version es war. Doch funktioniert hat es gut.
Schönen Abend noch.
 
Zurück
Oben