ասք ռեալոքեյթ չլինող սեկտորների մասին

մի ֆայլ կարդալու սխալ էր։ ուսբ-ով կպնող վինչի։ այդպես էր սկսվել։

արեցի fsck չդզվեց։

արեցի reiserfsck –rebuild-tree, որը փաստորեն չկարողացավ ավարտվել, որովհետև ինչ որ տեղ թքում ու դուրս էր թռնում։

իսկ եթե ծառի վերակառուցումը չի ավարտվել, ապա բաժինը էլ մաունթ չի լինի։

որոշեցի բաքափ անել սաղ վինչը։

dd if=/dev/sdb of=/data/noch/hd.img

չեղավ

դուրս թռավ կոնկրետ տեղում՝ 464648040-րդ բլոքի վրա։

ու տենց հա դուրս էր թռնում։

փաստորեն dd_rescue-ով հանեցի դիսկի պատկեր, համ էլ իմացա, քանի բլոք ա կոնկրետ վնասվել։

հիմա կարելի էր այդ տեղը զրոնել լցնել որ դիսկը ռեմափ անի

չարեց՝ ինփութ/աւոփութ էրրոր։

smartctl-ը ինձ զարմացրեց՝ ոչ մի ռեալլոքեյթդ սեկտոր։

Եթե վատ սեկտորի վրա ինչ որ բան գրում ես, վինչը իրան ռեմափ ա անում։

Մինչև կա ինչ ռեմափ անել։ Եթե էլ չկա, ու ֆայլային համակարգի մակարդակի վրա ա սխալը, ապա ավելի լավ ա վինչը գցել։

բա ինչի՞ չի գրում։ ոչ սխալ կա, ոչ գրում ա։

Մի հատ էլ գրեցի՝

# dd if=/dev/zero of=/dev/sdb seek=464648040 bs=512 count=8

dd: writing `/dev/sdb’: Input/output error

1+0 records in

0+0 records out

0 bytes (0 B) copied, 2.45075 s, 0.0 kB/s

Մտածեցի, հիմա ի՞նչ անեմ։ Ոչ սխալ սեկտոր չկա բայց չի գրում։

Ախր եթե սխալ սեկտոր ա, պիտի ռեմափ անի։

Կարելի էր իհարկե ext ֆս ստեղծել -c-ով որ չեք ֆոր բադ բլոքս անի։

Բայց էդ կլիներ ֆս-ի մակարդակի վրա։ Իսկ եթե smart-ը ցույց չի տալիս reallocated sectors ապա ի՞նչ իմաստ ունի -c-ով ֆս ստեղծելը։

Ավելին, ես ուզում եմ xfs քշել։

Որոշեցի անհայտ պատճառով առաջացած սխալ տեղը իզոլացնել։

Հաշվեցի, որ

464648040*512

$ bc

bc 1.06.95

Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.

This is free software with ABSOLUTELY NO WARRANTY.

For details type `warranty’.

464648040*512

237899796480

237899796480/1000000

237899

Ահա, 237-երրորդ գիգաբայթի վրա էր սխալը։

Իզոլացրեցի, ստեղծեցի 236-ից 238գբ, 2գբ-ոց բաժին։

սկսեցի լցնել այն զրոներով։

# dd if=/dev/zero of=/dev/sdb2

dd: writing to `/dev/sdb2′: No space left on device

3903796+0 records in

3903795+0 records out

1998743040 bytes (2.0 GB) copied, 84.1689 s, 23.7 MB/s

quit

$

գրե՞ց

բա նոր չեիր գրում։

հիմա կրկին գրեմ էն չգրվող տեղը։

# dd if=/dev/zero of=/dev/sdb seek=464648040 bs=512 count=8

8+0 records in

8+0 records out

4096 bytes (4.1 kB) copied, 0.0557051 s, 73.5 kB/s

գրում ա

հմմմ։

կրկին սմարտ։

smartctl -a /dev/sdb

Ահա, գտնվեց։

5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always – 1

Մի հատ ռեմափ արեց։

Հրաշալի ա։

Բա ինչի՞ էր պահանջվում էդպիսի մասսիվ դդ որ ինքը ռեմափ անի։

Գուցե նրանից որ usb-ով ա կպած։

Էդ չգիտեմ ես։

ու տենց

պիտակներ՝ ԳՆՈՒ/Լինուքս  դդ  կոշտ սկավառակ  Հանս Ռայզր  հետազօտութիւն  տեքնոլոգիաներ  տեղեկատուական տեքնոլոգիաներ  տեստդիսկ