Berapa lama badblock mengambil drive 1TB?

29

Saya menjalankan badblocks (atau lebih tepatnya "e2fsck -c") pada drive 1TB dan jika indikator progresnya adalah indikasi apa pun (tidak ada permainan kata-kata yang dimaksudkan), itu akan memakan waktu hampir selamanya untuk diselesaikan.

Saat ini dikatakan 0.01% done, 30:20 elapsedyang berarti bahwa hal itu akan memakan waktu 17 minggu atau lebih untuk menyelesaikan, yang tampaknya agak berlebihan dalam buku saya.

Apakah itu jumlah waktu normal untuk cek seperti itu atau hanya karena kecurigaan saya benar bahwa drive gagal, sehingga menyebabkan cek hanya mengambil sedikit lebih pendek dari keabadian?

Saya menemukan pertanyaan ini di sini, tetapi itu berkaitan dengan jumlah operan yang dilakukan.

Steven Don
sumber
2
Hampir pasti tergantung pada antarmuka, drive, dan seberapa buruk drive itu, jika sebenarnya ada kegagalan. Saya dapat memberitahu Anda di salah satu komputer saya bahwa pemindaian badblock memerlukan waktu ~ 70 jam untuk drive 1,5TB yang terpasang melalui SATA. Jika Anda terhubung melalui USB2.0, atau 1.0, itu akan jauh lebih lama.
Zoredache
Itu dilampirkan menggunakan e-SATA. Saya kira saya akan memberikannya sebentar dan melihat seberapa jauh setelah tidur nyenyak.
Steven Don
@Zoredache - Saya pikir komentar Anda seharusnya menjadi jawaban.
Nifle
Selain komentar Zoredache di atas, sakelar berbeda badblocksmenyebabkannya melakukan tugas yang berbeda, yang juga akan memengaruhi runtimes, misalnya -wsakelar.
JeffG
1
Waktu yang diperlukan akan (juga) tergantung pada mode yang badblockssedang berjalan di: baca-saja, baca-tulis yang tidak merusak atau baca-tulis yang merusak. Karena itu, 30 menit untuk 0,1% memang terasa lama.
SabreWolfy

Jawaban:

20

Untuk menjawab pertanyaan Anda, hal terdekat yang dapat saya tawarkan adalah dengan 3TB yang saya uji untuk ini. Berikut adalah 3 kali tes yang saya lakukan, hanya mengubah nilai parameter untuk -cdan hanya melakukannya hingga 10% karena mereka mengambil BANYAK waktu. Masing-masing dilakukan 3 kali untuk mendapatkan rata-rata.

badblocks -svn /dev/sdb

Untuk mencapai 1%: 1 Jam
Untuk mencapai 10%: 8 jam 40 menit

badblocks -svn -b 512 -c 32768 /dev/sda

Untuk mencapai 1%: 35 Menit
Hingga 10%: 4 jam 10 menit

badblocks -svn -b 512 -c 65536 /dev/sda

Untuk mendapatkan 1%: 16 Menit
Hingga 10%: 2 jam 35 menit

Jadi ya, -cparameter memiliki pengaruh yang sangat besar pada waktu yang diperlukan untuk memeriksa drive. Saya akan menebak bahwa untuk Hard Drive 1 TB, dengan asumsi ia mempertahankan kerangka waktu yang sama dengan 3TB, itu akan menjadi 1/3 dari waktu yang disebutkan di sini, jadi untuk mendapatkan 10% dengan -c 65536HDD 1 TB itu akan menjadi sekitar 50 menit.

CYREX
sumber
5

Badblock menghasilkan 4 kali lari. Pada HD eksternal 1 TB biasanya membutuhkan sekitar 70 jam.

NotFromBrooklyn
sumber
4
Untuk kelengkapan, badblocks(hanya) default untuk empat berjalan dengan -wbendera destructive-write.
SabreWolfy
@ SabreWolfy di mana Anda membaca bahwa badblock tidak berjalan dengan -w? Saya tidak dapat menemukan informasi ini.
Alan Franzoni
1
Halaman manual untuk -w menunjukkan empat pola tulis yang digunakannya.
SabreWolfy
3

Coba tambah jumlah blok yang diproses bersama, seperti di badblocks -svn -b 512 -c 65536 /dev/sda. Dengan cara ini, saya bisa memeriksakan hard disk drive 1 TB dalam 8 jam.

pengguna326852
sumber
2

Saya menjalankan badblock pada drive WD Red 4TB. Karena mereka adalah drive sektor 4k (diperiksa menggunakan lsblk -o NAME,PHY-SeC) saya menjalankannya -b 4096. Saya ingin memberikan masing-masing contoh badblock ~ 800Mb RAM jadi saya menggunakan -c 200000yang memberi Anda 4096 bytes * 200,000 blocks = 800,000 Kb. Mereka mulai dengan masing-masing 800 MB tapi itu merangkak dari waktu ke waktu. Pengaturan ini memang memberikan percepatan yang signifikan atas pengaturan standar.

Itu berlari 1% dalam 3 menit 56sec tapi itu 1% dari 4 pola. Tampaknya juga membutuhkan lebih banyak waktu semakin dekat Anda ke akhir lari. Itu memeriksa disk dengan pola pertama di sekitar 17hrs sehingga harus menyelesaikan 4TB di sekitar 68hr .

PERINTAH DI BAWAH INI MENJALANKAN TULISAN MENURUT

Perintah yang saya gunakan adalah: badblocks -svw -b 4096 -c 200000 /dev/sdc -o bb_sdc.txt

CamW
sumber
0

Jalankan ini sehari sebelum kemarin pada drive 1 TB yang gagal di RAID 6TB 6 saya (MODE PENULISAN DESTRUKTIF!):

# badblocks -svw -b 4096 -c 65536 /dev/sdb

Mainboard adalah ASRock Rack C2550D4I (saya tahu ...) dengan 8x Samsung SpinPoint M8 HN-M101MBB (Saya tahu ...) yang terhubung ke Port SATA3. Drive adalah drive 4K "Format Lanjutan", karenanya ukuran blok 4K.

badblocks butuh sekitar 28 jam untuk menyelesaikannya, tanpa kesalahan.

Drive tunggal dapat melakukan ~ 105 MB / detik ( hdparm -tTwaktu baca buffered rata-rata ), 200–230 MB / detik saat menguji seluruh array. Tidak ada yang lebih unggul, saat ini, tetapi bagus untuk setumpuk drive Laptop lama.

Semoga ini bisa membantu sebanyak utas ini membantu saya menemukan cara cepat untuk menjalankan badblock pada disk. Saya tahu penggunaannya meragukan hari ini, tetapi ketika sebelumnya smartctl -t longgagal karena kegagalan membaca, saya memutuskan untuk semua sektor disentuh dan ditulis ulang beberapa kali untuk melihat bagaimana nilai-nilai SMART akan berubah. smartctlTes lain sedang ditunda, jika itu lagi gagal, saya akan berbelanja untuk drive baru.

memartin
sumber
-1

Beberapa pengamatan kinerja:

Saya sedang menjalankan e2fsck -c -c -v /dev/sda2, yang berada di perangkat ini:

/dev/sda2  77056 976754431 976677376  3.7T Linux filesystem

Runtime saat ini untuk 63,5% adalah 53:28:40; 53,5 jam. Tingkat kemajuan adalah 1,186% / jam. Pada tingkat ini, akan dibutuhkan tambahan 31 jam untuk menyelesaikan, dengan total perkiraan waktu berjalan 85 jam. Ini perangkat USB 3.0. iotop menunjukkan kecepatan baca / tulis rata-rata sekitar 25MB / s. Sejauh ini, nol blok buruk telah ditemukan.

Baris perintah yang mendasarinya dijalankan oleh e2fsckadalah:

sh -c badblocks -b 4096 -X -s -n /dev/sda2 976677375

Posting ke StackOverflow menyatakan aman untuk mengganggu badblock dengan ^ C (SIGTERM). Haruskah saya melakukannya, saya tidak melihat sisi buruk dari menghentikan tes ini, dan melanjutkannya di masa mendatang, karena ini adalah operasi level blok disk. Saya harus melepas sistem file ini sebelum melanjutkan pada pemindaian persen selesai.

numberer6
sumber
3
apakah ini pertanyaan atau jawaban?
Pierre.Vriens