Cancella tutte le istantanee di Snapper


17

OpenSUSE (tra le altre distribuzioni) utilizza lo snapper per scattare istantanee delle partizioni btrfs . Alcune persone pensano che gli intervalli di snapshot predefiniti occupino troppo spazio troppo velocemente, ma che tu ci creda o no, ci sono volte in cui vuoi liberare spazio sul tuo filesystem e spesso scoprono che le istantanee di btrfs occupano una quantità significativa di spazio. Oppure, in altri casi, potresti voler cancellare il filesystem da tutti i dati in eccesso prima di spostarlo su / da una VM o cambiare il supporto di archiviazione o qualcosa del genere.

Ma non riesco a trovare un comando per cancellare rapidamente tutte le istantanee scattate dallo snapper , tramite lo snapper o un altro strumento. Come lo farei?

Risposte:


25

Il comando nelle ultime versioni di snapper è (non ricordo quando è stato introdotto, ma la versione in es. OpenSUSE 13.2 supporta questo):

snapper delete number1-number2

Quindi per eliminare tutte le istantanee (supponendo che tu non ne abbia più di 100000) devi fare:

snapper delete 1-100000

Ovviamente questo elimina solo le istantanee sulla configurazione di root predefinita, quindi per una diversa configurazione sarebbe:

snapper -c configname delete number1-number2

Ora ricevo un errore: istantanea '100000' non trovata.
Pavel Šimerda,

ty, ty, ty. notando, l'operatore di distanza non ha funzionato, ho dovuto eliminare manualmente tutte e 20 le istantanee.
Paul Vixie,

4

È possibile utilizzare un forciclo per eliminare tutte le istantanee all'interno di un intervallo (esegui come root ).

# for i in `seq 1 999`; do snapper delete $i; done

Questo colpirà alcune voci non valide (quando il numero non corrisponde a un ID di istantanea), che comporterà un registro degli errori innocuo.

Per determinare l'intervallo (limite inferiore e superiore) degli ID istantanea, in modo che il ciclo non duri inutilmente a lungo, utilizzare:

snapper list

Ho trovato questa soluzione insieme a una discussione su come ridurre l'intervallo dello snapper e le impostazioni di conservazione .


-1

Se stai lavorando su una versione precedente di snapper come su Debian jessie, puoi usare bash-expand:

snapper delete {1..999}
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.