Czy jest prawdopodobne, że fizyczna degradacja dysku twardego może spowodować „odwrócenie” bitów w zawartości pliku bez zauważenia przez system operacyjny i poinformowania go o tym podczas czytania pliku? np. czy „p” w pliku tekstowym ASCII (binarny 0111000 0 ) może zmienić się na „q” (0111000 1 ), a następnie użytkownik (ja) może otworzyć plik i zobaczyć „q”, nie wiedząc, że wystąpił błąd Wystąpił?
Interesują mnie odpowiedzi dotyczące FAT, NTFS lub ReFS ... jeśli to robi różnicę.
Chcę wiedzieć, czy system operacyjny chroni mnie przed tym, czy też powinienem sprawdzać moje dane pod kątem niezmienności między kopiami / w czasie.
windows
hard-drive
filesystems
hardware-failure
data-integrity
topo Przywróć Monikę
źródło
źródło
Odpowiedzi:
Tak , istnieje coś takiego jak zgnilizna bitów.
Ale nie , nie wpłynie to na ciebie niezauważone.
Kiedy dysk zapisuje sektor na talerzach, nie tylko zapisuje bity w taki sam sposób, w jaki są przechowywane w pamięci RAM - używa kodowania, aby upewnić się, że nie ma żadnych sekwencji tego samego bitu, które byłyby zbyt długie i dodaje kody ECC, które pozwalają mu naprawiać błędy, które wpływają na kilka bitów, i wykrywają błędy, które wpływają na więcej niż kilka bitów.
Gdy dysk odczytuje sektor, sprawdza te kody ECC i naprawia dane, jeśli to konieczne i możliwe. To, co stanie się później, zależy od okoliczności i oprogramowania wewnętrznego napędu, na które ma wpływ oznaczenie napędu.
(Jest to jedna z głównych różnic między dyskami sprzedawanymi jako dyski typu „Desktop”, „NAS / RAID” lub „Monitoring wideo”. Dysk RAID może po prostu szybko zrezygnować i sprawić, że kontroler naprawi sektor, aby uniknąć opóźnień na po stronie użytkownika. Dysk stacjonarny będzie ponawiał próbę, ponieważ oczekiwanie użytkownika na kilka sekund jest prawdopodobnie lepsze niż powiadomienie go, że dane zostały utracone. A dysk wideo ceni stałą szybkość przesyłania danych bardziej niż odzyskiwanie po błędzie, ponieważ zwykle uszkodzona rama wygrywa nawet zostać zauważonym.)
W każdym razie, dysk będzie wiedział, czy nastąpiło zgnilizna bitów, zwykle wyzdrowieje z niego, a jeśli nie, powie kontrolerowi, który z kolei poinformuje sterownik, który poinformuje system operacyjny. Następnie do systemu operacyjnego należy przedstawienie tego błędu użytkownikowi i działanie na nim. Właśnie dlatego mówi cybernard
dysk będzie wiedział, że coś jest nie tak z sektorem, ale nie wie, które bity uległy awarii. (Jeden pojedynczy bit, który się nie powiódł, zawsze będzie przechwytywany przez ECC).
Należy pamiętać, że polecenie chkdsk i automatyczna naprawa systemów plików nie dotyczą naprawy danych w plikach. Są one ukierunkowane na uszkodzenie związane ze strukturą systemu plików; na przykład rozmiar pliku różni się między pozycją katalogu a liczbą przydzielonych bloków. Funkcja samonaprawiania NTFS wykryje uszkodzenia strukturalne i zapobiegnie dalszemu wpływowi na twoje dane, nie naprawi już uszkodzonych danych.
Istnieją oczywiście inne powody, dla których dane mogą ulec uszkodzeniu. Na przykład. zła pamięć RAM na kontrolerze może zmienić dane, zanim zostaną nawet przesłane na dysk. W takim przypadku żaden mechanizm na dysku nie wykryje ani nie naprawi danych, co może być jednym z powodów uszkodzenia struktury systemu plików. Inne powody to zwykłe błędy oprogramowania, zanik zasilania podczas zapisywania dysku (chociaż rozwiązuje to problem z księgowaniem systemu plików) lub złe sterowniki systemu plików (sterownik NTFS w systemie Linux przez długi czas domyślnie był tylko do odczytu, ponieważ NTFS został poddany inżynierii wstecznej, nieudokumentowany , a programiści nie ufali własnemu kodowi).
Z tych innych powodów niektóre systemy plików, takie jak ZFS, przechowują dodatkowe informacje o sumach kontrolnych w celu wykrycia błędów. Zostały zaprojektowane tak, aby chronić cię przed znacznie większą liczbą rzeczy, które mogą się nie udać niż tylko zgnilizna.
źródło
Tak, dyski twarde mogą ulegać degradacji bez ostrzeżenia ze strony systemu operacyjnego. To się nazywa bit zgnilizna . Sam nigdy nie widziałem ani jednego błędu, ale widziałem wiele dysków twardych, na których zawiodły całe sektory.
System Windows nie ma wbudowanej ochrony zawartości pliku poza strukturą systemu plików NTFS. Pomyśl o NTFS jak o książce: cóż, chroni tylko spis treści i sprawdza, czy rzeczy pasują do siebie. Jeśli jednak uszkodzenie znajduje się na środku strony, nie zapewnia żadnej ochrony. FAT nie ma nic. Dyski twarde wykorzystują korekcję błędów ECC dla poszczególnych sektorów, ale dysk nie informuje systemu Windows. Niektóre typy plików mają specjalnie skróty CRC, MD5 lub SHA w celu wykrycia uszkodzenia, ale niczego nie naprawiają .
Nawet wtedy skrót informuje tylko o problemie, ale nie wie, gdzie jest błąd.
Dysk twardy ma funkcję SMART, która monitoruje jego stan, ale dopóki dysk nie znajduje się w drzwiach śmierci, system BIOS nie ostrzeże Cię. Co najgorsze, SMART jest często domyślnie wyłączony w systemie BIOS. Możesz monitorować liczby za pomocą oprogramowania, ale różne dyski mają różne problemy. Jeśli masz kilka przeniesionych sektorów lub błędy ECC stale rosną. Jeśli codziennie masz 100 000 nowych ECC, to zły znak.
Wiele typów plików nie ma ochrony przed gniciem bitów . Podobnie jak TXT i BMP, które nie mają żadnej ochrony. Winrar ma opcjonalną opcję dodania danych parzystości do archiwum, co spowoduje powiększenie pliku, ale może wykryć (proporcjonalnie do ilości dodanych danych parzystości) i naprawić tego rodzaju błąd.
Wszystkie inne programy do kompresji, które znam, wykrywają błędy, ale nie są w stanie nic z tym zrobić.
Ostatecznie błędy w sektorze będą tak złe, że ECC nie będzie w stanie go naprawić, a dysk da ci to, co czyta, nawet jeśli jest źle.
Możesz użyć QuickPar lub podobnego narzędzia do tworzenia plików danych parzystości, ale o ile wiem, nie ma sposobu na zautomatyzowanie go. Na przykład faktycznie zmieniasz plik samodzielnie, gdy musisz ręcznie zaktualizować parzystość. Możesz również mieć dane parzystości dla grupy plików, ale zmieniasz 1 plik i cały zestaw parzystości musi zostać odtworzony. To prawdziwy ból głowy dla wszystkich, ale niewielka liczba plików.
źródło
Tak to mozliwe. Windows to tylko oprogramowanie. Oprogramowanie to seria instrukcji dla komputera.
Pomyśl o innym rodzaju serii instrukcji: książce. Co mogą zrobić te instrukcje, jeśli są zapisane w książce stojącej na półce i nikt nie zadaje sobie trudu, aby otworzyć książkę i przeczytać te instrukcje?
Tak jak te pisemne instrukcje wymagają od osoby przeczytania instrukcji i rozpoczęcia jej wykonywania, tak oprogramowanie komputerowe wymaga sprzętu, aby był użyteczny. Nawet jeśli książka zawiera instrukcje, które zostały napisane z niezwykłą dokładnością, nie zapobiegnie to problemom, jeśli ktoś zdecyduje się przeczytać instrukcje, a następnie je źle zastosować. Podobnie, oprogramowanie nie może zapobiec złym działaniom sprzętu. Zepsuty sprzęt może więc fizycznie zatriumfować nad tym, co potrafi każde oprogramowanie, w tym Microsoft Windows.
Teraz ReFS może być zaprojektowany z myślą o tym, że oprogramowanie będzie przechowywać szczegóły dotyczące danych, i aby oprogramowanie mogło później porównać te szczegóły. Prostą koncepcją jest „suma kontrolna”, w której oprogramowanie dodaje określone wartości i upewnia się, że wartości te odpowiadają oczekiwanemu wynikowi. Gdy sprzęt implementuje to oprogramowanie, niektóre złe wyniki mogą zostać wykryte. Może to nawet być wysoce prawdopodobne. Ponieważ jednak liczba potencjalnych problemów, które teoretycznie mogą istnieć, jest zasadniczo liczbą nieskończoną, nie ma gwarancji, że oprogramowanie koniecznie wykryje każdy problem. (Pamiętaj, że oprogramowanie to seria instrukcji, które zostały utworzone wcześniej).
FAT ma szczególnie mało funkcji. FAT12 został zaprojektowany dla dyskietek, a FAT16 dla systemów do 4 GB (chociaż większość implementacji FAT16 Microsoftu zwykle nie działała powyżej 2 GB). Bez rozszerzenia VFAT żaden z nich nie obsługiwał nazw plików dłuższych niż 11 znaków (niektóre z nich byłyby w części zwanej „rozszerzeniem”). FAT został po prostu zaprojektowany do przechowywania danych w czasach, gdy zdolność do przechowywania danych była nowatorską koncepcją, o której dorośli powinni się nauczyć. Kiedy FAT uważano za „wiodącą” technologię, technologia komputerowa nie była jeszcze wystarczająco rozpowszechniona i rozbudowana, aby ludzie martwili się o zaawansowane funkcje.
NTFS dodał obsługę niektórych dodatkowych funkcji, być może przede wszystkim umożliwiających systemowi operacyjnemu łatwe śledzenie uprawnień użytkowników. Istnieją różne wersje NTFS. Na przykład Moab zwraca uwagę, że system Windows Server 2008 dodał obsługę samonaprawiającego się systemu plików NTFS, które mogą wykryć pewne rzeczy. Mimo to ta funkcja była nowa w systemie Windows Server 2008, więc w ogóle nie jest obsługiwana przez system Windows XP (lub Windows Server 2003 lub wcześniejszy). Mimo to, patrząc na listę funkcji, wydaje się, że dotyczyło to niektórych metadanych, które pomagają systemowi zauważać problemy, które są tak poważne, że nie można zamontować dysku, lub inne kluczowe obszary dysku, które wpływają na jądro systemu operacyjnego. Nie wyglądało na to, aby ta pojedyncza funkcja wpływała na każdy fragment danych w każdym pliku.
Oprogramowanie dla takich systemów operacyjnych jest bardzo mało prawdopodobne, aby zauważyć takie rzeczy, chyba że powodują one znaczące problemy w wykonywaniu zadań przez system operacyjny. Mogą istnieć wyjątki, takie jak części systemu operacyjnego sprawdzające dyski (CheckDsk / ChkDsk / ScanDisk / ScanDskW, w zależności od systemu operacyjnego), ale nawet one będą raczej ograniczone w zakresie tego, co mogą wykryć, głównie dlatego, że systemy plików nie przechowuje bardzo dużą ilość danych, które miały być przydatne do sprawdzania dysku.
(RAID5 może być bardziej podatny na wykrywanie takich rzeczy, z każdym bitem parzystości, który pomógłby zauważyć coś niezwykłego. Nawet wtedy implementacja RAID byłaby w stanie sprawdzić, czy problem występuje. Jeśli problem wystąpił część dysku, która nie jest aktywnie przetwarzana, problem może pozostać niezauważony, dopóki ktoś nie zacznie korzystać z tych danych).
W późniejszych czasach większa liczba bitów oznaczała, że małe prawdopodobieństwa, takie jak szanse na „1 na 10 milionów”, miały większy wpływ na różne rzeczy. Opinia publiczna dowiedziała się także o „promieniach kosmicznych”, które mogą mieć niewielki wpływ na rzeczy. Ponieważ bity są tak ciasno wciskane w nowsze urządzenia, fizyczne wymagania do przedstawienia bitu są mniejsze, więc nawet małe uderzenia są bardziej narażone na zakłócenie sposobu rozpoznawania bitu. ReFS ma pewne funkcje zaprojektowane w celu ułatwienia ich wykrywania. Artykuł Wikipedii na temat ReFS nazywa to „automatycznym sprawdzaniem integralności”. Jak to opisano jako godną uwagi cechę tego systemu plików, funkcje te są prawdopodobnie bardziej rozwinięte niż w systemie NTFS (a na pewno więcej niż w FAT, który miał stosunkowo prosty charakter,
źródło