Usunięto pierwsze 512 bajtów dysku; jak mogę odzyskać moje dane?


12

Przypadkowo zapisałem 512 bajtów pliku binarnego na niewłaściwy dysk USB ddi urządzenie nie wyświetla już żadnych partycji fdisk.

Myślałem, że wszystkie dane zniknęły, ale dd if=/dev/sdx | stringspokazuje, że dane nadal tam są, ponieważ na ddszczęście ograniczyły się do pierwszych 512 bajtów. Czy jest jakiś sposób na jego odzyskanie ?

Dysk miał dwie partycje: ext4 (~ 4 GB), a pozostałe 16 GB zostały sformatowane jako NTFS.

Odpowiedzi:


13

Zależy to od tego, co dokładnie tam było wcześniej, ale odzyskanie tego może być łatwe (-ish).

  1. Służy dddo tworzenia pełnego obrazu dysku USB w bezpiecznej lokalizacji.

  2. Służy dddo tworzenia pełnego obrazu dysku USB w bezpiecznej lokalizacji.

  3. Tak, proszę zachować pełny obraz. Operacje odzyskiwania danych mogą często powodować więcej szkód, niż można by się spodziewać.

  4. Spróbuj zapamiętać, jak wyglądał układ partycji na tym dysku USB. Zapisz to . Może to pomóc, jeśli masz dzienniki systemowe od momentu wykrycia tego dysku (przed pomieszaniem) przez jądro Linuksa - dość często wydrukuje on niektóre dane o wykrytych partycjach.

  5. Użyj fdisk, aby ponownie utworzyć MBR z tą samą tabelą partycji. Nie formatuj i / lub fsck żadnych partycji .

  6. Spróbuj zamontować partycje za pomocą opcji tylko do odczytu ( -o ro) mount.

  7. Jeśli się powiedzie, spróbuj skopiować wszystkie pliki do bezpiecznej lokalizacji i obserwuj swój terminal i dzienniki pod kątem błędów we / wy - typowym sposobem wyrażania błędów granic partycji jest uzyskanie dostępu poza urządzeniem na urządzeniu bazowym.

  8. Jeśli kopiowanie się nie powiedzie, przywróć obraz i wróć do kroku 4.

  9. Czy wspominałem o posiadaniu pełnego obrazu dysku USB przed zrobieniem czegoś innego?

PS: Możesz także przyjrzeć się narzędziom takim jak TestDisk , które próbują zautomatyzować proces odzyskiwania. Ale najpierw powinieneś uzyskać pełny obraz.

PS2: Jeśli czujesz się wystarczająco dobrze, możesz także trochę poeksperymentować. Jeśli możesz przyjąć rozsądne założenie dotyczące punktu początkowego pierwszej partycji, możesz użyć tej opcji, tune2fs -laby uzyskać dokładny rozmiar pierwszej partycji, co umożliwi polowanie na początek drugiej partycji.


# 1: dd if=/dev/sdx of=backup.imgprawda?
edmz

@black: Tak. Możesz dodać bs=...opcję zwiększenia rozmiaru bloku i przyspieszenia go nieco.
thkala

Dobrym blokiem jest do użycia bs=64K. TestDisk jest zdecydowanie warty wypróbowania i może działać zarówno na plikach obrazów dysków, jak i na rzeczywistych dyskach. Powodzenia!
PM 2, pierścień

Bieganie cat /dev/sdx >backup.imgbyłoby szybsze niż ddw wielu okolicznościach i na pewno nie wolniejsze w tym przypadku.
roaima,

6

Aby przywrócić ext4partycję i jej dane, pomyślałem o utworzeniu jednej partycji ext4 na dysku. To pozwoliło mi uzyskać dostęp do danych i pobrać informacje o partycji tune2fs -l, zgodnie z sugestią @thkala. Ta informacja wygląda bardzo wykonalnie, a więc niezmieniona.

Bardzo interesujące jest to, że gparted jest w stanie ustalić rzeczywisty rozmiar partycji, jak wynika z tego ostrzeżenia:

10,96 GiB nieprzydzielonego miejsca w partycji. Aby rozwinąć system plików do wypełnienia partycji, wybierz partycję i wybierz element menu:

ponieważ 11GiB był mniej więcej wymiarem partycji NTFS.

wprowadź opis zdjęcia tutaj

Zwróć uwagę na nieużywane miejsce, które, IIRC, było miejscem, które ext4 wciąż miał wolne. Nieprzydzielone miejsce gparted rozpoznaje wydaje się być partycja NTFS; teraz, w jaki sposób mogę je przywrócić , być może poprzez ustalenie, gdzie kończy się pierwsza partycja, czyli całkowita liczba bajtów?


Wreszcie TestDisk poradził sobie z tym bez wysiłku.


Doskonały. Proszę, zaakceptuj własną odpowiedź, aby było jasne, że masz zadowalające rozwiązanie swojego pytania.
roaima,

@roaina Tak zrobię, gdy minie dwudniowy minimalny czas otwarcia.
edmz
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.