Hallo,
Ich spiele gerade ein wenig mit lxd/lxc und einem ZFS Pool herum.
Bei lxd hat man ja üblicherweise ein Image, aus dem man einen Container startet. Das Image kann z.B. ein Ubuntu-20.04 minimal sein, ich habs aus einem Online Repository geladen. Die Container kann man dann erweitern und u.a. spezifische Software für die jeweiligen Dienste installieren. Dabei wird aber meines Wissens nur die Differenz zum Image gespeichert. Alles, was sich nicht ändert, wird zur Laufzeit des Containers aus dem Image geladen und nicht noch mal separat gespeichert, was die Sache sehr effizient macht.
Im ZFS Pool kann ich auch sehen, wie unter default/images das Image und unter "default/containers" die Container gespeichert sind, mit ihren jeweiligen Speicherplatz-Anforderungen.
Nun wurde das Image automatisch aktualisiert. In der Folge wurde das veraltete Image unter "default/deleted/images" geschoben und bleibt da nun auch liegen, da es ja noch die Basis für die Container ist. Entsprechend hat sich der Speicherplatz-Bedarf im Pool deutlich erhöht, da nun eine zweite Instanz des Images gespeichert wurde, die im Grunde (zumindest bislang) nicht benötigt wird.
Die Frage ist nun: Kann ich die Image Referenz der Container aktualisieren, so dass sie auf das neue Image zeigen und nicht mehr auf das alte? Dann könnte man das alte löschen. Mir ist klar, dass das nicht trivial ist, da der Inhalt der Images nicht 100% identisch ist. Eine Online Recherche hat nichts ergeben. Es gibt offensichtlich nur wenige Leute, die das Problem haben.