Memodifikasi UUID sistem file BTRFS

14

Saya telah membuat cadangan sistem file BTRFS saya menggunakan Clonezilla, dan telah mengembalikan salah satu dari cadangan tersebut ke file bernama 2013-11-29.sda3.img.

Saya perlu mengeluarkan beberapa file dari cadangan ini, tetapi ada halangan. Karena cadangan dari mesin ini, saya tidak dapat memasang cadangan di mana saja di sistem file saya, karena UUID-nya cocok dengan UUID /.

Apakah ada cara agar saya dapat mengubah UUID volume cadangan? Seperti yang saya pahami, BTRFS menyimpan informasi UUID di setiap blok pada sistem file, yang mempersulit hal-hal untuk tujuan saya. Namun, adakah cara saya bisa memodifikasi ini? Saya mengerti bahwa mungkin perlu waktu lama untuk dilakukan, tetapi itu tidak menjadi perhatian saya. Perhatian utama saya adalah menjaga server online. Cadangan ini cukup besar, jadi mentransfernya ke komputer lain akan memakan waktu cukup lama.

Apa saja pilihan saya?

Naftuli Kay
sumber

Jawaban:

0

Tidak ada cara untuk melakukan itu untuk saat ini. Sebenarnya, volume UUID digunakan di setiap simpul pohon chunk. Anda harus mengubahnya di sana juga dengan asumsi bahwa header dari chunks / perangkat tidak hash. BTRFS benar-benar tidak dirancang untuk memungkinkan cadangan semacam ini.

Ini sangat menyedihkan, tetapi cara termudah untuk mengatasinya adalah dengan menggunakan komputer lain.

Jika saya boleh, saya ingin menyarankan Anda untuk menghentikan pencadangan data Anda dengan cara ini.

  1. Jika partisi Anda penting secara keseluruhan, cadangkan dengan dd/ clonezilla. Saat Anda perlu memulihkan cadangan Anda, pulihkan seluruh partisi sekaligus. Jangan lakukan pencadangan hybrid seperti ini: Anda secara khusus menyimpan partisi Anda di tingkat blok . Jadi, Anda harus mengembalikannya di tingkat blok. Kalau tidak, Anda menggunakan sendok untuk memotong daging. Seperti yang Anda perhatikan, solusi ini biasanya tidak digunakan karena tidak menawarkan fleksibilitas.

  2. Jika data Anda penting, cadangan dengan rsyncatau alat serupa pada disk lain: data Anda akan selalu dapat diakses, Anda membuat cadangan persis apa yang Anda inginkan, Anda membuat cadangan di tingkat file , dll.

Perhatikan bahwa BTRFS memiliki beberapa fitur cadangan (sekarang terbatas) . BTRFS bergerak cepat, saya kira lebih banyak fitur pencadangan akan keluar di masa depan.

Oh, Anda sudah diperingatkan;) Pencadangan Clonezilla otomatis dan enkripsi GPG

BTW, enkripsi lebih mudah diterapkan pada file menggunakan LUKS untuk enkripsi berbasis partisi atau EnFS atau EncryptFS untuk enkripsi berbasis file.

Komunitas
sumber
Pertanyaan utama adalah bagaimana cara me-mount cadangan gambar, ketika gambar FS adalah BTRFS. Saya kira saya harus membuat cadangan Clonezilla lain dari status sistem operasi saya saat ini, mengembalikan cadangan yang lama, melakukan apa yang perlu saya lakukan, dan kemudian mengembalikan kembali ke saat ini. Berharap ada cara yang lebih mudah, tapi hei, jika berhasil, itu berhasil.
Naftuli Kay
Jawaban utamanya adalah Anda tidak bisa jika ia berbagi UUID yang sama dengan partisi lain pada disk :)
23

Dengan program ini btrfstune, yang merupakan bagian dari versi terbaru dari btrfs-tools normal, UUID sistem file offline dapat diubah. Jika partisi mis. /dev/sda1, gunakan perintah berikut untuk menghasilkan UUID acak baru:

btrfstune -u /dev/sda1

Untuk menentukan nilai mana yang harus digunakan, gunakan huruf besar -Udiikuti oleh string UUID (yang valid), misalnya:

sudo btrfstune -U e0c5b943-1c02-44a2-bbaf-87ebda5e363b /dev/sdaX
deviantfan
sumber
Apa perbedaan praktik antara -m/ -Mdan -u/ -U?
Vladimir Panteleev
Looks like -m/ -Mcukup baru. Info lebih lanjut dalam pesan btrfs-progscommit dan kernel commit .
Vladimir Panteleev
Setelah mencoba ini - baik -Udan -M crash dengan BUG_ONsaya dan merusak sistem file. Jangan coba ini tanpa cadangan!
Vladimir Panteleev