Saya telah membaca banyak panduan dan posting forum yang menjelaskan cara menggunakan dd
, tetapi satu hal yang saya perhatikan adalah bahwa orang selalu menggunakan nilai yang berbeda untuk bs=
, count=
dan seek=
beralih.
Tolong bisakah seseorang menjelaskan apa yang switch ini lakukan dengan tepat (halaman manual tidak terlalu detail), dan menjelaskan apa pengaturan terbaik untuk mereka untuk tugas yang berbeda, seperti membuat file dari / dev / random atau / dev / zero, dan menimpa partisi dan drive eksternal.
Jawaban:
Saya benar-benar tidak tahu bagaimana menjelaskan ini lebih baik daripada halaman manual.
bs=
set blocksize, misalnyabs=1M
akan menjadi 1MiB blocksize.count=
hanya menyalin jumlah blok ini (standarnya adalah untuk dd terus berjalan selamanya atau sampai input habis). Idealnyabs=
ukuran blok tetapi mungkin ada bacaan yang tidak lengkap, jadi jika Anda menggunakancount=
untuk menyalin sejumlah data tertentu (count*bs
), Anda juga harus menyediakaniflag=fullblock
.seek=
mencari jumlah blok dalam output ini, alih-alih menulis ke bagian paling awal dari perangkat output.Jadi, misalnya, ini menyalin nilai 1MiB
y\n
ke posisi 8MiB dari file output. Jadi total filesize akan menjadi 9MiB.Karena Anda menyebutkan
/dev/random
dan menimpa partisi ... itu akan memakan waktu lama karena/dev/random
(juga/dev/urandom
) terlalu lambat. Anda bisa menggunakanshred -v -n 1
saja, itu cepat dan biasanya tersedia di mana saja.sumber
Ok, Anda bilang halaman manual tidak detail, jadi saya akan menjelaskan apa artinya dengan metafora yang mudah dipahami tentang seorang pria yang bergerak (ini namanya
dd
:)dd
mengambil sesuatu (kotak, vas, tempat tidur, beras, dll.), pindah ke tempat yang seharusnya dan jatuhkan. Sampai dia tidak menjatuhkan beban, dia tidak memilih apa pun. Sekarang, ketika Anda perlu memberi tahu dia dengan tepat berapa banyak objek yang harus ia pilih per perjalanan, inilah yangbs
dilakukannya. Anda mengatur jumlah data yang akan dia baca dan tulis. Ini hampir wajib dalam semua perintah yang berguna dan umum.Ini menentukan jumlah total kotak yang akan ia pindahkan. Kotak dalam konteks ini adalah blok pada disk . Anda memintanya untuk memindahkan 5 kotak, dia hanya memindahkan 5 kotak bahkan jika ada lebih dari 5 kotak (jika ada kurang dari 5 kotak, dia akan mengambil vas yang dia temukan di samping kotak untuk menambahkannya). Jika Anda memberitahu
dd
untukcount
hanya 5, dan menulis di suatu tempat, ia akan menyalin pertama 5 blok ia melihat dan menulis mereka di mana Anda inginkan.Orang itu biasanya menemukan tempat pertama yang tersedia untuk menjatuhkan beban, ini biasanya di awal (dari disk), dan terus mengisi hingga akhir. Nah, dengan ini Anda mengatakan
dd
untuk memulai lebih jauh, katakanlah bukannya aula, mulailah di salah satu kamar lebih jauh di dalam. Itu hanya "melewati" blok awal.Sekarang, tergantung apa yang Anda lakukan, Anda akan memerlukan kombinasi berbeda berdasarkan sumber dan tujuan, bersama dengan format mereka akan dibaca dan ditulis. Saya sarankan Anda untuk mencari mereka yang terpisah.
sumber