Saya baru saja membuat cadangan seluruh hard drive (50GB) ssh
melalui:
dd if=/dev/hda | buffer -s 64k -S 10m | ssh myuser@myhost "cat > ~/image.img"
Apa yang sekarang merupakan cara terbaik untuk memeriksa integritas file image.img
, yaitu cara memverifikasi bahwa semuanya disalin dengan benar?
Jawaban:
Jika perintah dihentikan dengan sukses, maka cadangannya sudah benar, cegah kesalahan perangkat keras (yang sama-sama memengaruhi verifikasi yang mungkin Anda lakukan). Mungkin nanti menjadi salah jika perangkat keras rusak, tetapi sebagian besar perangkat keras penyimpanan mendeteksi korupsi.
Ada satu peringatan di sini: di saluran pipa, shell tidak melaporkan kesalahan dari sisi kiri. (Hal ini karena skenario yang cukup umum di mana sisi kanan tidak perlu membaca semua data, misalnya
some_command | head
, dan sisi dies kiri karena outputnya tidak lagi ingin.) Jadi di sini kesalahan membaca daridd
Would diabaikan. Di bash, aturpipefail
opsi untuk melaporkan kesalahan dari semua bagian pipa.Juga, waspadalah yang
dd bs=…
mengabaikan beberapa kesalahan dandd
seringkali lebih lambat dari alternatif . Saya sarankan tidak menggunakandd
sama sekali: tidak ada manfaatnya hanya menyalin seluruh file. Bertentangan dengan apa yang mungkin Anda miliki membaca di suatu tempat,dd
bukan tingkat rendah akses disk perintah dengan properti khusus, sama sekali tidak ada sihir dalamdd
, keajaiban dalam/dev/hda
.Meskipun demikian, jika Anda ingin memeriksa cadangan, cara terbaik adalah mengambil checksum kriptografi di setiap sisi dan membandingkannya. Sebagai contoh:
Pastikan kedua checksum identik.
Perhatikan bahwa ini menguji apakah cadangan dan asli identik pada saat pemeriksaan. Apa pun yang Anda ubah
/dev/hda
, termasuk pemasangan dan pelepasan sistem file bahkan tanpa membuat perubahan apa pun (yang akan memperbarui tanggal pemasangan terakhir pada banyak sistem file), akan mengubah checksum. Jika Anda ingin memverifikasi integritas nanti, catat checksum disk pada saat cadangan di suatu tempat.sumber
/dev/hda
berubah sejak pencadangan dilakukan, hash tidak akan cocok.Seperti yang disebutkan darnir & Giles, hal terbaik yang harus dilakukan adalah menjalankan hash kriptografi segera setelah pencadangan sebelum ada sesuatu yang diubah pada disk sumber Anda. Namun, jika Anda telah menggunakan disk sejak itu hash kemungkinan besar tidak akan cocok. Bahkan mengubah satu byte pada disk akan menghasilkan hash yang sama sekali berbeda.
Meskipun jauh dari ideal, Anda dapat melihat gambar dengan memasangnya. Pada sistem di mana disk image berada, jalankan yang berikut (buat
/mnt/disk
jika tidak ada atau kita lokasi alternatif):Anda kemudian dapat melihat-
/mnt/disk
lihat dan melihat semua file. Periksa sha1 hash file penting di dalam gambar terhadap aslinya untuk memverifikasi integritas mereka.sumber
Gunakan perintah qemu-img
sumber