Waarom kunnen Linux-systemen soms gegevens herstellen Windows niet?
Waarom is het dat je een Linux-gebaseerde computer of Linux Live-CD kunt gebruiken om gegevens te herstellen die Windows niet had??
De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een gemeenschapsgedreven groep van Q & A-websites.
De vraag
SuperUser-lezer Philip Allgaier wil weten waarom hij gegevens kon herstellen met een Linux Live-CD die in Windows als onhaalbaar werd gerapporteerd:
Achtergrond: Eerder dit jaar had ik een probleem met een SSD-schijf die Windows zou herkennen. Maar uiteindelijk deed een opstartbare Parted Magic 2012-10-10 het goed. Zie deze opgeloste thread. Eén vraag bleef vanaf dat moment bij me ...
Vraag: Ik ben me ervan bewust dat Linux over het algemeen wat technischer en rauwer is, maar kan iemand grofweg schetsen waarom een Linux-systeem (of eigenlijk alleen dat ene, omdat Ubuntu het niet heeft gedaan) nog steeds toegang heeft tot / communiceert met een helft -corrupted device wanneer Windows dat niet is?
-
Negeren ze alle mogelijke indicatoren dat er iets niet klopt?
-
Zijn er concrete redenen??
-
Was het maar een geluk dat deze specifieke omgeving in staat was om de SSD te laten reageren, al was het maar voor een beperkte tijd?
Hoewel het zeker geluk zou kunnen zijn, zijn er waarschijnlijk meer dan een paar factoren in het spel. Laten we het onderzoeken.
Het antwoord
Bijdrager van SuperUser Eike biedt enkele mogelijke verklaringen, meer dan alleen geluk, voor zijn vermogen om de gegevens te bewaren:
Meestal komt dit neer op wat precies wordt gebruikt en hoe het apparaat precies faalt. Als de betreffende SSD bijvoorbeeld sector 5 niet kan ophalen en begint te stoppen zodra iets sector 5 leest, kan het verschil eenvoudigweg te wijten zijn aan wat verschillende systemen automatisch benaderen zodra ze een nieuwe schijf herkennen.
Wanneer Windows een nieuwe schijf detecteert, zal het de partitietabel lezen en automatisch proberen om bestandssystemen die het kent te openen. Als een van de structuren / blokken die tijdens dit "montage" -proces worden gelezen, ertoe leidt dat uw defecte SSD vaarwel wordt, is het verschil met die specifieke linux-distributie eenvoudig dat niet alle partities in kwestie automatisch kunnen worden gemount, of tijdens het installeren, lees gewoon een andere subset van sectoren (de implementatie van NTFS in Linux is heel anders dan die in Windows - terwijl het schijfformaat hetzelfde is, is het aan het besturingssysteem welke structuren het nodig acht om te lezen. Windows kan secundaire kopieën van de MFT lezen, of het kan sommige gegevens beginnen te benaderen en dat kan het verschil zijn. Ubuntu bevindt zich in een vergelijkbare boot - het is niet gericht op herstel uit de doos, het zal proberen elk bestandssysteem dat het vindt te mounten op nieuw ontdekte media, automatisch. Het is om deze reden dat gespecialiseerde distributies gericht op herstel een betere gok zijn, omdat ze alleen doen wat je expliciet vraagt, in tegenstelling tot dingen automatisch doen.
Natuurlijk heb je ook gewoon geluk gehad. Ik weet niet genoeg over de faalmodus van de SSD om te zeggen.
Linux negeert over het algemeen indicatoren niet dat er iets mis is. Het zal dezelfde SCSI-fouten van de SATA-chipset ontvangen als Windows - als je naar het kernellog kijkt, zie je op een defecte schijf veel foutmeldingen. Het hangt ervan af welke programma's actuallly toegang tot de schijf krijgen wat er vervolgens zal gebeuren. Als het software is die gericht is op herstel, kan het proberen om dezelfde sector een beperkt aantal keren te herlezen, het kan het overslaan, etc. Meestal is de beste gok om een afbeelding van de schijf te krijgen met zoveel mogelijk sectoren zo schoon mogelijk te lezen, en probeer vervolgens uw gegevens uit die afbeelding te herstellen (het is een slecht idee om een analyse rechtstreeks op de schijf uit te voeren, meestal omdat de conditie ervan mogelijk verslechtert en omdat u eenmaal in staat was om iets te lezen, betekent dit niet dat u het opnieuw kunt lezen .)
Collega-medewerker AthonSfere, biedt een andere kijk op dingen:
Veel van de manier waarop de omgeving omgaat met het bestandssysteem en de ACL's of de harde schijf.
Windows doet er alles aan om zijn ACL's en sectoren die als slecht of leeg zijn gemarkeerd, te gehoorzamen. NTFS- of Fat-partities die in Windows worden gemaakt en onderhouden, en Windows MBR's worden dus door Windows behandeld terwijl Windows dit heeft gemarkeerd.
En als de schijf kapot gaat, hoe meer u hem gebruikt, hoe waarschijnlijker het is om een groot probleem tegen te komen en de omgeving zal crashen. Vervolgens hoe het OS omgaat dat in het spel komt, Windows BSOD of reboot, het Windows bootproces MBR-berichten zal gooien, ontbrekende bestandsberichten (NTDLR.dll ontbreekt of corrupt is) en stopt, omdat deze slechte bestanden vereist zijn.
Wanneer u een live-schijf gebruikt, vertrouwt u hier niet op. Een slechte MBR wordt overbrugd omdat u van de schijf opstart. Een slechte sector die de NTDLR.dll heeft beschadigd, is niet nodig. Alles staat op de schijf. U kunt dan proberen te lezen. Als het een 'lege' sector of een slecht bit tegenkomt, handelt die omgeving het af zoals het was geprogrammeerd om te doen. Ubuntu houdt waarschijnlijk liever het normale besturingssysteemgedrag bij en gaat door met wat waarschijnlijk zal gebeuren. De sector is leeg, doe iets anders. Die sector is slecht, blijf weg, lees niet opnieuw, schrijf niet of het zal problemen veroorzaken.
Een herstelplatform zal echter alle gegevens willen lezen. De bestandsmarkeringen zeggen dat het bestand op 0,5, 13 ... moet staan. als de bestandsinformatierapporten 13 ontbreken, negeer dan de lege kop en lees het bestand toch, of lees de slechte sector zo goed mogelijk en probeer te herstellen.
Ook Windows CAN kan hier veel mee doen met applicaties van derden, Recuva kan een groot aantal van deze "ontbrekende" bestanden vinden. Maar u wilt niet in een omgeving zijn die mogelijk naar de schijf terugschrijft en echt permanent verlies veroorzaakt.
Ik heb dit vereenvoudigd en wat interpretatie toegevoegd, maar het moet wat lege plekken invullen voor wat je vraagt.
Heb je iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread.
http://superuser.com/questions/586666/why-can-linux-systems-sometime-recover-data-windows-cant-any-concrete-reasons