Hapus semua foto Snapper

16

OpenSUSE (di antara distribusi lainnya) menggunakan kakap untuk mengambil snapshot dari partisi btrfs . Beberapa orang berpikir interval snapshot default memakan terlalu banyak ruang terlalu cepat, tetapi apakah Anda percaya atau tidak, ada kalanya Anda ingin menghapus ruang pada sistem file Anda dan sering menemukan bahwa snapshot btrf mengambil banyak ruang. Atau, dalam kasus lain Anda mungkin ingin menghapus filesystem dari semua data yang berlebih sebelum memindahkannya ke / dari VM atau mengubah media penyimpanan atau sesuatu di sepanjang baris tersebut.

Tapi, sepertinya saya tidak dapat menemukan perintah untuk dengan cepat menghapus semua snapshot yang diambil snapper , baik melalui snapper atau alat lain. Bagaimana saya melakukan ini?

palswim
sumber

Jawaban:

24

Perintah dalam versi terbaru dari kakap adalah (Saya tidak ingat kapan itu diperkenalkan, tetapi versi di misalnya, openSUSE 13.2 mendukung ini):

snapper delete number1-number2

Jadi, untuk menghapus semua snapshot (dengan asumsi Anda tidak memiliki lebih dari 100000 foto), Anda harus:

snapper delete 1-100000

Jelas ini hanya menghapus snapshot pada konfigurasi root default, jadi untuk konfigurasi yang berbeda adalah:

snapper -c configname delete number1-number2
Quantumboredom
sumber
Saya sekarang mendapatkan kesalahan: Snapshot '100000' tidak ditemukan.
Pavel Šimerda
ty, ty, ty. mencatat, operator jangkauan tidak bekerja, saya harus menghapus semua 20 foto secara manual.
Paul Vixie
4

Anda dapat menggunakan forlingkaran untuk menghapus semua foto dalam rentang (jalankan sebagai root ).

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

Ini akan mengenai beberapa entri yang tidak valid (ketika nomor tidak sesuai dengan ID snapshot), yang akan menghasilkan log kesalahan yang tidak berbahaya.

Untuk menentukan rentang (batas bawah dan atas) ID foto, sehingga loop tidak akan berjalan terlalu lama, gunakan:

snapper list

Saya menemukan solusi ini bersama dengan diskusi tentang cara mengurangi interval kakap dan pengaturan retensi .

palswim
sumber
-1

Jika Anda mengerjakan versi kakap lama seperti di Debian jessie, Anda dapat menggunakan bash-expansion:

snapper delete {1..999}
blaimi
sumber