Jak mogę naprawić dysk twardy bez utraty plików?

0

W skrócie. Mam problemy z dostępem do plików na dysku twardym. Zakładam również, że nie jest to problem sprzętowy (dotyczy to raczej „poziomu oprogramowania”). Chciałbym wiedzieć, czy istnieją sposoby (polecenia Linuksa, narzędzia Linux), które mogą pomóc w monitorowaniu dysku twardego i wykryciu problemu. Oto bardziej szczegółowy opis tego, co się stało.

Mam dysk twardy Verbatim z dużą ilością plików. Dzisiaj próbowałem użyć go pod Ubuntu. W przeglądarce plików zobaczyłem folder Verbatim i próbowałem go otworzyć. W rezultacie zobaczyłem zegar wskazujący, że proces działa i potrzebuje więcej czasu. Ważę przez około minutę, widziałem to samo zdjęcie (nadal działa, folder nie jest otwarty) i próbowałem zrobić to samo w terminalu. Kiedyś cdwchodziłem do folderu Verbatim, a następnie znajdowałem się w folderze, który wykonuję ls -ltr. W rezultacie nic nie mam. Próbowałem anulować polecenie Ctrl C, ale to nie zadziałało, więc właśnie zamknąłem terminal. Następnie na panelu próbowałem ejectlub unmountna urządzeniu (nie pamiętam, jak to się nazywa), a Ubuntu napisał mi, że urządzenie jest zajęte wykonywaniem ls(lub coś w tym rodzaju) polecenia. I tak odłączyłem urządzenie.

Następnie próbowałem uzyskać dostęp do plików na dysku twardym przy użyciu innego komputera z systemem Windows. System Windows rozpoznał urządzenie, ale powiedział mi, że wykryto błąd i zaleca się wykonanie skanowania (jednak nadal istniała opcja pokazania plików bez skanowania). Wybrałem wykonanie skanu. Trwało to zbyt długo, nie pokazując żadnych postępów, i anulowałem skanowanie.

Następnie odłączyłem urządzenie i włożyłem ponownie. Nadal była dostępna opcja skanowania. Skanowanie można wykonać za pomocą dwóch opcji: (1) wykrycia błędów i automatycznej korekty oraz (2) wykrycia brakujących plików i próby ich przywrócenia. Pierwsza opcja była domyślnie zaznaczona (poprzednie (anulowane) skanowanie uruchamiam w ten sposób). Tym razem sprawdziłem także drugą opcję (więc obie opcje zostały zaznaczone) i ponownie uruchomiłem skanowanie. Znów było zbyt wolno, nie pokazując żadnych postępów, więc anulowałem je ponownie.

Następnie rozpocząłem skanowanie z zaznaczoną pierwszą opcją (znajdź błędy i popraw je automatycznie) i dałem mu wystarczająco dużo czasu. Po około 20-30 minutach był gotowy. W rezultacie otrzymałem wiadomość, że niektóre foldery nie zostały osiągnięte i zostały trwale usunięte. Potem mogłem korzystać z urządzenia (wchodzić do folderów i podfolderów i przeglądać pliki).

Potem ponownie wypróbowałem urządzenie pod Ubuntu. Rozpoznanie urządzenia zajęło około jednej minuty (jest za długie). Potem miałem ten sam problem (nie widziałem folderów znajdujących się na dysku twardym). Oznacza to, że widzę folder dysku twardego, mogę przejść do tego folderu, ale nie mogłem zobaczyć, jakie pliki tam są.

Następnie podłączyłem urządzenie do komputera z systemem Windows i nie było w stanie rozpoznać urządzenia (w ogóle go nie widzi). Podejrzewam, że na Ubuntu dokonałem odmontowania (lub czegoś takiego) i w tym zablokowałem dysk twardy (aby nie był widoczny dla komputera z systemem Windows). Nie jestem jednak pewien tego założenia. Prawdopodobnie urządzenie jest zepsute.

Czy ktoś mógłby mi w tym pomóc, ponieważ na urządzeniu mam wszystkie zdjęcia rodzinne z ostatnich 7 lat.

rzymski
źródło
1
Dlaczego tak się bałaganiłeś z dyskiem, który zawierał jedyne kopie twoich cennych zdjęć? Teraz jedyną opcją może być wypróbowanie różnych narzędzi do odzyskiwania danych, takich jak na przykład PhotoRec.
Karan
@Karan, co masz na myśli przez „zabawę”? Właśnie próbowałem uzyskać dostęp do plików na dysku twardym +, gdy system Windows zaproponował wykonanie skanowania, ponieważ wystąpił błąd, właśnie go zaakceptowałem. Prawdopodobnie złą rzeczą, którą zrobiłem, jest anulowanie procesów przed ich zakończeniem. Ale nie wiedziałem, w jaki sposób będą one rejestrować (kolejne 10 minut, kolejne 10 lat lub na zawsze).
Rzym
4
Połowa twoich problemów wydaje się być spowodowana niecierpliwością, druga połowa to brak kopii zapasowej. Recuver lub PhotoRec mogą być teraz twoimi najlepszymi szansami.
Tetsujin
1
Pierwszym krokiem jest wyjęcie dysku twardego z komputera, zakup zewnętrznej obudowy i wymiana dysku twardego. Następnym krokiem jest zaakceptowanie odzyskiwania plików, które mogą nie być pasywne. po uruchomieniu systemu można rozpocząć proces odzyskiwania plików. Im więcej danych do niego napiszesz, szanse na odzyskanie pliku znikną całkowicie.
Ramhound
1
Myślę, że to problem sprzętowy. Zły sektor lub luźny kabel. Sprawdź stan swojego dysku za pomocą narzędzia, gnome-disksktóre jest dostępne w Ubuntu. aka dyski
totti

Odpowiedzi:

1

Po pierwsze, należy ustalić typ systemu plików używanego na tym dysku. Najprawdopodobniej jest to FAT32. Możesz to zrobić za pomocą polecenia fdisk:

fdisk -l

Spowoduje to zwrócenie listy urządzeń, aw każdej linii pojawi się „Typ”, który ujawni system plików:

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048 219353087 219351040 104.6G 83 Linux
/dev/sda2       219355134 234440703  15085570   7.2G  5 Extended
/dev/sda5       219355136 234440703  15085568   7.2G 82 Linux swap / Solaris

Jeśli masz inny dostępny dysk, który jest równy lub większy niż dysk uszkodzony, najłatwiejszym sposobem na odzyskanie jest według mnie użycie narzędzia o nazwie dd-rescue. Więcej informacji można znaleźć tutaj: dd-rescue

Możesz także ręcznie użyć dd, aby przekształcić obraz całego dysku w plik. Jeśli dysk twardy jest duży, może to potrwać bardzo długo. Musisz także upewnić się, że masz wystarczająco dużo miejsca na dowolnym dysku, na którym planujesz utworzyć obraz kopii zapasowej, a także upewnij się, że używany system plików obsługuje pliki wystarczająco duże, aby pomieścić rozmiar całego dysku.

Oto przykład, w jaki sposób możesz to zrobić ręcznie:

dd bs=4k if=/dev/sda of=/path/to/backup.img conv=noerror,sync 

W powyższym poleceniu / dev / sda jest uszkodzony dysk, a backup. Img to plik, który będzie zawierał zawartość całego dysku jako kopię zapasową. Więcej informacji na temat tego polecenia można znaleźć tutaj:

odzyskać dane z martwego dysku twardego za pomocą dd

Lepszym rozwiązaniem może być użycie argumentu o mniejszym rozmiarze bloku, aby uniknąć utraty danych w przypadku wystąpienia błędów. np. „bs = 1024”, jednak spowoduje to, że operacja potrwa jeszcze dłużej.

Bardzo trudno jest ustalić, czy dysk twardy faktycznie ulega awarii, chyba że jest on wyposażony w funkcje takie jak SMART. Możliwe, że dysk nie ulega awarii i przyczyną problemu jest uszkodzenie systemu plików.

Niestety nie znam dobrego sposobu, aby realistycznie ustalić, jak uszkodzony jest dysk twardy, poza funkcjami takimi jak SMART, który jest zwykle kontrolowany przez BIOS.

Po określeniu rodzaju systemu plików, którego używasz na tym dysku, możesz spróbować naprawić system plików, tak jak wcześniej w systemie Windows w systemie Linux, za pomocą polecenia fsck: (upewnij się, że używasz fsck, który pasuje do określonego typu systemu plików.

fsck.vfat /dev/sdb1

Należy zauważyć, że Linux nie zawsze jest dobry w naprawie NTFS lub grubych partycji, dlatego nie należy próbować tego robić, dopóki nie zweryfikujesz kopii zapasowej. W rzeczywistości zalecam wykonanie zamiast tego próby naprawy obrazu kopii zapasowej. Instrukcje dotyczące wykonywania fsck na pliku kopii zapasowej można znaleźć tutaj: mount-a-raw-partition-file-made-with-dd

W zależności od sposobu zamontowania systemu plików komenda ls może rzeczywiście uszkodzić system plików, jeśli zmienia on plik lub metadane katalogu; w szczególności poprzez aktualizację czasu dostępu. Odłączenie dysku podczas zapisywania czegokolwiek spowoduje błędy w systemie plików, szczególnie w systemach plików, które nie mają dobrych funkcji kronikowania (takich jak FAT32). Błędy te można normalnie skorygować za pomocą fsck.

Bardzo mi przykro, że jesteś w tak niepewnej sytuacji i mam nadzieję, że możesz odzyskać te pliki.

Jacob Margason
źródło
ddrescue jest zwykle lepszym wyborem niż dd dla mediów o marginalnym źródle. Wykona jeden przebieg, aby odzyskać jak najwięcej ze źródła, a potem to powtórzy nieudane odczyty, dopóki napęd źródłowy nie zrezygnuje całkowicie lub wszystko zostanie skopiowane.
CVn
ddrescue jest całkiem niesamowity, myślę, że kupienie innego dysku, a następnie próba odzyskania za pomocą ddrescue jest prawdopodobnie tym, co zrobiłbym w tej sytuacji. Może też rozważyć w przyszłości skonfigurowanie urządzenia RAID6 SAN dla zdjęć rodzinnych, właśnie to robię.
Jacob Margason
1

Wróć do systemu Linux.

Otwórz terminal główny i wpisz tail -f /var/log/kern.log, maksymalizuj to okno.

Podłącz dysk twardy.

Jeśli masz problem sprzętowy z dyskiem, pojawi się tutaj. Jeśli jest to problem z połączeniem USB, pojawi się komunikat „Nie można wyliczyć urządzenia” lub podobny. Jeśli wystąpi problem z nośnikiem z napędem, otrzymasz komunikaty o uszkodzonych blokach.

W przypadku błędu połączenia USB może występować problem z kablem USB, złączem lub adapterem USB-S-SATA znajdującym się w obudowie dysku twardego (zerwane styki, odpadnięcie złącza itp.)

Zakładając, że twój model zewnętrznego dysku twardego nie ma funkcji szyfrowania na płycie USB, możesz wyjąć dysk z obudowy, bezpośrednio podłączyć go do komputera i pracować z nim jak z dowolnym dyskiem wewnętrznym. Jeśli ma szyfrowanie - naprawdę musisz uruchomić tę płytkę i powinieneś spróbować skontaktować się z kimś dobrym z elektroniką / lutowaniem, aby wymienić złącze USB lub przylutować kabel bezpośrednio do padów na płycie (które, mam nadzieję, nie zostaną oderwane) ). Dysk twardy będzie nadal działał w innym systemie, ale nie będzie można uzyskać danych.

Przykład płyty USB, która byłaby wewnątrz obudowy:

wprowadź opis zdjęcia tutaj

Po wyeliminowaniu problemu ze sprzętem możesz spróbować uruchomić Testdisk, aby zobaczyć, co można odzyskać. Możesz zainstalować to z apt-getterminala głównego pod Ubuntu lub pobrać i uruchomić wersję Windows . Przygotuj inny dysk, aby skopiować pliki i wykonać kopię zapasową danych następnym razem.

Powodzenia.

LawrenceC
źródło
Co to jest kern.log? Czy to dziennik specyficzny dla Ubuntu? Nie ma go na innych dystrybucjach Linuksa.
snapshoe
1
@snapshoe Wydaje mi się, że kern.logjest obecny tylko w systemach, które nie używają systemu dziennika opartego na dzienniku (syslog). Jest to zasadniczo wynik dmesg. Semi-source
int_541
To właśnie dostaję za używanie Debiana, lol.
LawrenceC
Uruchamiam Arch, który ma dzienniki oparte na jounal i nie mam kern.log. Istnieje plik kernel.log.
snapshoe
0

Nie ma sposobu, aby naprawić uszkodzony dysk twardy bez ryzyka utraty plików. W zależności od tego, ile warte są dane na dysku, najlepszym rozwiązaniem może być profesjonalna usługa odzyskiwania danych. Uważam, że usługi te zaczynają się od około 500 USD i rosną, czasem dramatycznie w zależności od nakładu pracy na odzyskanie danych. Nawet najlepsza usługa odzyskiwania danych może nie być w stanie odzyskać wszystkich danych, ale mają o wiele większą szansę na to niż cokolwiek, co możesz zrobić samodzielnie.

Aby uzyskać więcej informacji, zalecamy skorzystanie z usług Seagate Recovery Services .

Jestem pewien, że nie to chcesz usłyszeć, ale profesjonalne odzyskiwanie danych może otworzyć dysk i wykonać inne procedury, których po prostu nie można wykonać samodzielnie. Odzyskiwanie danych wymaga wiedzy specjalistycznej, specjalistycznego oprogramowania i narzędzi, części dysku twardego i musi odbywać się w czystym pomieszczeniu. Nie można tego robić w domu.

Dan Griffin
źródło
0

Czy próbowałeś ręcznie przeprowadzić pełną kontrolę dysku w systemie Windows?

Jeśli otworzysz cmd i wpiszesz polecenie chkdsk / ?, pojawi się wszystkie możliwe opcje.

W przypadku partycji NTFS można wykonać polecenie chkdsk / F / R / B / X, która wykonuje najbardziej kompletne sprawdzanie. W przypadku FAT32 należy pominąć / B.

Pamiętaj, że zajmuje to dużo czasu w zależności od dysku twardego. Ale może istnieć możliwość uratowania niektórych danych.

Marin Althuis
źródło