GNU/Linux >> Belajar Linux >  >> Linux

LVM dan kloning HD

Saya setuju dengan salah satu jawaban sebelumnya -- menjalankan dd di seluruh disk bukanlah solusi yang bagus di sini. Jika alasan Anda terhenti di dd berkaitan dengan mencadangkan OS lain, maka Anda dapat menggunakan dd hanya untuk partisi OS lain tersebut, dan rsync untuk partisi linux.

Bagian dari masalahnya adalah jika Anda menjalankan dd dari seluruh disk saat Anda memiliki sistem file dan dipasang darinya, tidak ada cara untuk memastikan pencadangan konsisten. Ini mungkin berfungsi 9 kali dari 10, tetapi di bawah beban apa pun, cadangan yang dihasilkan dapat rusak. Satu-satunya cara untuk memastikan hal ini tidak terjadi adalah dengan meng-unmount semua sistem file dan menonaktifkan semua grup volume selama dd berjalan. Sangat tidak nyaman jika / dipasang dari LVM.

Bagaimanapun, jika Anda bersikeras untuk tetap menggunakan pendekatan ini, alat yang Anda cari untuk mengganti nama vg yang digandakan disebut "vgimportclone". Ini dimaksudkan untuk digunakan dengan snapshot tingkat perangkat, tetapi juga akan berfungsi dengan dd.


Menutup masalah ini, setelah satu tahun. Jawabannya sudah saya tulis di website pribadi saya. Saya harap ini bermanfaat bagi orang lain.

Saya menggunakan beberapa tingkat pencadangan, dari rsync ke disk eksternal hingga rsync+ZFS melalui komputer jarak jauh. Salah satu cadangan yang saya lakukan adalah -dari waktu ke waktu- "dd" dari harddisk laptop saya ke USB eksternal yang terpasang (terhubung hanya selama prosedur pencadangan). Saya melakukan ini, misalnya, sebelum membawa laptop saya untuk bepergian.

Prosedur ini bekerja dengan baik selama berabad-abad. Sampai saya mulai menggunakan LVM di laptop saya.

Jika Anda menggunakan LVM di komputer Anda, Anda menyalin harddisk Anda menggunakan dd (boot dari LiveCD) dan Anda pasang harddisk eksternal saat komputer berjalan normal, nanti, ANDA AKAN MERUSAK DATA ANDA, BAHKAN KEHILANGAN SEMUA SISTEM FILE ANDA DI LUAR PERBAIKAN APA PUN!!!.

Mengapa?. Karena ketika Anda menyambungkan harddisk eksternal, OS akan melihat konfigurasi LVM yang sama di kedua disk dan secara naif akan berasumsi bahwa kedua disk itu sama, dapat diakses melalui tautan multipath, sehingga akan menyebar baca dan tulis di antara kedua disk, merusak KEDUANYA. Anda akan membuang data langsung dan cadangan Anda!.

Ini terjadi pada saya sekali. Saya kehilangan data. Saya memiliki cadangan lain, untuk beberapa hari sebelumnya, jadi saya tidak kehilangan apa pun yang sangat penting, tetapi itu cukup mengganggu dan mengungkap kelemahan dalam strategi pencadangan saya.

Solusi:Pastikan konfigurasi LVM di disk cadangan berbeda. Masalahnya adalah... Bagaimana cara melakukannya?

Saya memposting pertanyaan di superuser.com (Stack Exchange) tetapi saya tidak mendapatkan jawaban yang bagus. Jadi saya mengembangkan prosedur saya sendiri dan, setelah lebih dari setahun mengujinya, saya mempostingnya di sini dan menutup pertanyaan awal:

  • Pastikan jika terjadi kesalahan, komputer Anda tidak akan boot secara otomatis. Dalam kasus saya, laptop saya tidak bisa boot secara otomatis jika listrik padam dan hidup lagi. Selain itu, harddisk dienkripsi, sehingga akan meminta kata sandi.

    Ini diperlukan karena Anda dapat merusak KEDUA disk jika Anda mem-boot ulang dengan disk cadangan terpasang sebelum menyelesaikan prosedur.

  • Boot dari Live CD. Anda tidak dapat melakukan "dd" dari partisi langsung, jika Anda berharap dapat memulihkan data Anda :-).

    Sesuatu untuk dicoba di masa mendatang adalah menggunakan snapshot LVM untuk dapat melakukan pencadangan saat saya menggunakan komputer, tetapi kemudian saya memiliki masalah duplikat LVM, yang saya coba hindari di sini. Opsi lain adalah mengonfigurasi ulang LVM untuk mencerminkan data secara langsung ke harddisk eksternal, dan memecahkan cermin setelah sinkronisasi selesai. Namun kedengarannya berisiko, dan tidak akan mencadangkan partisi Windows saya atau data yang tidak saya simpan di volume LVM.

  • Setelah mem-boot LiveCD, colokkan harddisk USB eksternal.

  • Login sebagai "root" dan jalankan vgchange -a n . Perintah ini akan menonaktifkan LVM di kedua disk. Saya menjalankan perintah beberapa kali, untuk memastikannya.

  • Pastikan /dev/sda adalah sumber (harddisk internal) dan /dev/sdb adalah tujuan (harddisk eksternal USB). Misalnya, lakukan dd if=/dev/sdb of=/dev/null dan periksa LED harddisk mana yang berkedip.

  • Saat Anda yakin dengan disk yang mana, Anda melakukan penyalinan dengan dd if=/dev/sda of=/dev/sdb bs=65536 . Dengan konfigurasi saya, pencadangan membutuhkan waktu empat jam. Harddisk internal saya berukuran 500GB, dan USB saya menyalin dengan kecepatan 35MB/dtk. Saya melakukan ini di malam hari, saat saya tidur.

    Harddisk USB eksternal Anda harus, SETIDAKNYA, sebesar harddisk internal Anda. Sudah jelas, bukan?

  • Setelah penyalinan ini selesai, Anda memiliki tiruan persis dari harddisk internal Anda. Pencadangan selesai. Namun sekarang Anda akan mengalami masalah jika Anda pernah menyambungkan harddisk ini ke komputer Anda saat Anda sedang bekerja dengan harddisk internal Anda, seperti yang telah dijelaskan. Kita perlu mengubah konfigurasi LVM.

  • Sekarang, setelah "dd" selesai, lakukan "sync" dan cabut harddisk UDB eksternal.

  • Anda mengeksekusi pvchange --uuid /dev/sda* . Perintah ini akan mengubah UUID dari semua volume fisik di harddisk internal Anda. Perintah ini aman bahkan jika Anda memiliki partisi yang bukan volume fisik untuk LVM, karena partisi tersebut akan dilewati secara otomatis dan aman.

    Sistem mengetahui partisi mana yang merupakan volume fisik karena tipe partisi dan karena Anda menjalankan "pvcreate" saat membuat LVM.

  • Anda mengeksekusi vgchange -u LVM . Perintah ini akan mengubah UUID grup volume LVM. Omong-omong, grup volume saya disebut "LVM".

  • Anda mengeksekusi vgscan . Perintah ini akan memindai harddisk internal (satu-satunya yang terpasang saat ini) dan akan menemukan grup volume LVM Anda di sana.

  • Anda mengeksekusi vgrename LVM LVM2 , untuk mengubah nama Grup Volume Anda.

  • Sekarang Anda mencolokkan harddisk USB eksternal Anda.

  • Anda "vgscan" lagi, kali ini untuk mencari Grup Volume di harddisk USB eksternal. Sekarang Anda akan memiliki dua Grup Volume. Satu disebut "LVM2" di harddisk internal Anda dan lainnya disebut "LVM" di harddisk eksternal USB Anda.

  • Ganti nama Grup Volume di harddisk USB eksternal dengan vgrename LVM LVM_BACKUP .

  • Dan ganti nama Grup Volume di harddisk internal kembali ke nama aslinya:vgrename LVM2 LVM .

  • Kamu selesai. Anda dapat meninjau situasinya dengan vgdisplay -v .

    Anda akan melihat bahwa UUID Volume Logis sama di kedua Grup Volume, tetapi sepertinya tidak menimbulkan masalah, dan saya tidak tahu cara mengubahnya.

  • Cabut harddisk USB eksternal Anda, simpan di tempat yang aman, reboot komputer Anda, keluarkan LiveCD dan kembali ke bisnis.


Linux
  1. Kurangi Ukuran Lvm /tmp Menjadi 10g Dan Tambahkan Semuanya Ke / Root Dir?

  2. Pthreads Dan Vfork?

  3. Cara Membuat LVM Menggunakan Perintah vgcreate, lvcreate, dan lvextend lvm2

  1. Snapshot LVM:Cadangkan dan pulihkan Partisi LVM di Linux

  2. Perintah LVM Gagal Dengan "Gagal memuat file konfigurasi /etc/lvm/lvm.conf"

  3. LVM dan multipathing – contoh string filter LVM

  1. Terjebak memilih antara ext4 dan ext3 untuk sistem file

  2. Urutan terbaik RAID, LVM dan LUKS

  3. Bahaya dan peringatan LVM