Pertanyaan Menggunakan perintah dd gagal setelah tunggangan pertama


saya menggunakan dd perintah untuk menyalin disk drive /dev/sda di /dev/sdb. Apa yang saya lakukan adalah sebagai berikut: Saya berlari

  1. dd if=/dev/sda of=/dev/sdb
  2. lalu mount /dev/sdb1 (catat itu /dev/sdb1 tidak di-mount saat boot) untuk memastikan bahwa semuanya ada di sana.

Ini berfungsi dengan baik.

Lalu saya membuat beberapa perubahan /dev/sda dan coba salin disk lagi. Jadi saya umount /dev/sdb dan mengeluarkan perintah yang sama (dd if=/dev/sda of=/dev/sdb).

Setelah saya me-mount /dev/sdb1 Sekali lagi, perubahan menengah tidak tercermin /dev/sdb dan keadaan /dev/sdb sama seperti setelah tunggangan pertama /dev/sdb1.

saya menggunakan ext3. Mungkin metadata rusak atau saya harus me-restart sistem? Atau mungkin ada hubungannya dengan jurnal. Bisakah Anda memberi tahu saya apa yang menyebabkan masalah dan bagaimana cara memperbaikinya?


4
2017-11-05 12:58


asal


Anda menggunakan sdb dan sdb1 secara bergantian. Silakan periksa semua kejadian dari mereka untuk melihat bahwa mereka benar. Perhatikan juga bahwa Anda perlu umount /dev/sda[1] (apa pun yang Anda lakukan sebenarnya) untuk memastikan bahwa semua pembaruan filesystem benar-benar telah memukul disk. Menyalin perangkat blok ketika masih terpasang sedang menunggu masalah terjadi ... - wurtel
Ya, saya tahu bahwa memiliki / dev / sda1 terpasang saat dd mengeksekusi berbahaya. Tetapi dengan cara itu ada cara lain untuk memastikan bahwa semua pembaruan filesystem benar-benar telah memukul disk, selain dari unmounting atau menjalankan sinkronisasi. - nikozavar


Jawaban:


Dilihat oleh pertanyaan Anda /dev/sda1 adalah disk yang di-mount dan menggunakan dd dengan cara ini kemungkinan besar akan mendapatkan salinan yang rusak karena dd tidak menangani penulisan dengan benar.

Informasi lebih lanjut adalah sini dalam jawaban atas pertanyaan di serverfault.


1
2017-11-09 22:37