Видалено перші 512 байти диска; як я можу відновити свої дані?


12

Я випадково записав бінарний файл 512 байт на неправильний диск USB, ddі пристрій більше не показує жодних розділів fdisk.

Я думав, що всі дані зникли, але dd if=/dev/sdx | stringsпоказує, що дані, здається, все ще є, оскільки, на ddщастя, обмежилися першими 512 байтами. Чи є спосіб відновити його ?

Диск мав два розділи: один ext4 (~ 4 Гб), а решта 16 ГБ були відформатовані як NTFS.

Відповіді:


13

Це залежить від того, що саме там раніше було, але може бути легко (-іш) відновитись після цього.

  1. Використовуйте ddдля створення повного зображення вашого USB-накопичувача в безпечному місці.

  2. Використовуйте ddдля створення повного зображення вашого USB-накопичувача в безпечному місці.

  3. Так, будь ласка, зберігайте повне зображення. Операції відновлення даних часто можуть завдати більше шкоди, ніж можна було б очікувати.

  4. Спробуйте запам’ятати, яким виглядав макет розділів на цьому USB-накопичувачі. Запишіть це . Можливо, це допоможе, якщо у вас є системні журнали, коли ядро ​​Linux виявило цей диск (до того, як буде заблоковано) - досить часто він буде роздруковувати деякі дані про виявлені розділи.

  5. Використовуйте fdisk для відтворення MBR з тією ж таблицею розділів. Не форматуйте та / або fsck жодних розділів .

  6. Спробуйте змонтувати розділи за допомогою параметра "лише для читання" ( -o ro) mount.

  7. Якщо це вдасться, спробуйте скопіювати всі файли в безпечне місце і спостерігайте за своїм терміналом і журналами помилок вводу / виводу - типовий спосіб вираження помилок кордону розділів здійснюється через не пов'язаний доступ на базовому пристрої.

  8. Якщо копія не вдалася, відновіть зображення та поверніться до кроку 4.

  9. Я згадав про повне зображення USB-накопичувача, перш ніж робити щось інше?

PS: Ви також можете ознайомитись з інструментами типу TestDisk , які намагаються автоматизувати процес відновлення. Але ви все-таки повинні отримати повне зображення спочатку.

PS2: Якщо ви відчуваєте себе досить комфортно, ви також можете трохи експериментувати. Якщо ви можете зробити обґрунтоване припущення щодо початкової точки першого розділу, тоді ви можете використовувати tune2fs -lточний розмір першого розділу, який би дозволив полювати на початок другого розділу.


№1: dd if=/dev/sdx of=backup.imgтак?
edmz

@black: Так. Ви можете поставити bs=...опцію збільшити розмір блоку та трохи прискорити його.
thkala

Хороший блокчейн для використання є bs=64K. TestDisk, безумовно, варто спробувати, і він може працювати як на файлах зображень диска, так і на фактичних дисках. Удачі!
PM 2Ring

Біг cat /dev/sdx >backup.imgбув би швидше, ніж ddза багатьох обставин, і, звичайно, не повільніше в цій.
roaima

6

Щоб відновити ext4розділ та його дані, я подумав про створення одного, загальнодискового розділу ext4. Це дозволило мені отримати доступ до даних та отримати інформацію про розділ tune2fs -l, як це запропонував @thkala. Ця інформація виглядає дуже здійсненною і, таким чином, незмінною.

Дуже цікаво, що gparted дещо здатний з'ясувати фактичний розмір розділу, як виявляється з цього попередження:

10,96 Гб нерозподіленого простору в розділі. Щоб розробити файлову систему для заповнення розділу, виберіть розділ та виберіть пункт меню:

тому що 11GiB був приблизно розміром розділу NTFS.

введіть тут опис зображення

Зверніть увагу на невикористаний простір, який, IIRC, це був простір, у якого ext4 все ще був вільним. Незайняте простір GParted визнає , здається, розділ NTFS; Тепер, як я можу відновити і цей , можливо, дізнавшись, де закінчується перший розділ, тобто його загальний кількість байтів?


Нарешті, TestDisk вирішив це без особливих зусиль.


Відмінно. Будь ласка, ви прийняли б свою власну відповідь, щоб було зрозуміло, що у вас прийнятне рішення вашого питання.
roaima

@roaina Так, коли закінчиться дводенний мінімальний термін відкриття.
edmz
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.