Чому ви можете використовувати комп'ютер на базі Linux або компакт-диск Linux Live для відновлення даних, які Windows не зміг?
Сьогоднішня сесія запитань і відповідей надійшла до нас люб’язно від SuperUser - підрозділу Stack Exchange, угруповання веб-сайтів із питань та відповідей на основі спільноти.
Питання
Читач SuperUser Філіп Олгаєр хоче знати, чому він зміг відновити дані за допомогою компакт-диска Linux Live, який, як повідомляється, не підлягає відновленню в Windows:
Передумови: Раніше цього року у мене була проблема з SSD-накопичувачем, який Windows більше не розпізнавала б. Але врешті-решт завантажувальний Parted Magic 2012-10-10 зробив свою справу. Дивіться це вирішена нитка . З того моменту мене застрягло одне питання ...
Питання: Я усвідомлюю, що Linux, як правило, трохи більш технічний і необроблений, але чи може хтось приблизно описати, чому система Linux (або насправді лише ця конкретна, оскільки Ubuntu не зробила трюк) здатна все ще мати доступ до / спілкуватися з половиною -пошкоджений пристрій, коли Windows ні?
-
Вони просто ігнорують будь-які потенційні показники того, що щось може бути не так?
-
Чи є взагалі якісь конкретні причини?
-
Чи просто пощастило, що саме це середовище змогло змусити SSD відповісти хоча б на обмежений час?
Хоча це, безумовно, могла бути удача, але тут, мабуть, є не одне з кількох факторів. Давайте розслідуємо.
Відповідь
Співробітник SuperUser Eike пропонує кілька можливих пояснень, крім удачі, щодо його здатності зберігати дані:
Зазвичай це зводиться до того, до чого саме здійснюється доступ і як саме пристрій виходить з ладу. Наприклад, якщо відповідний твердотільний накопичувач не може отримати, скажімо, сектор 5 і почне зупинятися, як тільки щось прочитає сектор 5, різниця може бути просто в тому, що різні системи автоматично отримують доступ, коли вони розпізнають новий диск.
Коли Windows виявить новий диск, він прочитає таблицю розділів і автоматично спробує відкрити будь-які файлові системи, які він вміє читати. Якщо будь-яка з конструкцій / блоків, які зчитуються під час цього процесу “монтування”, викликає ваш несправний SSD на прощання, різниця з цим конкретним дистрибутивом Linux полягає лише в тому, що він може не автоматично монтувати всі розглянуті розділи, а може, під час монтажу просто читайте іншу підмножину секторів (реалізація NTFS в Linux сильно відрізняється від тієї в Windows - хоча формат на диску однаковий, від ОС залежить, які структури вона вважає необхідними для читання. Windows може читати вторинні копії MFT, або може почати попередньо кешувати деякі дані, і це може бути різницею. Ubuntu перебуває в подібному кораблі - він не спрямований на відновлення нестандартно, він намагатиметься змонтувати будь-яку знайдену файлову систему на нещодавно виявлених носіях інформації автоматично. Саме з цієї причини спеціалізовані дистрибутиви, спрямовані на відновлення, є кращим вибором, оскільки вони роблять лише те, що ви прямо просите їх, на відміну від того, щоб робити речі автоматично.
Звичайно, можливо, вам теж просто пощастило. Я недостатньо знаю про режим відмови SSD, щоб сказати.
Linux, як правило, не ігнорує показники того, що щось не так. Він отримає ті самі помилки SCSI від набору мікросхем SATA, що і Windows - якщо ви подивитеся на журнал ядра, на несправному диску ви побачите багато повідомлень про помилки. Що буде далі, залежить від того, які програми фактично отримують доступ до диска. Якщо це програмне забезпечення, орієнтоване на відновлення, воно може спробувати перечитати той самий сектор обмежену кількість разів, воно може пропустити його і т. Д. Зазвичай найкращим варіантом є отримання зображення накопичувача з якомога більшою кількістю читаних секторів, і потім спробуйте відновити дані з цього зображення (робити будь-який аналіз безпосередньо на накопичувачі - це погана ідея, як правило, оскільки його стан може погіршитися, і те, що ви змогли щось прочитати один раз, це не означає, що ви зможете прочитати це знову .)
Співавтор AthonSfere пропонує ще одне рішення:
Багато з того, як середовище обробляє файлову систему, а також списки контролю доступу або жорсткий диск.
Windows збирається зробити все, що в її силах, щоб підкорятися своїм ACL і секторам, позначеним як погані або порожні. Отже, розділи NTFS або Fat, створені та підтримувані в Windows, а також MBR Windows, будуть оброблятися Windows, як Windows це позначило.
Крім того, якщо накопичувач виходить з ладу, чим більше ви його використовуєте, тим більша ймовірність зіткнутися з основною проблемою, і навколишнє середовище вийде з ладу. Потім, як ОС обробляє те, що вступає в дію, Windows буде BSOD або перезавантажуватись, процес завантаження Windows буде видавати повідомлення MBR, повідомлення про відсутні файли (NTDLR.dll відсутній або пошкоджений) і зупинятиметься, оскільки ці погані файли потрібні.
Коли ви використовуєте живий диск, ви ні на що з цього не покладаєтесь. Поганий MBR обходить, оскільки ви завантажуєтеся з диска. Поганий сектор, який пошкодив NTDLR.dll, не потрібен. Все на диску. Потім можна спробувати прочитати. Якщо він зустрічає «порожній» сектор або поганий біт, це середовище обробляє його, проте це було запрограмовано. Ubuntu, швидше за все, вважатиме за краще підтримувати нормальну поведінку ОС і продовжувати те, що найімовірніше відбуватиметься. Сектор порожній, займіться чимось іншим. Цей сектор поганий, тримайся подалі, не читай знову, не пиши, або це спричинить проблеми.
Однак платформа відновлення захоче прочитати всі дані. Маркери файлів говорять, що файл має бути на 0,5, 13 .... якщо звіти 13 файлової системи відсутні, ігноруйте порожній заголовок і все одно прочитайте файл, або прочитайте якнайкраще дефектний сектор і спробуйте відновити.
Крім того, Windows МОЖЕ зробити багато цього зі сторонніми програмами, Recuva може знайти багато цих "відсутніх" файлів, для одного. Але ви не хочете перебувати в середовищі, яке може записати назад на диск і спричинити справжню постійну втрату.
Я справді спростив це і додав певне тлумачення, але воно повинно заповнити деякі пропуски для того, про що ви просите.
Є що додати до пояснення? Звук у коментарях. Хочете прочитати більше відповідей від інших досвідчених користувачів Stack Exchange? Ознайомтесь із повним обговоренням тут .
http://superuser.com/questions/586666/why-can-linux-systems-sometime-recover-data-windows-cant-any-concrete-reasons