میدونم که اغلب کاربران سایت بهتر از من اینها رو میدونن.ولی خواستم اینجا اطلاعاتی باشه در مورد سلامت هارد دیسک و نرم افزارهای متن باز که برای این کار وجود داره.تا برای تازه کارها شاید مفید باشه.
هارد دیسک ها در درون خودشون سازوکار سنجش سلامت توکار (built-in health-check) رو دارند که به آن SMART میگویند.
SMART مخفف Self-Monitoring, Analysis, and Reporting Technology هستش.
SMART به شما کمک میکنه تا قبل از اینکه هارد شما به خاطر بدسکتور یا به پایان رسیدن عمرش خراب بشه شما متوجه بشید.اطلاعاتتون رو Backup بگیرید تا با خرابی هارد از دستشون ندید.
با استفاده از Dash برنامه Disk رو اجرا کنید.
از پنل سمت چپ Disk Drive مورد نظر رو انتخاب کنید.تا درجه حرارت به سانتی گراد و درصد بدسکتور رو ببینید.
متاسفانه این نرم افزار(gnome-disk-utility 3.10.0) نمیتونه اطلاعات SMART همه هارد دیسک ها را بخونه و نمایش بده.
مثلا روی سیستم من اطلاعات SMART هارد دیسک داخلی که Seagate بود رو به درستی خوند و نمایش داد.ولی هارد دیسک اکسترنال که WD بود رو میشناسه ولی نمیتونه اطلاعات SMART اون رو نمایش بده!!!
از بین یک عالمه Attribute مختلف که توسط SMART اندازه گیری میشه.مهم ترین اونها درجه حرارت هارد و تعداد بد سکتور هستش.
متاسفانه نرم افزار psensor هم نتونست هارد اکسترنال رو بشناسه و درجه حرارت اون رو بگه.چون که این نرم افزار هم از دستور زیر استفاده میکنه :
hddtemp /dev/sdx
با زدن این دستور در ترمینال خروجی برای هارد داخلی درجه حرارت به سانتی گراد بود.ولی برای هارد خارجی نوشت :
/dev/sdc: WD Elements 1078: S.M.A.R.T. not available
برای اینکه بتونم به اطلاعات هارد خارجی ام دسترسی داشته باشم.از نرم افزار smartmontools که در Software Center هم هست استفاده کردم.این نرم افزار یک GUI به اسم GSmartControl داره.اگر GUI اون رو دوست ندارید.میشه از CLI هم استفاده کرد.دستورات smartctl, smartd, update-smart-drivedb رو در command line بنویسید.
دستور
sudo smartctl -d sat --all /dev/sdc
رو بنویسید.
این دستور تمام اطلاعات SMART هارد من رو نوشت.از مدل هارد و سریال نامبر و Rotation Rate و Sector Size و Sata Version و شرکت سازنده و ... رو همه رو درست نوشت.
و برای هارد داخلی مقادیر اینها بود :
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 120 099 006 Pre-fail Always - 1117230
3 Spin_Up_Time 0x0003 098 098 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 095 095 020 Old_age Always - 6109
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 20
7 Seek_Error_Rate 0x000f 083 060 030 Pre-fail Always - 210128125
9 Power_On_Hours 0x0032 094 094 000 Old_age Always - 5832
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 095 095 020 Old_age Always - 6073
184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0
187 Reported_Uncorrect 0x0032 098 098 000 Old_age Always - 2
188 Command_Timeout 0x0032 100 097 000 Old_age Always - 274
189 High_Fly_Writes 0x003a 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 055 048 045 Old_age Always - 45 (Min/Max 44/46)
191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 964
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 140
193 Load_Cycle_Count 0x0032 085 085 000 Old_age Always - 30898
194 Temperature_Celsius 0x0022 045 052 000 Old_age Always - 45 (0 15 0 0 0)
195 Hardware_ECC_Recovered 0x001a 049 039 000 Old_age Always - 1117230
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
254 Free_Fall_Sensor 0x0032 100 100 000 Old_age Always - 0
و برای هارد اکسترنال هم :
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0027 135 125 021 Pre-fail Always - 4225
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 76
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 100 253 000 Old_age Always - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 17
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 33
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 11
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 295
194 Temperature_Celsius 0x0022 109 099 000 Old_age Always - 38
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0
تذکر : پارامتر شماره ۵ : Reallocated_Sector_Ct تعداد بدسکتور هستش.چون که نرم افزار Disk هم همین تعداد بدسکتور رو نشون میده.خصیصه شماره ۹ هم که مشخصه.Power_On_Hours تعداد ساعتی که هارد روشن بوده.و باقیمانده عمر هارد رو به کمک این خصیصه میتوان به صورت تقریبی بدست آورد.(عمر تقریبی هارد بیشتر از ۱۰۰۰ روز هستش.در اینجا عدد به ساعت هستش.میتونید این عدد رو بر ۲۴ ساعت تقسیم کنید.و عمر هارد من ۲۴۳ روز و سه ساعت میشه)
Load_Cycle_Count هم که کلی در موردش
اینجا
بحث شده آخرش ندونستم بالاخره این خصیصه چیه!!! البته فقط صفحه اول رو خوندم
برای بدست آوردن لیست کامل بدسکتورها هم میشه از دستور زیر کمک گرفت.البته چون که این دستور کل هارد رو Sector by sector بررسی میکنه خیلی طول میکشه.شما میتونید فقط پارتیشن هایی که بهشون مشکوک هستید رو ازنظر بد سکتور بررسی کنید مثلا sda2.تا زمانی که جلوی Checking for bad blocks (read-only test) مینویسه done باید صبر کنید :
sudo badblocks -v /dev/sda -o bad-sectors.txt
برای اینکه بدسکتور ها رو از بین ببریم شنیدم که دو راه وجود داره :
۱-کل هارد رو با صفر پر کنید :
dd if=/dev/zero of=/dev/sda bs=1M
این عملیات چند ساعت طول میکشه. ولی هارد شما رو مثل روز اولش تمیز و خالی میکنه.ولی همه اطلاعاتتون پاک میشه.
۲-از نرم افزاری به اسم HDD Regenerator در بوت (در
Hiren's BootCD 15.2 وجود داره).استفاده کنید.
اگه با این کارا درست نشد.از اطلاعاتتون Backup بگیرید.تا اگه هاردتون خراب شد اطلاعاتتون از بین نره.