Данная статья применима к:

  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), РУСБ.10015-10
  • Astra Linux Special Edition РУСБ.10015-17
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10015-03 (очередное обновление 7.6)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1
  • Astra Linux Special Edition РУСБ.10015-16 исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12

Введение

В настоящей статье рассматриваются средства восстановления данных, применимые в случаях:

  1. Повреждения (отказа) оборудования (физического повреждения носителей информации).
  2. Искажения структуры хранения данных (удаление/повреждение таблицы дисковых разделов или самих дисковых разделов, форматирование дисковых разделов).
  3. Удаления данных (удаление файлов или каталогов).

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

В любом случае следует помнить, что:
  • Никакие инструменты не могут гарантировать восстановление. Лучший способ восстановления данных - это восстановление их из своевременно и правильно сделанной резервной копии:
    • политика резервного копирования и восстановления должна быть обязательной частью общей политики информатизации;
    • резервные копии должны не просто делаться, но и регулярно проверяться на возможность восстановления данных из них;
    • для контроля состояния накопителей данных и прогнозирования их отказов следует использовать средства мониторинга: Мониторинг параметров S.M.A.R.T.
  • Для повышения вероятности успешного восстановления данных любые операции записи на носитель, содержащий восстанавливаемые данные, должны быть запрещены.
    В случаях физически повреждённых дисковых магнитных или ленточных накопителей также должны быть минимизированы все операции чтения, включения, выключения;
  • Восстановление дисковых накопителей следует производить: либо отмонтировав дисковые разделы, либо загрузившись с Live-USB, либо подключив носитель в другую машину;
  • Невозможно восстановление данных, содержавшихся в удаленных файлах, при включенном режиме "безопасного удаления" (см. подраздел "Очистка памяти" раздела "Защита памяти" в "Руководство по КСЗ", часть 1);
  • Не рекомендуется пытаться извлечь данные с неисправных носителей простым копированием (команды cp, dd и пр.), так как эти команды могут впасть в бесконечный цикл чтения поврежденных участков, что может привести к расширению повреждений и дальнейшей потере данных.

GNU ddrescue: Копирование данных с поврежденных носителей

Web-сайт разработчиков GNU ddrescue: https://www.gnu.org/software/ddrescue/

Инструмент GNU ddrescue (не путать с инструментом dd_rescue) копирует данные из одного (повреждённого) источника в другой, предпринимая максимально возможные усилия для максимально возможного извлечения данных.

Инструмент GNU ddrescue входит в репозиторий Astra Linux Common Edition 2.12.45 и в расширенный репозиторий Astra Linux Special Edition начиная с обновления 1.7.1 (4.7.4) и при подключенном репозитории может быть установлен командой:

sudo apt install gddrescue

В Astra Linux Special Edition 1.6 инструмент может быть установлен из репозитория Astra Linux Common Edition.

Общий синтаксис запуска инструмента:

sudo ddrescue [<параметры>] <источник_данных> <приёмник_данных> [<карта>]
После инструмент инструмент:

  1. Пытается скопировать данные из указанного источника в указанный приёмник пропуская "сбойные данные". Чтение осуществляется в прямом и обратном направлении постепенно уменьшающимися блоками. Результаты копирования запоминаются в "карте" (журнале хода копирования).
  2. После завершения копирования легкодоступных данных информация, сохраненная в "карте", используется для  попыток копирования пропущенных "сбойных" участков.  Наличие "карты" позволяет в произвольные моменты времени останавливать и возобновлять операцию копирования, не выполняя чтение ранее скопированных участков. Таким образом, возможное нарастание повреждений носителя в процессе работы не повлияет на уже прочитанные данные.
  1. В начале работы всему источнику назначается статус "не проверенный" (non-tried). Далее на всех этапах заполняется "карта" блоков с регистрацией изменения их статуса.
  2. Первый проход. Выполняется попытка чтения большими блоками. Все блоки, которые не удалось прочитать или чтение которых было слишком долгим маркируются как "не обрезанные" (non-trimmed).
  3. Второй проход. Выполняется чтение в обратной последовательности только тех блоков, которые не удалось прочитать на предыдущем шаге. Данная операция повторятся несколько раз с уменьшением размера блока чтения (вплоть до сектора) и переменным направлением чтения. При этом детализируется  “карта” "плохих" зон и максимально быстро считываются  "хорошие" зоны. Каждый блок читается посекторно до тех пор, пока не встретится плохой сектор. Затем этот блок читается с конца до тех пор, пока опять не встретится плохой сектор. Такой блок помечается как “обрезанный”, но не “выцарапанный” (non-scraped).
  4. “Выцарапывание” – последовательное посекторное чтение "обрезанных" блоков, при котором выполняется определенное количество попыток, после чего непрочитанные данные помечаются как окончательно “плохие” (bad-sector).
Параметр "карта" является необязательным, но именно его применение делает инструмент действительно эффективным.

В качестве источника и приемника могут быть использованы любые блочные устройства в любых сочетаниях: накопители (например, /dev/sdb), дисковые разделы (/dev/sdb1), файлы.

В параметрах вызова команды могут быть указаны (подробнее см. man ddrescue):

  • -r N - количество повторных попыток чтения поврежденных блоков;
  • -i NNN - начало зоны чтения;
  • -d - прямое чтение без использования буферов ядра;
  • -f - разрешение переписывать данные в приёмнике (используется для записи в приёмники, являющиеся устройствами).
  • -n - быстрое чтение без фазы "выцарапывания" данных;
  • -A - пометить все сбойные области как непрочитанные. Применяется для восстановления после потери источника и его последующего подключения.

Примеры:

  • Пример 1. Быстрое копирование доступных данных с дискового накопителя /dev/sdh в файл-образ file.tmp используя карту map.tmp:

    sudo ddrescue /dev/sdh file.tmp map.tmp

    GNU ddrescue 1.21
    Press Ctrl-C to interrupt
         ipos:  120034 MB, non-trimmed:        0 B,  current rate:   24576 B/s
         opos:  120034 MB, non-scraped:        0 B,  average rate:  23968 kB/s
    non-tried:        0 B,  bad-sector:        0 B,    error rate:       0 B/s
      rescued:  120034 MB,   bad areas:        0,        run time:  1h 23m 27s
    pct rescued:  100.00%, read errors:        0,  remaining time:         n/a
                                  time since last successful read:         n/a
    Finished                                     

  • Пример 2. В приведенном выше примере использован исправный диск, ошибок нет. В следующем примере при возникновении ошибок чтения данные повторно копируются с накопителя для извлечения  данных из поврежденных частей. Используются карта и файл образа, созданные при первой попытке копирования, извлеченные данные добавляются в образ, выполняются 3 попытки повторного чтения повреждённых данных, и используется прямой доступ к данным (-d):

    sudo ddrescue -f -d -r3 /dev/sdh file.tmp map.tmp

Полученный образ диска можно использовать следующим способом:

  • Перед дальнейшими манипуляциями создать резервную копию образа в еще одном файле. 
  • Исследовать образ с помощью описанного ниже инструмента testdisk - попробовать восстановить испорченную структуру дисковых разделов и файловых систем.
  • Исследовать образ с помощью описанного ниже инструмента photorec - попробовать извлечь фото и видео из испорченной файловой структуры.
  • Примонтировать дисковые разделы и изучить их содержимое. Обратите внимание - копировался диск целиком, и полученный образ может содержать внутри себя один или несколько дисковых разделов. Для монтирования дисковых разделов, находящихся в таком образе - см. команды:
    • partx и kpartx (соответственно пакеты partx и kpartx);
    • losetup (пакет klibc-utils);
    • mount - эта команда позволяет монтировать дисковый раздел, находящийся внутри образа диска, если указать смещение этого раздела от начала образа (см. соответствующую документацию).

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

  • Пример 3. Копирование отдельно дискового раздела /dev/sdb1 в новый дисковый раздел /dev/sdc1 (новый раздел должен быть создан заранее и иметь достаточный для размещения копируемых данных размер). Команды отличаются от команд в предыдущем примере только названиями источника и приёмника:

    sudo ddrescue -f /dev/sdb1 /dev/sdc1 partmap.tmp
    sudo ddrescue -f -r3 /dev/sdb1 /dev/sdc1 partmap.tmp

  • Пример 4. Перезапуск копирования после отказа и восстановления диска-источника (например, диск-источник перестал отвечать, но удалось заставить его работать после переподключения):

    • Можно указать смещение, с которого нужно продолжить копирование (для этого использовать информацию о выполненном копировании, полученную в предыдущей попытке копирования):

      sudo ddrescue -f -r3 -i 1234567000 /dev/sdb /dev/sdc map.tmp

    • Можно продолжить копирование в обратном порядке:

      sudo ddrescue -f -r3 -R /dev/sdb /dev/sdc map.tmp

    • Можно пометить сбойные области как непрочитанные для повторного чтения (рекомендуется при возобновлении копирования после потери диска):

      sudo ddrescue -f -r3 -A /dev/sdb /dev/sdc map.tmp

  • Пример 5. Отказы носителей-приемников. Если копирование прервано из-за отказа со стороны диска-приёмника (/dev/sdc), можно скопировать содержимое неисправного приёмника на третий диск (/dev/sdd) и продолжить копирование из источника:

    sudo ddrescue -f -m map.tmp /dev/sdc /dev/sdd newmap.tmp
    sudo ddrescue -f -n /dev/sdb /dev/sdd newmap.tmp
    sudo ddrescue -f -d -r3 /dev/sdb /dev/sdd newmap.tmp

Пакет testdisk: восстановление данных с поврежденных дисковых разделов

WEB-сайт разработчиков TestDisk: https://www.cgsecurity.org.
Документация от разработчиков: TestDisk Documentation.

Пакет testdisk входит в дистрибутивы Astra Linux, по умолчанию не устанавливается, и может быть установлен командой:

sudo apt install testdisk
В состав пакета входят два инструмента:

  • testdisk - восстановление повреждённой структуры дисковых разделов и поврежденной файловой структуры в этих разделах;
  • photorec - поиск и извлечение видео и изображений из повреждённой файловой структуры путём прямого доступа к данным;

Инструмент testdisk

Инструмент testdisk выполняет анализ информации, хранящейся в заданном блочном устройстве, и пытается найти известные ему структуры данных (дисковые разделы, таблицы файлов, каталоги и пр.). В качестве устройства может использоваться диск (/dev/sdb) или файл, содержащий образ диска. Инструмент может:

  • Исправлять ошибки в дисковых разделах и восстанавливать удалённые разделы.
  • Восстанавливать загрузочные секторы FAT32/NTFS из резервной копии.
  • Пересобирать загрузочные секторы FAT12/FAT16/FAT32/NTFS.
  • Исправлять таблицы FAT.
  • Исправлять таблицы MFT используя зеркала MFT.
  • Обнаруживать резервные суперблоки ext2/ext3/ext4 (далее эта информация может быть использована для восстановления файловой системы командой fsck - см.ниже).
  • Восстанавливать удаленные файлы в FAT/exFAT/NTFS/ext2.
  • Копировать файлы из удалённых дисковых разделов FAT/exFAT/NTFS/ext2/ext3/ext4.

Инструмент использует текстовый псевдографический интерфейс.

Пример запуска инструмента для анализа накопителя (как было указано ранее, можно использовать не носитель, а его образ в файле): 

sudo testdisk /dev/sdb

Программа testdisk может быть запущена без параметров - тогда будет предложено выбрать нужное устройство из подключенных дисковых устройств.

После запуска инструмента выводится информация о заданном в параметрах вызова устройстве:

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

TestDisk is free software, and
comes with ABSOLUTELY NO WARRANTY.

Select a media (use Arrow keys, then press Enter):
>Disk /dev/sdb - 8589 MB / 8192 MiB - VBOX HARDDISK

>[Proceed ] [ Quit ]

Note: Disk capacity must be correctly detected for a successful recovery.
If a disk listed above has incorrect size, check HD jumper settings, BIOS
detection, and install the latest OS patches and disk drivers.

Для продолжения нажать Enter, после чего будут предложены варианты выбора структуры носителя:

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - VBOX HARDDISK

Please select the partition table type, press Enter when done.
>[Intel ] Intel/PC partition
[EFI GPT] EFI GPT partition map (Mac i386, some x86_64...)
[Humax  ] Humax partition table
[Mac    ] Apple partition map
[None   ] Non partitioned media
[Sun    ] Sun Solaris partition
[XBox   ] XBox partition
[Return ] Return to disk selection

Note: Do NOT select 'None' for media with only a single partition. It's very
rare for a disk to be 'Non-partitioned'.

С высокой вероятностью testdisk самостоятельно определит структуру носителя, однако для восстановления желательно знать, как был размечен накопитель. В частности накопители могут быть отформатированы без создания дисковых разделов (в примере выше пункт "[None ] Non partitioned media"). Попытки поиска дисковых разделов на таком накопителе (в примере выше пункт "[Intel] Intel/PC partitition") будут бесполезной тратой времени и ресурса накопителя.

Выбрав подходящий тип накопителя, нажать Enter, после чего откроется меню возможных действий:

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - VBOX HARDDISK
CHS 1044 255 63 - sector size=512

>[ Analyse  ] Analyse current partition structure and search for lost partitions
 [ Advanced ] Filesystem Utils
 [ Geometry ] Change disk geometry
 [ Options  ] Modify options
 [ MBR Code ] Write TestDisk MBR code to first sector
 [ Delete   ] Delete all data in the partition table
 [ Quit     ] Return to disk selection

Note: Correct disk geometry is required for a successful recovery. 'Analyse'
process may give some warnings if it thinks the logical geometry is mismatched.

Первый пункт "Analize" позволяет найти дисковые разделы и восстановить таблицу дисковых разделов:

Если таблица разделов на носителе корректна, то будет показана информация о дисковых разделах. В примере выше дисковые разделы не найдены. Если разделы не найдены - следует выбрать пункт "Quick Search" ("Быстрый поиск") и нажать Enter, после чего будет выполнено "быстрое" сканирование носителя и поиск дисковых разделов. В примере ниже после завершения "Быстрого поиска" отображается информация о двух найденных разделах и предлагается настроить их параметры или посмотреть содержимое (файлы).  

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - CHS 1044 255 63
Partition Start End Size in sectors
>* Linux 0 32 33 510 14 16 8192000 [first]
P Linux 510 14 17 1044 85 1 8583168 [second]

Structure: Ok. Use Up/Down Arrow keys to select partition.
Use Left/Right Arrow keys to CHANGE partition characteristics:
*=Primary bootable P=Primary L=Logical E=Extended D=Deleted
Keys A: add partition, L: load backup, T: change type, P: list files,
Enter: to continue
ext4 blocksize=4096 Large_file Sparse_SB, 4194 MB / 4000 MiB

После выполнения необходимых действий нажать Enter, после чего произойдет возврат в список разделов:

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - CHS 1044 255 63

    Partition    Start     End   Size in sectors

1 * Linux       0 32 33  510 14 16  8192000 [first]
2 P Linux     510 14 17 1044 85  1  8583168 [second]

[ Quit ] >[Deeper Search] [ Write ]
Try to find more partitions

На этом этапе можно либо выполнить повторное "глубокое" сканирование ("Deep Search"), либо записать восстановленную информацию о разделах на носитель ("Write").

Для восстановления поврежденной файловой системы в дисковых разделах в меню возможных действий с накопителем выбрать пункт "Advanced":

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - VBOX HARDDISK
CHS 1044 255 63 - sector size=512

 [ Analyse  ] Analyse current partition structure and search for lost partitions
>[ Advanced ] Filesystem Utils
 [ Geometry ] Change disk geometry
 [ Options  ] Modify options
 [ MBR Code ] Write TestDisk MBR code to first sector
 [ Delete   ] Delete all data in the partition table
 [ Quit     ] Return to disk selection

Note: Correct disk geometry is required for a successful recovery. 'Analyse'
process may give some warnings if it thinks the logical geometry is mismatched.

После чего в списке дисковых разделов выбрать нужный раздел :

TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 8589 MB / 8192 MiB - CHS 1044 255 63

      Partition    Start      End     Size in sectors
> 1 * Linux        0 32 33  510 14 16 8192000 [first]
  2 P Linux      510 14 17 1044 85  1 8583168 [second]

[ Type ] >[Superblock] [ List ] [Image Creation] [ Quit ]
Locate ext2/ext3/ext4 backup superblock

После чего выбрать и выполнить возможные действия:

  • Type - уточнить тип дискового раздела, если он определён неверно;
  • Superblock - выполнить поиск суперблоков для восстановления файловой системы с помощью команды fsck. При этом выводится список найденных суперблоков и их параметры (номер и размер). В последней строке содержится подсказка, как передать параметры суперблоков в команду fsck:

    TestDisk 7.0, Data Recovery Utility, April 2015
    Christophe GRENIER <grenier@cgsecurity.org>
    http://www.cgsecurity.org
    
    Disk /dev/sdb - 8589 MB / 8192 MiB - CHS 1044 255 63
    
          Partition               Start      End Size in sectors
     
      Linux                    0 32 33 510 14 16 8192000 [first]
    superblock 0, blocksize=4096 [first]
    superblock 32768, blocksize=4096 [first]
    superblock 98304, blocksize=4096 [first]
    superblock 163840, blocksize=4096 [first]
    superblock 229376, blocksize=4096 [first]
    superblock 294912, blocksize=4096 [first]
    superblock 819200, blocksize=4096 [first]
    superblock 884736, blocksize=4096 [first]
    
    To repair the filesystem using alternate superblock, run
    fsck.ext4 -p -b superblock -B blocksize device
  • List - просмотреть список файлов;
  • Image Creation - создать образ раздела;

Для файловой системы Ext4, использованной в примере и рекомендованной для использования в Astra Linux, для завершения восстановления файловой системы выйти из программы testparm ("q") и выполнить команду проверки и восстановления файловой системы с предложенными параметрами одного из резервных суперблоков, например:

sudo fsck.ext4 -p -b 32768 -B 4096 /dev/sdb1

Инструмент photorec

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

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

Как и testdisk, инструмент использует текстовый псевдографический интерфейс, и  может быть запущен из командной строки командой:

sudo photorec /dev/sdb1

На стартовой странице предлагается подтвердить выбор носителя для поиска: 

PhotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

PhotoRec is free software, and
comes with ABSOLUTELY NO WARRANTY.

Select a media (use Arrow keys, then press Enter):
>Disk /dev/sdb1 - 4194 MB / 4000 MiB (RO) - VBOX HARDDISK
>[Proceed ] [ Quit ]

Note:
Disk capacity must be correctly detected for a successful recovery.
If a disk listed above has incorrect size, check HD jumper settings, BIOS
detection, and install the latest OS patches and disk drivers.

Для продолжения нажать Enter.

В открывшемся окне имеется важный пункт "File Opt" - выбор типов восстанавливаемых файлов:

PhotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb1 - 4194 MB / 4000 MiB (RO) - VBOX HARDDISK

      Partition          Start       End    Size in sectors
    Unknown             0 0 1    509 236 47 8192000 [Whole disk]
> P ext4                0 0 1    509 236 47 8192000 [first]

>[ Search ] [Options ] [File Opt] [ Quit ]
Start file recovery

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

hotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

PhotoRec will try to locate the following files

>[X] custom Own custom signatures
[X] 1cd Russian Finance 1C:Enterprise 8
[X] 3dm Rhino / openNURBS
[X] 7z 7zip archive file
[X] DB
[X] a Unix Archive/Debian package
[X] abr Adobe Brush
[X] acb Adobe Color Book
[X] accdb Access Data Base
[X] ace ACE archive
[X] ab MAC Address Book
[X] ado Adobe Duotone Options
[X] ahn Ahnenblatt
[X] aif Audio Interchange File Format
[X] all Cubase Song file: .all
[X] als Ableton Live Sets
[X] amd AlphaCAM (amd/amt/atd/att)
[X] amr Adaptive Multi-Rate
[X] apa APA Style Helper
[X] ape Monkey's Audio compressed format
[X] apple AppleSingle/AppleDouble
[X] ari ARRI Raw Video
[X] arj ARJ archive
[X] asf ASF, WMA, WMV: Advanced Streaming Format used for Audio/Video
[X] asl Adobe Layer Style
[X] asm Pro/ENGINEER Assembly
[X] atd Agelong Tree Database/Abs0luteDatabase
[X] au Sun/NeXT audio data
[X] axx AxCrypt
[X] bac Bacula backup
[X] db Berkeley DB (Little Endian)
[X] bim Broadcast Interface Module
[X] binvox Binvox Voxel File
[X] bkf MS Backup file
[X] blend blender
[X] bmp BMP bitmap image
[X] bz2 bzip2 compressed data
[X] cab Microsoft Cabinet archive
[X] caf Core Audio Format
[X] cam Casio QV Digital Camera Image
[X] catdrawing CATIA
[X] cdt cdl/cdt/cdd Concept Draw
[X] chm MS Windows HtmlHelp Data
[X] class Java Class
[X] comicdoc Comic Life
[X] cp_ MS compress file (SZDD)
[X] cow Qemu Image
[X] crw Canon Raw picture
Next
Press s to disable all file families, b to save the settings
>[ Quit ]
Return to main menu

После выбора типов файлов вернуться в предыдущее окно, выбрать нужный дисковый раздел и снова Enter.
В открывшемся окне выбрать файловую систему, в которой будет производиться поиск файлов, и снова нажать Enter:

PhotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

   P ext4 0 0 1 509 236 47 8192000 [first]

To recover lost files, PhotoRec need to know the filesystem type where the
file were stored:
>[ ext2/ext3 ] ext2/ext3/ext4 filesystem
[ Other ] FAT/NTFS/HFS+/ReiserFS/...

Выбрать область поиска ("Free" - поиск удалённых файлов, "Whole" - поиск всех файлов) и нажать Enter:

PhotoRec 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

P ext4 0 0 1 509 236 47 8192000 [first]


Please choose if all space need to be analysed:
 [ Free ] Scan for file from ext2/ext3 unallocated space only
>[ Whole ] Extract files from whole partition

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

Инструмент extundelete

Инструмент extundelete входит в дистрибутивы Astra Linux, однако по итогам его применения к использованию не рекомедуется как неработоспособный.

sudo apt install extundelete

sudo extundelete --restore-all /dev/sdh1

NOTICE: Extended attributes are not restored.
Loading filesystem metadata ... 232 groups loaded.
Loading journal descriptors ... Segmentation fault

Инструмент ext4magic

При написании статьи инструмент показал высокую эффективность и рекомендуется к применению.

Инструмент ext4magic доступен в расширенном репозитории Astra Linux Special Edition очередное обновление 1.8. После подключения репозитория инструмент может быть установлен командой:

sudo apt install ext4magic

Полная справка по возможностям инструмента доступна в man ext4magic, основные варианты применения:

  1. Попытаться извлечь все файлы из (повреждённой) файловой системы:

    sudo ext4magic -M /dev/имя_дискового_раздела

  2. Попытаться восстановить удалённые файлы из файловой системы:

    sudo ext4magic -m /dev/имя_дискового_раздела

По умолчанию извлекаемые файлы сохраняются в подкаталоге RECOVERED текущего рабочего каталога.

Графический инструмент R-Linux

Web-сайт компании R-Tools Technology: https://www.r-tt.com/ru/

R-Linux — программа для восстановления файловых систем Ext2/Ext3/Ext4, используемых в Linux и некоторых Unix операционных системах (ОС). Разработчик программы - компания R-Tools Technology (Канада). Программа восстанавливает данные с существующих логических дисков, даже если записи файлов утрачены. В программе отсутствует возможность восстановления данных по сети, а также функциональность по реконструкции дисковых массивов и восстановления находящихся на них данных.

Инструмент R-Linux может быть загружен с Web-сайта производителя и установлен командами:

wget https://www.r-studio.com/downloads/RLinux5_x64.deb
sudo apt install ./RLinux5_x64.deb
После установки программа доступна в графическом меню в разделе "Системные", или может быть запущена из командной строки командой:
sudo rlinux

После первого запуска программа предложит ознакомиться с лицензионным соглашением и подтвердить согласие с ним.

Стартовое окно программы:

Программа позволяет работать как непосредственно с носителями (дисковыми разделами), так и с образами носителей и дисковых разделов. Возможность создания образов носителей/дисковых разделов также встроена в программу.

Программа обеспечивает поиск и восстановление удаленных файлов, а в случаях, когда структура дисковых разделов изменена или повреждена, R-Link предлагает возможность сканирования накопителя для поиска сохранившихся данных и восстановления дисковых разделов. 

Помимо работы с дисковыми разделами и файловыми системами R-Linux может отображать параметры S.M.A.R.T дисковых накопителей, позволяя предсказать возможные их неисправности.