Chciałbym przeprowadzić pełną, fizyczną kontrolę sektor po sektorze na niektórych zewnętrznych dyskach twardych. O ile mi wiadomo, chkdsk
nie zapewnia tej opcji.
Czy istnieje obejście problemu chkdsk
lub dobry zamiennik? Korzystam z systemu Windows 7 na tym komputerze, ale mile widziane są również rozwiązania dla Linuksa z płyty CD na żywo.
Dzięki,
Adam Matan
hard-drive
chkdsk
bad-sectors
Adam Matan
źródło
źródło
Odpowiedzi:
W systemie Windows NT / XP / Vista / 7 możesz otworzyć monit CMD i korzystać z niego
chkdsk /r x:
gdzie x to litera dysku USB, przy założeniu, że dysk jest podzielony na partycje i ma przypisaną literę dysku.
Sugeruję zdobycie Live CD z Ubuntu i uruchomienie systemu Linux, a następnie użycie Badblocks do skanowania w poszukiwaniu wad fizycznych.
Użyj,
sudo fdisk -l
aby wyświetlić listę wszystkich dysków i ich partycji. Dla każdego dysku :gdzie twój dysk twardy to / dev / sdx. Spowoduje to wykonanie nieniszczącego testu odczytu / zapisu na dysku bez sprawdzania systemu plików.
Jeśli nie przejmujesz się danymi, możesz to zrobić zamiast tego, aby przeprowadzić dokładniejsze skanowanie:
Opcja -w nakazuje badblocks napisać znany wzorzec, a następnie ponownie odczytać dane, aby upewnić się, że pasuje do wzorca. Robi to 4 razy, używając wzorów 0xaa, 0x55, 0xff i 0x00 (naprzemiennie zera i zera, następnie wszystkie zera, a następnie wszystkie zera). Pamiętaj, że spowoduje to zastąpienie wszystkich danych na dysku i wyczyści wszystkie partycje.
Jeśli na dysku znajduje się system plików Linux, możesz sprawdzić błędy systemu plików i jednocześnie uruchomić złe bloki. Najpierw uzyskaj listę wszystkich dysków i ich partycji:
Następnie dla każdej partycji :
Ponownie, / dev / sdx jest dyskiem twardym, który chcesz przeskanować. # to numer partycji (np. / dev / sdb1). Dwukrotne podanie c wymusi uruchomienie fsck i użyje złych bloków do wykonania nieniszczącego testu odczytu i zapisu. Jeśli użyjesz tylko raz opcji c, badblocks wykona test tylko do odczytu.
Uruchamiam badblocks -wvs na każdym nowym dysku twardym, który kupuję przed uruchomieniem.
źródło
-c
argumentu wiersza polecenia. Poza dobrą odpowiedzią.Pobierz i uruchom HD Tune , wybierz dysk, który chcesz skanować z menu rozwijanego, kliknij kartę Skanowanie błędów (upewnij się, że pole Szybkie skanowanie jest wyczyszczone) i naciśnij Start .
HD Tune jest bezpłatny do użytku osobistego i przenośny (nie wymaga instalacji).
źródło
Wielu producentów napędów, takich jak Western Digital i Seagate, udostępnia narzędzia, które przeprowadzą tego rodzaju kontrolę. Zwykle narzędzie Windows.
źródło
W systemie Windows użyję darmowej wersji HDTune do skanowania w poszukiwaniu uszkodzonych sektorów. Jednak program Linux BadBlocks jest znacznie lepszy, daje dokładną listę każdego uszkodzonego bloku i obsługuje zarówno sprawdzanie odczytu, jak i zapisu (chociaż zapis jest destrukcyjny).
źródło
Każdy nowoczesny dysk automatycznie mapuje nieczytelne / niepewne bloki. System operacyjny zwykle nie otrzyma błędu odczytu bloku, chyba że blok jest naprawdę nieczytelny, a zapisanie tego bloku spowoduje, że dysk go odwzoruje. To się nie powiedzie tylko wtedy, gdy w napędzie nie ma wolnych bloków, w takim przypadku nadszedł czas, aby wymienić napęd!
Rezultatem jest to, że system operacyjny oznaczający „złe bloki” w stylu skandisku jest zwykle bezcelowy.
Powiedziawszy to, użyłbym rozszerzonego autotestu SMART. smartmontools powinny działać. Możesz także uzyskać liczbę ponownie mapowanych bloków.
Zauważ, że w Linuksie zwykły
dd if=/dev/sdx of=/dev/null
, gdzie sdx jest urządzeniem blokującym dysk, wykona pełny logiczny odczyt dysku. Jeśli jakieś bloki są nieczytelne, pojawi się błąd. Jeśli nie masz nic przeciwko blokowaniu danych, możeszdd if=/dev/zero of=/dev/sdx
po prostu nadpisać cały dysk, powodując w razie potrzeby ponowne mapowanie dysku.źródło
Nigdy nie przepadałem za zewnętrznymi dyskami USB, ponieważ tak naprawdę nie istniały, gdy napisano jedne z najlepszych narzędzi, takich jak ScanDisk . Szczególnie podoba mi się wersja ScanDisk dostarczana z systemem Windows 98 SE.
Tak więc, jeśli jest to dysk zewnętrzny, prawdopodobnie należy go umieścić na komputerze, a następnie uruchomić
fsck -f
na dysku z Linux LiveCD, takiego jak ratunkowa płyta CD PLD .źródło