31Jul

Vai dati par cietajiem diskiem var pazemināties bez brīdinājuma par zaudējumiem?

Mēs visi esam noraizējušies par to, ka mūsu dati un faili tiek saglabāti droši un neskarti, bet vai ir iespējams, ka dati tiek bojāti, un lietotājs to var piekļūt, neinformējot par jebkuru problēmu?Šodienas SuperUser Q & amai ir atbilde uz satraucošā lasītāja jautājumu.

šodienas jautājums &Atbildes sesija mums priecājas par SuperUser - Stack Exchange, kas ir kopienas un Q & A tīmekļa vietņu grupa.

Foto pieklājīgi no vispārināšanas( Flickr).

Jautājums

SuperUser lasītājs topo morto vēlas zināt, vai dati uz cietajiem diskiem var pazemināties un piekļūt bez brīdinājuma par kaitējumu:

Vai ir iespējams, ka cietā diska fiziska noārdīšanās var izraisīt bitus, kas "pārslēdzas" faila saturābez operētājsistēmas novērojot izmaiņas un paziņojot par to lietotāju, lasot failu? Piemēram, vai "p"( binārais 01110000) ASCII teksta failā varētu mainīties uz "q"( bināro 01110001), tad, kad lietotājs atver failu, viņi redz "q", nezinot, ka ir noticis neveiksmes?

Mani interesē atbildes, kas saistītas ar FAT, NTFS vai ReFS( ja tas mainās).Es gribu zināt, vai operētājsistēmas aizsargā lietotājus no tā, vai arī mums ir jāpārbauda mūsu dati par atšķirībām starp kopijām laika gaitā.

Vai dati par cietajiem diskiem var pazemināties un piekļūt bez brīdinājuma par bojājumiem?

Atbilde

SuperUser atbalstītājam Guntramam Blohm mums ir atbilde:

Jā, ir kaut kas sauc par mazu puvi. Bet nē, tas neietekmēs lietotāju nepamanīti.

Kad cietais disks ieraksta šķīvju sektoru, tas ne tikai rakstīt bitus tādā pašā veidā, kā tos uzglabā RAM, bet arī izmanto kodējumu, lai pārliecinātos, ka nav tādu pašu bitu secību, kas ir pārāk garš.Tas arī papildina ECC kodus, kas ļauj novērst kļūdas, kas ietekmē dažus bitus, un konstatēt kļūdas, kas ietekmē vairāk nekā pāris bitus.

Kad cietais disks nolasa sektoru, tas pārbauda šos ECC kodus un vajadzības gadījumā labo datus( un, ja iespējams,).Kas notiks tālāk, atkarīgs no cietā diska programmaparatūras un apstākļiem, ko ietekmē diska apzīmējums.

  • Ja nozari var lasīt un tam trūkst ECC koda problēmu, tas tiek nodots operētājsistēmai.
  • Ja nozari var viegli salabot, laboto versiju var ierakstīt uz diska, nolasīt atpakaļ, pēc tam pārbaudīt, lai noteiktu, vai kļūda bija nejauša( ti, kosmiskās stari uc) vai ja pastāv multimediju sistemātiska kļūda.
  • Ja cietais disks nosaka, ka ir radusies multivides kļūda, tā atkārtoti piešķir nozari.
  • Ja pēc dažiem mēģinājumiem lasīt( uz cietā diska, kas tiek apzīmēts kā RAID cietais disks) nozari nevar izlasīt un labot, tad cietais disks atteiksies, pārdalīs nozari un paziņos par to, ka ir bijisproblēma. Tā paļaujas uz RAID kontrolieri, lai rekonstruētu nozari no citiem RAID biedriem un ierakstītu to atpakaļ uz neveiksmīgo cieto disku, kas pēc tam to uzglabā pārdalītā sektorā( tam, cerams, nav problēmu).
  • Ja kādu nozari nevar lasīt vai labot uz darbvirsmas cietā diska, cietais disks vairāk mēģinās to izlasīt. Atkarībā no cietā diska kvalitātes, tas var nozīmēt galvas pārvietošanu, pārbaudot, vai ir biti, kurus atkārtoti nolasīt, pārbaudot, kuri biti ir vājākie, un dažas citas lietas. Ja kāds no šiem mēģinājumiem izdosies, cietais disks pārdalīs sektoru un uzraksta atpakaļ labotos datus.

Šī ir viena no galvenajām atšķirībām starp cietajiem diskiem, ko pārdod kā "desktop", "NAS / RAID" vai "video novērošanas" cietos diskus. RAID cietais disks var vienkārši atmest ātri un padarīt kontrolieri remontu nozarē, lai izvairītos no latentuma lietotāja pusē.Darbvirsmas cietais disks turpinās mēģināt atkal un atkal, jo lietotājam jāgaida dažas sekundes, iespējams, ir labāk, nekā pateikt, ka dati tiek zaudēti. Un video cietā diska vērtības nemainīgas datu pārraides ātrums pārsniedz kļūdu atgūšanu, jo bojāts kadrs parasti netiks pamanīts.

Jebkurā gadījumā cietais disks zinās, vai ir bijuši bojājumi, parasti no tā atgūsies, un, ja tas nebūs iespējams, tas pateiks kontrolierim, kas savukārt pateiks draiveri, kas tad pateiks operētājsistēmu. Tad operētājsistēmas lietotājs uzrāda kļūdu lietotājam un rīkojas ar to. Tāpēc Cybernard saka:

  • Man nekad nav bijis nekādas kļūdas kļūdas, bet esmu redzējis daudz cieto disku, kurā visu nozaru neizdevās.

Cietais disks zinās, vai nozarē ir kaut kas nepareizs, bet nezināt, kuri biti nav izdevies. Viens bits, kuram nav izdevies, vienmēr tiks pakļauts ECC.

Lūdzu, ņemiet vērā, ka chkdsk un failu sistēmas, kas automātiski tiek labotas, failos neattiecas uz remonta datiem. Tie ir vērsti uz korupciju pašas faila sistēmas struktūrā, piemēram, faila izmēru atšķirība starp direktorijas ierakstu un piešķirto bloku skaitu. NTFS pašattīrīšanās funkcija atklās strukturālos bojājumus un novērš to, ka tā turpmāk ietekmēs jūsu datus, taču tas neatjaunos nekādus jau bojātus datus.

Protams, ir citi iemesli, kāpēc dati var tikt bojāti. Piemēram, sliktā RAM uz vadības pults var mainīt datus, pirms tas tiek nosūtīts uz cieto disku. Tādā gadījumā neviens cietā diska mehānisms nekontrolē un neizlabo datus, un tas var būt viens no iemesliem, kāpēc faila sistēmas struktūra ir bojāta. Citi iemesli ir arī programmatūras kļūdas, strāvas padeves pārtraukumi, rakstot uz cieto disku( lai gan to risina ar failu sistēmu žurnālu) vai slikti failu sistēmas draiveri( Linux NTFS draiveris uz ilgu laiku noklusējusi tikai lasāmu, jo NTFS tika rekonstruēta,nav dokumentēti, un izstrādātāji neuzticēja savam kodam).

  • man bija šis scenārijs vienreiz, kad lietojumprogramma visus savus failus saglabātu divos dažādos serveros divos dažādos datu centros, lai jebkurā gadījumā saglabātu pieejamo datu darba kopiju. Pēc pāris mēnešiem mēs pamanījām, ka apmēram 0,1 procenti no visiem nokopētajiem failiem neatbilst MD5 pārbaudes summai, ko tā saglabā savā datubāzē.Tas izrādījās kļūdains šķiedras kabelis starp serveri un SAN.

Šie citi iemesli ir tādēļ, ka dažas failu sistēmas, piemēram, ZFS, saglabā papildu informāciju par čeku summu, lai atklātu kļūdas. Tās ir paredzētas, lai pasargātu jūs no daudz vairāk lietām, kas var kļūt nepareizas, kā tikai mazliet puvi.

Vai kaut ko pievienot paskaidrojumam? Skatieties komentāros. Vēlaties lasīt citas atbildes no citiem tehnoloģiju savvy Stack Exchange lietotājiem?Šeit skatiet pilnu diskusiju pavedienu.