LVM mencadangkan metadata ke /etc/lvm/backup
dan /etc/lvm/archive
. Di atas setiap file itu akan memberi tahu Anda waktu / data saat file dihasilkan sehingga kemungkinan Anda akan memiliki salinan metadata yang lebih lama seperti sebelum Anda menghapus LV. Saya percaya cadangan otomatis kapan saja perubahan metadata.
Berikut ini bisa berbahaya dan merusak jadi sangat berhati-hati dan jika mungkin memiliki cadangan penuh.
Perintah untuk mengembalikan cadangan metadata volumegroup ini adalah vgcfgrestore
. Pastikan Anda membuat salinan saat ini dari konfigurasi kerja yang ada menggunakan vgcfgbackup
perintah dengan flag -f untuk menentukan file yang berbeda untuk output sehingga Anda tidak mengubah file apa pun yang ada di / etc / lvm / backup atau / etc / lvm / arsipkan folder. Pastikan Anda mengubah konfigurasi saat ini dengan konfigurasi yang ingin Anda pulihkan untuk memverifikasi bahwa satu-satunya perubahan yang akan Anda terapkan adalah untuk membuat ulang LV yang baru saja dihapus. Memiliki cadangan penuh data Anda mungkin juga bukan ide yang buruk. Anda mungkin juga ingin mempertimbangkan untuk menghubungi vendor Linux Anda untuk mendapatkan dukungan / bimbingan jika Anda berada di bawah kontrak dukungan sebelum melanjutkan karena saya tidak pernah harus melakukan ini sendiri.
Semoga berhasil.
"Bisakah Anda lebih spesifik tentang mencari EFROM dan ETO dari file cadangan? Semua lv memiliki" start_extend "dari 0 di file cadangan saya jadi saya agak hilang :) Terima kasih! - user186975 24 Agustus '13 pada 17 : 06 "
Ok, saya akan sangat spesifik ... dengan cara paling sederhana untuk memulihkan volume logis.
Contoh:
1 - Saya telah menghapus volume logis saya!
2 - Hal pertama yang harus dilakukan adalah, cari file arsip di /etc/lvm/archive/vg1_(xxxxx).vg. Saya bisa melakukan itu, hanya melihat tanggal bahwa saya telah menghapus volume logis!
3 - Saya menemukannya!
Tanggal dimana saya melakukan lvremove !!! ... itu beberapa menit yang lalu ..
4 - Mari kita lihat file!
5 - Lakukan tes sebelum memulihkannya!
6 - Ok, sekarang ulangi baris perintah, tanpa (--test)
7 - Periksa!
8 - Jika logis tidak aktif, lakukanlah!
Semuanya
Saya harap ini dapat membantu orang lain yang mencari solusi ini!
sumber
Hal termudah untuk pulih dari lvremove (dengan anggapan Anda tidak menulis hingga luasan tempat LV tinggal) adalah:
Temukan saja cadangan metadata Anda di / etc / lvm / arsip dan cari tahu
a) yang
meluas LV yang berada di (EFROM, ETO) b) PV mana LV Anda berada dan yang meluas pada PV yang digunakannya (PFROM, PTO)
Setelah Anda mendapatkan info ini, Anda membuat LV baru dengan ukuran yang sama persis pada PV yang sama persis tanpa menyeka 8kB pertama LV:
sumber
(Seperti yang dijawab oleh thermoman sebelumnya) cara termudah untuk membuat ulang volume LVM yang dihapus adalah dengan membuatnya dengan lvcreate tanpa penekanan dan memastikannya akan berada pada posisi yang sama pada disk. (Perintah dari jawaban termoman tidak berhasil.)
Periksa ukuran dan posisi volume logis yang dihapus seperti sebelum penghapusan dengan membaca file di / etc / lvm / arsip. Ukuran volume berada di
extent_count
dalamsegment1
(atau jumlahsegment*/extent_count
nilai jika memiliki beberapa luasan). Posisi ada distripes
bagian setelah volume fisik alias (mispv0
.).Misalnya, bagian volume mungkin terlihat seperti ini:
Ukuran
example
volume ini adalah 1024 dan terletak di / dev / somedisk mulai dari 30720.Hitung tingkat terakhir sebagai mulai + ukuran -1 = 30720 + 1024 - 1 = 31743. Untuk membuat ulang masalah volume berikut:
sumber
Saya memiliki situasi yang serupa. Saya memiliki semua PV yang berisi LV yang diinginkan, tetapi VG saya menunjukkan PV yang hilang dan 0 LV. Saya pulih dengan melakukan hal berikut:
pvs
untuk mengumpulkan UUID untuk semua drive.physical_volumes
bagian ini, aturdevice =
garis agar sesuai dengan perangkat / UUID saat ini yang dilaporkan olehpvs
, hapus semua"MISSING"
flag, dan hapus semuapvN
bagian yang benar-benar hilang.logical_volumes
bagian tersebut, hapus semua cantuman yang memiliki garis padapvN
bagian yang sudah tidak ada.Itu dia, lalu aku berlari
vgcfgrestore --test vg -f /root/dangerously_edited.vg
--test
opsi.Saya mencapai situasi khusus saya dengan memperluas VG dengan PVs sdg dan sdh. Kemudian saya membuat LV baru, menentukan
/dev/sdg /dev/sdh
pada baris perintah sehingga saya tahu LV baru ada di drive tersebut. Lalu saya memindahkan hanya drive-drive itu ke mesin baru. Mesin lama sangat marah tentang drive yang hilang, dan ketika saya menghapusnya secara paksa, itu juga menghapus SEMUA LV. Kekecewaan.Lain kali, tentu saja, saya akan membuat VG baru untuk menghindari masalah ini.
sumber