Начална » как да » Защо понякога Linux системи могат да възстановяват данни Windows Не може?

    Защо понякога Linux системи могат да възстановяват данни Windows Не може?


    Защо е възможно да използвате Linux-базиран компютър или Linux Live CD за възстановяване на данни, които Windows не може?

    Днешната сесия за въпроси и отговори идва при нас с любезното съдействие на SuperUser - подразделение на Stack Exchange, групирано от общността уеб сайтове за въпроси и отговори.

    Въпроса

    Читателят на суперпотребителя Филип Аллгайър иска да разбере защо е успял да възстанови данни с Linux Live CD, за който в Windows се съобщава за невъзстановим:

    Заден план: По-рано тази година имах проблем с SSD диск, който Windows вече би разпознал. Но в крайна сметка стартиращият Parted Magic 2012-10-10 свърши работата. Вижте тази разрешена тема. От този момент до мен стои един въпрос ...

    Въпрос: Наясно съм, че Linux обикновено е малко по-техничен и суров, но може ли някой грубо да очертае защо Linux системата (или всъщност само тази, тъй като Ubuntu не свърши работа) е в състояние все още да има достъп / да комуникира с половината - повредено устройство, когато Windows не е?

    • Дали те просто игнорират всички потенциални индикатори, че нещо може да е погрешно?

    • Има ли някакви конкретни причини?

    • Беше ли само късмет, че тази конкретна среда успя да накара SSD да реагира, само за ограничено време?

    Макар че със сигурност можеше да е късмет, вероятно има много повече от няколко фактора. Нека разследваме.

    Отговорът

    Сътрудникът на SuperUser Eike предлага някои потенциални обяснения, освен просто късмет, за способността му да запазва данните:

    Обикновено това се свежда до това, което точно се осъществява и как точно устройството се проваля. Например, ако въпросният SSD не е в състояние да извлече, да речем, сектор 5 и да започне да се затваря веднага щом нещо прочете сектор 5, разликата може просто да се дължи на това, което различните системи автоматично получават достъп, след като разпознаят нов диск.

    Когато Windows открие нов диск, той ще прочете таблицата на дяловете и автоматично ще се опита да отвори всяка файлова система, която знае как да чете. Ако някоя от структурите / блоковете, които се четат по време на този "монтиращ" процес, задействат повредения ви SSD, ще се различава от това конкретно Linux дистрибуция, че не може автоматично да монтира всички разглеждани дялове или може, когато монтирате, просто четете различно подмножество от сектори (внедряването на NTFS в Linux е много по-различно от това в Windows - докато форматът на диска е същият, зависи от операционната система кои структури смята за необходими за четене. Windows може да чете второстепенни копия на MFT, или може да започне да проповядва някои данни и това може да е разликата. Ubuntu е в подобна лодка - не е насочена към възстановяване извън полето, ще се опита да монтира всяка файлова система, която открие за новооткритите медии автоматично. Поради тази причина специализираните дистрибуции, насочени към възстановяване, са по-добър залог, тъй като те правят само това, което изрично поискате от тях, вместо автоматично.

    Разбира се, може би просто сте имали късмет. Не знам достатъчно за режима на повреда на SSD, за да го кажа.

    Linux обикновено не пренебрегва индикатори, че нещо не е наред. Тя ще получи същите SCSI грешки от SATA чипсета, както ще види Windows - ако погледнете в дневника на ядрото, на дефектен диск ще видите много съобщения за грешки. Зависи от това какви програми ще имат достъп до диска, какво ще се случи след това. Ако софтуерът е насочен към възстановяване, той може да се опита да препрочете същия сектор ограничен брой пъти, може да го пропусне и т.н. Обикновено най-добре е да се получи изображение на устройството с възможно най-много сектори, и след това се опитайте да възстановите данните си от това изображение (правенето на какъвто и да е анализ директно на устройството е лоша идея, тъй като състоянието му може да се влоши и само защото сте успели да прочетете нещо веднъж, това не означава, че ще можете да я прочетете отново .)

    Сътрудник-сътрудник AthonSfere, предлага друго поемане на нещата:

    Голяма част от това е начинът, по който средата обработва файловата система, както и ACL или твърдия диск.

    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