OpenSUSE (neben anderen Distributionen) verwendet Snapper , um Snapshots von btrfs- Partitionen zu erstellen . Einige Leute denken, dass die Standard-Snapshot-Intervalle zu schnell zu viel Speicherplatz beanspruchen, aber ob Sie das glauben oder nicht, es gibt Zeiten, in denen Sie Speicherplatz auf Ihrem Dateisystem löschen möchten und oft feststellen, dass die btrfs- Snapshots eine erhebliche Menge Speicherplatz beanspruchen . In anderen Fällen möchten Sie möglicherweise das Dateisystem von allen überschüssigen Daten säubern, bevor Sie diese auf eine / von einer VM verschieben oder das Speichermedium oder etwas Ähnliches ändern.
Es scheint jedoch nicht möglich zu sein, einen Befehl zum schnellen Löschen aller Schnappschüsse zu finden, die Snapper aufgenommen hat, entweder über Snapper oder ein anderes Tool. Wie würde ich das machen?
Sie können eine
for
Schleife verwenden, um alle Schnappschüsse innerhalb eines Bereichs zu löschen (als Root ausführen ).Dies führt zu ungültigen Einträgen (wenn die Nummer keiner Snapshot-ID entspricht), was zu einem harmlosen Fehlerprotokoll führt.
Verwenden Sie Folgendes, um den Bereich (untere und obere Grenze) von Snapshot-IDs zu bestimmen, damit die Schleife nicht unnötig lange ausgeführt wird:
Ich fand diese Lösung zusammen mit einer Diskussion darüber, wie das Snapper-Intervall und die Aufbewahrungseinstellungen reduziert werden können .
quelle
Wenn Sie an einer älteren Version von Snapper wie Debian Jessie arbeiten, können Sie die Bash-Erweiterung verwenden:
quelle