Восстановление ssd диска linux

6 утилит для восстановления данных с поврежденных жестких дисков в Linux

Оригинал: 6 Linux Tools to Help Recover Data from Corrupted Drives
Автор: MTE Staff
Дата публикации: 11 сентября 2018 года
Перевод: А. Кривошей
Дата перевода: октябрь 2019 г.

Ваш экран просто стал черным или ваш ноутбук завис без предупреждения? Может быть, ваш жесткий диск начал барахлить. Хуже того, может быть, вы вдруг не можете сохранить данные в свой домашний раздел?

Все эти признаки поврежденного или неисправного диска, но нет причин немедленно выбрасывать компьютер. Прочитайте эту статью, чтобы узнать о шести утилитах Linux, которые могут помочь вам восстановить ваши данные и вернуть вашу цифровую жизнь в обычное русло.

1. Testdisk

Некоторые инструменты восстановления Linux пытаются сохранить ваши данные, копируя все, что можно извлечь из поврежденного раздела. Это может сработать, но не гарантированно, так как проблемы с самим разделом могут скрывать данные, которые вы хотите получить.

Testdisk очень удобен, поскольку он может на самом деле исправлять ошибки на уровне раздела, упрощая восстановление данных с помощью самого Testdisk или другого инструмента восстановления данных. Он может даже исправить поврежденный жесткий диск и снова заставить ваш ПК с Linux работать, чтобы вы могли получить прямой доступ к данным.

Помимо выполнения глубоких операций, таких как восстановление загрузочных секторов и таблиц файловой системы, Testdisk также способен восстанавливать данные,даже удаленные, с жестких дисков с файловыми системами NTFS, FAT, exFAT и ext.

Чтобы установить Testdisk в Linux, перейдите в терминал и введите:

Если вы хотите узнать больше об использовании Testdisk, вы можете прочитать руководство по Testdisk здесь .

2. ddrescue

Хотя ddrescue не является инструментом восстановления данных, он должен стать вашим первым шагом на пути к извлечению ваших файлов. Ddrescue создает образ вашего поврежденного диска или раздела, чтобы вы могли проанализировать копию вашего сломанного диска.

Всегда копируйте свой диск в отдельный образ, прежде чем начинать операции восстановления файлов с помощью инструментов, перечисленных ниже. Чем дольше вы используете неисправный диск, тем больший ущерб вы можете причинить.

Здесь вы видите некоторые результаты ddrescue в действии. В первой команде он копирует весь диск в образ с именем «backup.img». Вторая команда затем копирует в тот же образ только плохие блоки, проходя каждый раз по этим блокам, чтобы попытаться их прочитать.

Когда вы запускаете эти команды, всегда используйте файл журнала. Резервное копирование может занять несколько часов или дней, и без лог-файла любые прерывания заставят вас начать процесс заново с самого начала.

Когда этот процесс завершен, вы можете смонтировать скопированный образ и использовать приведенные далее утилиты для извлечения из него файлов. Дальнейшее использование других инструментов восстановления Linux из этой статьи позволит получить данные из того же «backup.img», созданного здесь.

3. Foremost

Foremost использует структуры данных общих типов файлов для извлечения данных. Вы можете просканировать весь образ диска для всех его файлов или указать определенные типы файлов, которые вам наиболее интересны.

Здесь вы можете увидеть вывод Foremost в подробном режиме (опция -v). Опция -t ищет типы файлов jpg, а опции -i и -o отмечают соответствующий входной файл и выходной каталоги.

Вы можете видеть, что Foremost анализирует образ, созданный на предыдущем шаге; этот образ содержит несколько JPEG-файлов. Foremost смог найти десять таких файлов, и когда он закончил сканирование образа, он скопировал эти десять файлов в указанную выходную папку.

4. scalpel

Scalpel , изначально основанный на Foremost, стремится быть экономным в своей работе. Он использует многопоточность и асинхронный ввод/вывод для эффективного поиска.

Пользователи также могут указать типы файлов, которые они хотят восстановить, отредактировав файл конфигурации Scalpel. Конфигурация по умолчанию производит много выходных данных, даже без подробного режима (параметр -v).

На этом снимке экрана вы можете увидеть окончательный результат анализа Scalpel для «backup.img». Базовая команда (приведенная в нижней части снимка экрана) требует только выходной каталог и образ для анализа.

Читайте также:  Включение быстрой загрузки windows

5. PhotoRec

PhotoRec отстает от своих конкурентов, сосредоточившись на восстановлении фотографий, видео и текстовых документов. Он также работает как интерактивная утилита внутри консоли.

В команде PhotoRec должен быть указан желаемый образ (наш backup.img) и выходная папка. Затем PhotoRec помещает пользователя в графическое окружение. Скриншот здесь показывает размер образа. На следующих экранах запрашивается тип раздела диска и хотите ли вы искать файлы по всему образу.

6. grep

Наконец, мы подошли к grep . Он может показаться не самым простым вариантом восстановления, но grep может находить удаленные или потерянные текстовые файлы путем поиска строк, присутствующих на блочном устройстве или образе диска.

В образе backup.img существует файл с именем «myfile». Он содержит только одну строку текста: «This is the file I will try to recover.»

Grep использует эту строку в качестве отправной точки для восстановления файлов. Помимо нескольких других параметров, вы можете видеть, что в этом примере он выводит найденную строку в новый двоичный файл с именем «foundtext».

Также, вы можете изменить параметр -C, который печатает дополнительный контекст, окружающий строку в исходной команде. В этом примере команда указывает grep найти одну строку текста до и одну после указанной строки.

Начиная с -C 200, grep найдет 200 строк как до, так и после строки. Такой охват здесь не нужен, но он может быть важен для больших текстовых файлов с сотнями строк. Конечно, вам нужно знать содержимое ваших файлов, чтобы у grep была отправная точка для начала поиска.

Grep создаст в качестве вывода двоичный файл. Тем не менее, некоторые части будут удобочитаемыми, например желаемая строка текста этого примера в нижней части этого снимка экрана. Ваша задача — вручную выбрать нужные данные. Конечно, это тяжелая работа, но она лучше альтернативы отсутствия файлов.

Заключение

Итак, сначала скопируйте ваш диск или раздел с помощью ddrescue, а затем работайте с этой копией с помощью любых инструментов восстановления Linux, которые вам нужны. Не бойтесь попробовать более одного инструмента, особенно если ваш первый выбор не нашел данных, которые вы хотели найти. Будьте терпеливыми. Если вам повезет, вы вернете свои драгоценные файлы еще до того, как узнаете об этом.

Источник

Восстановление содержимого SSD из образа

Есть SSD-диск. Когда-то я сделал его образ с помощью dd if=/dev/sda of=backup.img, а теперь хочу его восстановить. В случае с HDD всё очевидно — dd if=backup.img of=/dev/sda. Однако для SSD ещё необходимо сделать discard для нулевых блоков.

1) Как правильно восстановить диск из бекапа?

2) Можно ли восстановить обычным dd, а потом какой-то другой программой пройтись по диску и сделать discard для нулевых секторов (не думаю, что будет проблемой, если я сделаю discard для сектора с нулями, которые на самом деле будут данными — ведь при чтении всё равно считаются нули, а при записи сектор заново выделится)?

Делаешь
dd if=backup.img of=/dev/sda
mount /dev/sda1 /mnt -o discard
dd if=/dev/zero of=/mnt/temp.file bs=8M
ждешь пока на разделе закончится место
rm /mnt/temp.file
Ждешь пока он сам сделает discard
или делаешь
fstrim /dev/sda1
Профит.

Однако для SSD ещё необходимо сделать discard для нулевых блоков.

Однако для SSD ещё необходимо сделать discard для нулевых блоков

Ни в коем случае! Если внутри файла были нулевые блоки — из них после discard будет читаться мусор (даже нет гарантии, что каждый раз одинаковый).

Ещё вариант — примонтировать фс из образа, создать на ssd новую фс и скопировать туда файлы через cp.

С точки зрения ФС свободное место за пределами скопированных данных уже отTRIMленно. И пока на его место не запишут данные и не уберут их, она будет считать, что они не нуждаются в TRIM’е.

UPD. Хотя вот почитал, fstrim будет работать и без заполнения раздела.

делай как пишет Nao, и неожиданностей не будет. Не забудь только защитить права на файлы, линки etc.

И потерять права, SUID, и прочее.

ТС, данный оратор верно говорит, но вместо cp используй rsync .

Источник

Восстановление данных с SSD

Всем привет, случайно отформатировал диск на котором операционная система, отформатировал быстро, т.е. удалил только таблицу, можно ли полностью все восстановить, и чтобы операционка тоже заработала?

Читайте также:  Linux просмотреть текстовый файл

Да. Монтируй с указанием резервных таблиц.

Для справки ткните пожалуйста, где про это прочитать. Что-то сразу не находится, а долго гуглить лень. Хотя может ТС нагуглит и расскажет.

Хотя может ТС нагуглит и расскажет.

ну а если и ТС не расскажет, то телепаты подтянутся 🙂 ..[они там сразу и тип файловой системы укажут (новой и старой) и другие особенности. ] 🙂

файловая система ext4

форматнул когда начал устанавливать винду (срочно понадобилась), в итоге случайно не тот отформатировал, fdisk -l пишет вот что:

Хм, возможно имелось в виду монтирование с резервным суперблоком

было EXT4 а стало NTFS — так что может и сработает.

кроме sb=. , думаю нужно не забыть конечно указать ещё и -t ext4 🙂

интересно было бы узнать. да.. сработает или нет в итоге

пишет mount point sb=131072 does not exist

Вы, конечно, на нервах, но нельзя же так. sb — это просто опция, надо ещё девайс указывать и точку монтирования.

это можешь поковырять

я так ввел: sudo mount -t ext4 sb=131072 /dev/sda /mnt/disk2
нашел еще такую статью, но на LiveCD не устанавливается gpart: http://ubuntuforums.org/showthread.php?t=370121

написал вот что:

Я так понимаю, можно ещё 393216 попробовать, и дальше по списку, умножая каждое значение на 4: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000

Делай fsck.ext4. Если сразу не покатит, там есть опции по поводу суперблоков.

Но на самом деле данные уже можно считать потерянными.

запутался как лучше сделать, запустил testdisk, поиск выдал это:

что здесь выбирать? Перед форматированием весь диск был ext4

Ничего. Руками восстанови прежнюю структуру разделов. Если был один на весь диск, то это элементарно.

был один на весь диск, использовать fsck.ext4?

Если есть возможность сделать образ раздела, сделай. Ну и пробуй fsck. Сразу хочу сказать, что в случае успеха ты получишь кучу файлов с бесполезными именами в lost+found. То есть, если нет задачи восстановить какие-то ценные данные, то можешь просто переустановить систему.

Источник

Восстанавливаем запоротый SSD

Мне подумалось, что вдруг кого-то из владельцев SSD устройства этот топик наведёт на мысль о backup’е, кого-то о в целом более осторожном отношении, а кого-то избавит от общения с не слишком торопливой службой поддержки. Всё написанное относится не тдоолько к устройствам той серии и производителя, что у меня.

Дней 10 назад мне случилось оставить на ночь ноут с батареей в критическом состоянии без зарядки. Я не слишком беспокоюсь о жизни батареи, но удар последовал с другой стороны. Утром, включив ноутбук в зарядку и включив его я с удивлением обнаружил, что:

В ВIOS’е винчестер определялся. Схватив имевшийся под рукой Ubuntu Live CD на flash’ке и вооружившись командной строкой, я приготовился к дебагу.
Стоит сразу сказать, что в случаях таких сбоев удобнее было бы использоваться какой-нибудь Data Rescue Live CD, с уже установленными утилитами диагностики вместо совершенно не нужного офисного пакета, но тем не менее.

Наберём арсенал, который нам пргодится:

$ sudo apt-get install hdpam partx smartmontools

$ sudo partx -s /dev/sda
partx: /dev/sda: failed to read partition table

$ sudo smartctl -s on -d ata -A /dev/sda -T verypermissive
smartctl 5.41 2011-06-09 r3365 [i686-linux-3.0.0-12-generic] (local build)
Copyright © 2002-11 by Bruce Allen, smartmontools.sourceforge.net

SMART support is: Unavailable — device lacks SMART capability.
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
Error SMART Enable failed: Input/output error

Ошибка ввода-вывода? Диск не поддерживает SMART? Уже бред какой-то.

ATA device, with non-removable media
Model Number: INTEL SSDSA2CW080G3
Serial Number: BAD_CTX 00000150
Firmware Revision: 4PC10302

Configuration:
Logical max current
cylinders 16383 16
heads 16 16
sectors/track 63 63

CHS current addressable sectors: 16128
LBA user addressable sectors: 156301488
LBA48 user addressable sectors: 156301488
Logical Sector size: 512 bytes
Physical Sector size: 512 bytes
device size with M = 1024*1024: 76319 MBytes
device size with M = 1000*1000: 80026 MBytes (80 GB)

Ага. Можно заметить, что число условных SSD цилиндров упало в 10000 раз и согласно десктопному Gparted’у размер винчестера составляет 8MB (каюсь, в логах не сохранилась консольная команда и её вывод для просмотра этого безобразия, прошу верить мне на слово). Серийный номер отсутствует и вместо него BAD_CTX что-то там. Хорошо, симптомы поняли, можно обращаться к поиску и в поддержку. Действительно, оказывается, проблема далеко не единична, но, увы, такой идиот с Linux’ом я один.

Читайте также:  Стандартный пользовательский интерфейс ос windows это

В кратце для не знакомых с языком и ленивых, форумчане говорят о повальной подверженности всех Intel’овских SSD такому багу, особенно затронувшее 320ю серию и X25M. Есть новость о прошивке 0362, которая призвана избавить именно от этого бага, но количество обращений людей с уже этой прошивкой с теми же симптомами говорит о нерешённости проблемы. Да, лучшим решением в данном случае было бы отправить винчестер обратно в Intel, чтобы у них появился стимул поправить свои ошибки.

К сожалению, поддержка Intel не отличается расторопностью, и отвечает примерно раз в сутки, затупливая по техническим вопросам, и очень рекомендуя установить их SSD Toolbox для определения проблемы. Хочется отдельно заметить, что основной срез пользователей SSD — это владельцы MacBook’ов, у которых аналогично со мной есть трудности с установкой софта под Windows. Отдельного упоминания достойно то, что эта тулза, предназначенная для определения неисправностей, требует:
— Java
— .NET 3.5
— Windows Media Player Redistributable 11
что делает её установку на компьютере, загруженном с Live CD практически невозможной задачей (во-первых из за ограничений объёма на виртуальном винчестере, а во-вторых в связи с тем, что WMP 11 требует проверки аутентичности Windows, которая со скрипом и стонами лишь у некоторых особо выдающихся личностей получается в Wine.
Пламенный привет разработчикам этого ПО.
Мне чудом удалось объснить ситуацию поддержке, и они согласились на замену, но для замены нужно заполнить неимоверное количество форм, к которым нужно ещё приложить подтверждение поупки мной устройства. Волею судеб, я сейчас в десяти тысячах километров от дома, и не ждал такого подвоха.

К счастью, на форумах все однозначно говорят, что содержимое диска восстановлению не подлежит, но что работоспособность восстановить возможно. И то время, которое было потрачено на переписку со службой поддержки, я не потратил зря, а с пользой потратил на чтение форумов и эксперименты, краткий разультат которых здесь и привожу.

Нужно восстановить количество цилиндров, вернув заветные 16383.
Для этой операции нам нужны будут две команды, запуск обоих затруднён для защиты от дурака и вредителя.

Выставляем пользователя, и пароль для мастер-операций над диском.

$ sudo hdparm –user-master user –security-set-pass abc /dev/sda

Далее нам нужно разблокировать расширенный набор ATA-команд, в частности secure-erase, которые блокируются при загрузке системы. Этому есть несколько способов, один из которых — внешний бокс, отключить и включить его питание. Внешнего бокса у меня не было, но чудесным образом срабатывает отправка ноута в sleep и пробуждение.

Следующие команды выполняют некую безопасную очистку, я запускал обе, так как уверенности какая из них понадобится, не было. Перед каждой запускал установку мастер-пароля и закрытие крышки ноутбука.

$ sudo hdparm –user-master user –security-erase abc /dev/sda
$ sudo hdparm –user-master u –security-erase-enhanced abc /dev/sda

Перезагрузка. Ура, можно ставить систему.

Итого выводы, которые я сделал для себя:
— держите Live CD под рукой
— не оставляйте ноут совсем без питания на критическом заряде
— делайте бэкапы, в том числе keyring’ов, списков установленных пакетов, конфигов и rsa ключей
— обновляйте прошивки (после того, как вы узнали, что она точно неплохо работает)
— беречь нервы

Хочу дополнительно отметить, что не всегда такой метод полностью восстанавливает функционал, и что иногда диск остаётся глючным, тормозным.

Ещё раз послаю пламенный привет поддержке Intel, и сообщить им, что я так и не могу зайти под своими логином и паролем на их community, чтобы опубликовать этот чудодейственный рецепт у них, и напомнить, что я уже неделю жду от них хотя бы какого-нибудь ответа почему же я не могу этого сделать.

В следующем топике расскажу об интересной статистике смертей SSD, возвратов, починок и ошибок в работе по производителям и моделям.

Источник

Оцените статью