دستور badblocks

دستور badblocks در دیسک شما دنبال بلاک‌های خراب می‌گردد. بسیاری از سایت‌ها گفته‌اند این دستور به تنهایی کاری نمی‌کند زیرا وظیفه اصلی آن صرفن گشتن و پیدا کردن است نه تعمیر کردن. تجربه بنده از بیش از یک سال همنشینی با بدسکتورها می‌گوید تمام راه‌حل‌های نرم‌افزاری اگر کار از کار نگذشته باشد ممکن است تاثیر موقت بگذارد اما در هر صورت این تاثیر موقت است و چند وقت بعد شرایط به مراتب بدتر از الان خواهد بود. منبع معتبری ندیدم تصریح کرده باشد که بدسکتورها رشد می‌کنند و زیاد می‌شوند ولی تجربه من از بدسکتورها چنین بود.

یکی از حالات اجرای این دستور اینست که نتیجه اسکن را حاوی آدرس بلاک‌های خراب در یک فایل ذخیره کنیم و سپس آن را به ورودی یک دستور دیگر که وظیفه تعمیر سکتورها را دارد بدهیم. اینکار با آپشن -o صورت می‌پذیرد. اما درصورتیکه بخواهیم خود دستور پس از پیدا کردن اقدام به رایت کردن روی دیسک بکند یعنی روی بیت خراب فلگ بگذارد ۲ آپشن وجود دارد. یکی آپشن -n هست که non-destructive هست به این معنا که استفاده از این آپشن فایل‌های موجود روی دیسک را خراب نمی‌کند و دیگری آپشن -w هست که رایت در حالت write mode هست که از یک سری پترن برای پیدا کردن سکتورهای خراب استفاده می‌کند. درجاییکه دیسک حاوی اطلاعات باشد انجام این عملیات در مود نان‌دیستراکتیو زمان‌برتر است.

آپشن‌های نمایشی دستور -v به معنی verbose است که در خروجی دستور ارورها را چاپ می‌کند. و -s هم که process را با درصد نمایش می‌دهد. یک نمونه از این دستور به شکل زیر است:

sudo badblocks -v -n -s /dev/sda5

در دستور بالا /dev/sda5 آرگومان دستور است که باید با نام دیوایس پارتیشن مورد نظر جایگزین شود. خروجی این دستور چیزی شبیه این است:

Checking for bad blocks in non-destructive read-write mode
From block 0 to 39063551
Checking for bad blocks (non-destructive read-write test)
Testing with random pattern: 

سایر دستورات

translate: http://www.howtogeek.com/howto/37659/the-beginners-guide-to-linux-disk-utilities/