Cara termudah di Linux untuk mendapatkan ukuran disk adalah dengan blockdev --getsz
:
sudo -s
dd bs=512 if=/dev/zero of=/dev/sdx count=2048 seek=$((`blockdev --getsz /dev/sdx` - 2048))
Ukuran setiap partisi tersedia di /proc/partitions
. Perintah berikut menunjukkan ukuran sdx
(dalam satuan kB):
awk '$4 == "sdx" {print $3}' </proc/partitions
Jadi:
dd if=/dev/zero of=/dev/sdx bs=1k count=1024 \
seek=$(($(awk '$4 == "sdx" {print $3}' </proc/partitions) - 1024))
Menggunakan pencarian untuk sampai ke ujung drive bekerja dengan sangat baik, yaitu:
cari=$((
blockdev --getsz /dev/sda
- 2048))
Namun, ketika Anda menggunakan ini, saya menyarankan Anda untuk mengetahui bahwa nilai hitungan Anda benar, atau tidak menggunakannya sama sekali. Alasan saya mengatakan ini adalah bahwa drive dapat memiliki sektor 512 byte atau sektor 4k, dan jika Anda menggunakan solusi ini dengan drive yang memiliki sektor 4k, Anda tidak akan pergi ke ujung drive dengan nilai hitungan itu, dan mungkin melewatkan informasi RAID di bagian akhir (saya mengalami ini).