Тема: Відновлення даних покрокова інструкція

Доброго вечора чи дня, шановне товариство Українських програмістів!
Маю для Вас корисний матеріал, котрий добре було б закріпити, адже знадобитися він може кожному.
Матеріал "Як відновити дані з диску, на якому є мертві сектори".
Прошу перенести його у відповідний розділ (такого на Вашому форумі не знайшов).
Передмова. У мене був зовнішній диск Seagate Barracuda 1 TB. І я його не навмисно скинув зі столу під час роботи.
Я його вставив через USB  в комп'ютер і спробував прочитати. Мені відобразився головний каталог диску, але прочитати будь-які файли я не зміг.
Я хотів спочатку його сканувати через Windows, але Windows звертається до поганих секторів і диск записає аж до вимкнення живлення.
Я зрозумів, що мені потрібні системи, які не зачіпають під час завантаження та роботи збійні сектори.
Я вийняв диск з лотка і вставив в комп'ютерний блок.
Я його просканував за допомогою програми MHDD з під MS-DOS та виявив, що сектори 200 млн - 1700 млн є повністю здоровими. Попадалися, щоправда, поодинокі мертві сектори по кілька мільйонів кілька разів.
Далі був куплений диск "Western Digital Purple 1 TB" і я намагався скопіювати посекторно на нього робочі сектори. Це було необхідно, бо на неробочих секторах він зависав до вимкнення комп'ютера , під час сканування програмами для відновлення даних. За допомогою програми CopyR DMA, я скопіював 200-256 млн LBA. Більше я не зміг, бо ця програма не бачить дані більше, ніж 128 Гб (256 мільйонів LBA). Точно не пам'ятаю, чи 256 чи 265.
Я шукав інші програми для DOS але я їх не знайшов. Знаходив тільки програми для Windows/Linux, а ці системи під час запуску звертаються до диска і він зависає.
І от, нарешті, через 2 місяці я осмілився і звернувся на Кіберфорум (російський форум програмістів), на якому мені кілька добрих людей порекомендували для цього програму DMDE, яка працює з під DOS і підтримує великі нові диски. В ній можна вибирати межі копіювання, вона працює на низькому рівні і призначена в тому числі для копіювання битих секторів.
Одразу після цього, я завантажив цю програму та розпакував її на флешку, на якій вже був MS-DOS, створений за допомогою rufus.  Я завантажився з флешки і спробував посекторно скопіювати дані з одного диска на інший. Все йшло не дуже гладно в перші 30 хвилин роботи, але згодом я розібрався і все пішло краще, ніж ніж по маслу.
В результаті я відновив всі дані, крім 70 Гб з диску! Тому сьогодні у мене свято.
Але я дуже хотів би поділитися всім, що знаю я, аби Ви не наступали на ті ж граблі. Я хочу розказати всі моменти і дрібниці.
1. Завантаження MHDD. Можливо, я щось не вмію, але з офіційного сайту програма MHDD не захотіла записуватися на флешку через неспівпадіння контрольною суми. Це нова версія. Тому я брав її з диска "Reanimator EE" 2008 року (стару версію). Я з нею працював завжди. Диск був записаний дуже давно, ще коли в мене не було комп'ютера і не мною. Звідки він взятий, я не знаю.
Чому саме MHDD? Цю програму рекомендують. Вона працює краще, ніж Вікторія. команди вводяться в більшості від руки, що запобігає зламу диску. У ній трохи інші алгоритми. А іще я її використовував для лікування дисків досить давно. Саме для Remap/Write, але не для відновлення даних...
Важливий момент - не натискайте кнопки вверх-вниз, вліво-вправо під час сканування, ці кнопки управляють початком LBA, з якого наразі йде сканування. Проблема у тому, що переході до іншого LBA навіть на здоровому диску відображаються суттєві затримки, тому Ви не зможете нормально визначити ступінь якості сектору, на який Ви перескочили!
Другий важливий момент - не чекайте, доки перескануються всі погані сектори! Якщо їх один мільйон, а кожен по 1 секунді, то Вам доведеться чекати мільйон секунд. І ні в якому разі не намагайтеся після знаходження поганого сектора перервати операцію, бо диск після цього вже буде показувати більшість секторів (навіть здорові) неправильними. Аж до вимкнення живлення на диску (або після кількох вимкнень)! Можливі зависання. Тому, як тільки це сталося, подивіться на LBA, котрий збійний, вимкніть комп'ютер одним натисканням на кнопку вимкнення та ввімкніть знову. Увійдіть в MHDD та виберіть початковий сектор на 100 мільйонів більший від того, що збійний. Або хоча б на 10 мільйонів. Якщо сканування пішло успішне, перервіть сканування і почніть з на 50 мільйонів більшого сектора від не робочого. Потім знову діліть це значення на 2 і так дійдете до здорового сектора. Потім знову вимкніть і ввімкніть комп і почніть сканування зі здорового. На все це може піти більше 48 годин.
Ні в якому разі не перезавантажуйте комп'ютер кнопкою скидання, оскільки живлення диску ввімкнене і фіксація головки не здійснена, працювати він буде так само погано аж до вимкнення живлення. Іноді, ввімкнути живлення треба кілька разів. Якщо цього не достатньо, залиште диск на потім. Симптомом цього, що це недостатньо, є горіння червоної лампочки на Вашому компі під час його ввімкнення, яке не припиняється тривалий час.
Таймер очікування в програмі MHDD, яка в мене була, 240 секунд. Рекомендую зменшити цей таймер, аби пришвидшити видачу результату. Адже сектор, котрий понад 1 секунду не читається, відновлювати важко і скоріше не треба. Навіть по 1 секунді, мільйон несправних секторів читатиметься мільйон секунд, не говорячи по 240 секунд!
Також, можливе і таке, що сектори будуть змінюватися на погані або хороші після перезавантаження. Не хвилюйтесь, у мене теж таке є, що пару мільйонів секторів через кілька перезавантажень відображаються здоровими.
Ні в якому разі не вмикайте Remap/Write під час сканування.
Отже, головне:
поставте таймер максимального таймауту на 1 секунду
не робіть Remap/Write.
вимикайте комп кнопкою та вмикайте знову, після чого додавайте до збитого сектора якесь значення (хоча б 10 мільйонів), після чого у випадку успішного сканування діліть на 2. І знову додавайте до збитого, таким чином визначаючи макисмальний збитий сектор. Точності більше, ніж 5 мільйонів не потрібно, якщо на диску не дуже важливі дані.
Не натискайте кнопку скидання, оскільки диск залишається незафіксованим з неочищеним буфером.
Вам потрібно записати все сканування на папірець, саме на папірець щоб завжди мати при собі навіть коли батарея телефону сяде чи злетить диск компа чи ще щось.
Бажано скласти графік по осі Х для того, щоб розуміти, де розташовані несправні сектори. А також графік розміру (1 гігабайт = приблизно 2 мільйони LBA). Це допоможе візуально розуміти проблему.
Я буду старатися оновлювати це, коли згадаю ще щось.
2. Купівля нового диску.
Новий диск може бути якого завгодно розміру, але бажано, щоб він був більший або співпадав з розміром несправного диску. Мається на увазі розмір в гігабайтах. Меншим його можна купувати тільки тоді, якщо Ви точно впевнені, що фрагменти файлів не лежать в кінці диску, а також що куплений Вами диск може вмістити всі дані поламаного диску. Ви зрозуміли.
Я купив 1 терабайт якраз із системи відеоспостереження і на ньому виявилися 10 кандидатів в bad. Не треба наступати на ті ж граблі.
Диск можна купувати навіть не новий, головне щоб у нього не була велика кількість переназначених секторів в SMART (велика = більше 300) і бажано, щоб він до цього не стояв на камерах відеоспостереження в Європі. Тобто, треба купувати БУ диск з комп'ютера, в який він був вбудований і цей комп'ютер мав якусь гарантію. Наприклад, власник купив новий а цей продає на деталі. А ще бажано, щоб на цьому диску не грали в ігри. Головне - бачити скан поверхні і SMART.
В дисків з Європи він може бути очищеним. І ще треба новий диск обов'язково просканувати. Бо якщо буде так, що одна множина несправних секторів накладеться на іншу, то даних втратиться більше.
Якщо диск розміром більше 1 терабайта, то його буде складно сканувати в MHDD (хоч поламаний хоч новий), оскільки він не може сканувати більше, ніж 1953 мільйони секторів, відображаючи при цьому правдивий кінцевий LBA. Чому так, мені не відомо...
Тому, для дисків більше 1 ТБ можна використовувати щось інше, працююче під DOS для несправного диска і працююче будь-де для нового.
3. Створення завантажувальної флешки. Найпростіше це робити за допомогою rufus під Windows, їй немає кращи аналогів ніде, ні під якою ОС. В неї вбудовані дані для створення завантажувального диска MS-DOS/Free DOS. Просто MS-DOS є неліцензійним, якщо у Вас немає ліцензії на Windows, тому рекомендують завантажувати Free DOS власники сайтів та блогів, аби не спокушати людей порушувати авторське право. Для нас це фігня, а от їх сайти можуть забанити. Краще вантажитись з MS-DOS.
4. Коміювання DMDE. Він має бути скачаний з офіційного сайту. Його треба розпакувати в корінь флешки, але папка має знаходитися у цьому корні (а не самі файли). І перейменувати на якесь коротке ім'я папку, наприклад DM чи просто D. Краще всього на 1, бо входити у цю папку треба буде багато разів.
А ще краще створити в AUTOEXEC.BAT внизу стрічку "1\dmde.exe", щоб запускати її разом з DOS.
5. Завантаження. Потрібно під час завантаження вибрати анлгійську локаль в меню. Вибор російської локалі начебто ні на що не діє, але у мене є поганий досвід щодо виставлення іншомовної локалі в DOS... Може статися "адакадабра", а іще гірше неправильна робота з диском. Тому, не рекомендую ризикувати.
6. Робота з програмою. Треба вибрати російську мову (бажано).
Вам висвітить меню дії. Ні в якому разі не треба вибирати що-небудь інше, окрім пункту "клонирование".
Далі треба вибрати той диск, з якого копіюється і той, на який копіюється. Файл вибирати не треба. Лог не бажано, бі він може займати багато.
Переплутувати диски не можна! 0х80 це диск в першому сата порті, 0х81 в другому і так далі. Вони написані на платі. У мене була флешка, тому диск перший у мене змістився до 0х81, а другий до 0х82 відповідно.
Після переконання (краще тричі перезавантажитись, ніж накрити дані навіки), що все правильно, треба ввести в поле Мінімальний сектор той сектор, на якому немає збоїв, а в поле максимального - максимальний, на якому немає збоїв, але після нього вони починаються. В поле мінімального сектору вихідного диску введіть мінімальний сектор, який Ви ввели в поле мінімального сектору поламаного диску. Щоб не було здвигу.
Якщо буде помилка, додавайте значення кілька мільйонів, вимикайте компа і вмикайте знову (але не натискайте сброс). І отак, кусочками у Вас має зібратися диск. Коли великі кусочки готові, починайте копіювати збійне, чим більше тим краще. Врешті-решт, у Вас має вийти неповний посекторний клон зламаного диска.
7. Цей клон варто прогнати через MHDD, щоб ще раз переконатися, що все нормально і що немає програмних збійних секторів.
8. Не в залежності від того, чи все нормально, чи не нормально, якщо перших 500 мб клона робочі (приблизний розмір службового розділу Windows, якщо він є куди він постійно звертається), тоді вставляйте цей диск сміло хоч в Windows/Linux/DOS і будь-якою програмою (крек чи безкоштовна) пробуйте сканувати диск на "видалені файли" і відновлюйте все, що зможете!
Я не сподівався, але навіть помічені MHDD сектори як не робочі, виявилися робочими і я відновив майже весь диск, крім перших 67 Гб та ще деяких одиночних несправних Гб та мб, розкиданих по диску (разом 70 Гб накрилося). Я дуже радий і у мене сьогодні велике свято.
Сподіваюся, я розписав все. Якщо щось пішло не так, питайте у цій темі, я Вам розповім.
Також, у цій темі можуть бути помилки. Якщо Ви їх помітили, відпишіть.