ddrescue — утилита для восстановления данных с поврежденных носителей (жестких дисков, SSD, флешек и т.д.).

Основные команды

  1. Создание образа поврежденного диска

    sudo ddrescue -f -n /dev/sdX /путь/к/образ.img /путь/к/логу.log
    
    • -f — принудительное выполнение (если устройство занято).
    • -n — пропуск повреждённых секторов на первом проходе.
    • /dev/sdX — исходный диск (например, /dev/sdb).
    • образ.img — файл-образ для сохранения данных.
    • лог.log — файл лога (позволяет продолжить прерванное копирование).
  2. Повторный проход для восстановления сложных секторов

    sudo ddrescue -d -r3 /dev/sdX /путь/к/образ.img /путь/к/логу.log
    
    • -d — прямой доступ к диску (игнорирует кеш).
    • -r3 — 3 попытки чтения повреждённых секторов.
  3. Просмотр прогресса Во время работы ddrescue выводит статистику:

    rescued:    1234 MB — скопировано данных
    errsize:    567 MB  — повреждённые секторы
    percent:    42.5%   — прогресс
    time left:  2h 30m  — оставшееся время
    

Дополнительные опции

Опция Описание
-v Подробный вывод (verbose).
-i POS Начать с позиции POS (например, -i 1G — пропустить 1 ГиБ).
-S Пропустить уже скопированные данные (используется с логом).

Пример полного восстановления

Первый проход (быстрое копирование "лёгких" данных):

sudo ddrescue -f -n /dev/sdb /mnt/backup/disk.img /mnt/backup/disk.log

Второй проход (восстановление сложных секторов):

sudo ddrescue -d -r3 /dev/sdb /mnt/backup/disk.img /mnt/backup/disk.log

Важно! Не монтируйте диск во время работы ddrescue — это может усугубить повреждения.

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

sudo mount -o ro,loop /путь/к/образ.img /mnt/tmp

(только если образ содержит исправную файловую систему).

Совет: Для работы с NTFS/FAT используйте ntfsclone или testdisk, если ddrescue не справился.