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

Материал из ALT Linux Wiki
(Новая страница: «'''ddrescue''' - инструмент для восстановления данных, копирующий данные из одного файла или бл…»)
 
(Это не работает)
 
(не показано 12 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''ddrescue''' - инструмент для восстановления данных, копирующий данные из одного файла или блочного устройства (жесткий диск, CD-ROM и т. д.) в другой, пытаясь спасти данные в случае ошибок чтения.
'''ddrescue''' - инструмент для восстановления данных, копирующий данные из одного файла или блочного устройства (жесткий диск, CD-ROM и т. д.) в другой, пытаясь спасти данные в случае ошибок чтения.
==Восстановление данных==


==Примеры использования==
==Примеры использования==
Строка 7: Строка 5:


====с /dev/sda2 в /dev/sdb2====
====с /dev/sda2 в /dev/sdb2====
'''Обратите внимание:''' следующая команда ''перезапишет'' на разделе /dev/sdb2. Если вы не хотите этого делать, создайте образ восстанавливаемого раздела.
'''Обратите внимание:''' следующая команда ''перезапишет'' все данные на разделе /dev/sdb2. Если вы не хотите этого делать, создайте образ восстанавливаемого раздела.
<pre># ddrescue -r3 /dev/sda2 /dev/sdb2 logfile
<pre># ddrescue -r3 /dev/sda2 /dev/sdb2 logfile.log
# e2fsck -v -f /dev/sdb2
# e2fsck -v -f /dev/sdb2
# mount -t ext2 -o ro /dev/sdb2 /mnt</pre>
# mount -t ext2 -o ro /dev/sdb2 /mnt</pre>
Строка 15: Строка 13:
====с /dev/sda2 в образ====
====с /dev/sda2 в образ====
<pre>
<pre>
# ddrescue -r3 /dev/sda2 image logfile
# ddrescue -r3 /dev/sda2 image.img logfile.log
</pre>
 
===Восстановление из образа===
====из образа в /dev/sda1====
<pre>
# ddrescue -f image.img /dev/sda1 logfile.log
</pre>
</pre>


Строка 25: Строка 29:
  # ddrescue -r 1 /dev/sda /dev/sdb rescue.log
  # ddrescue -r 1 /dev/sda /dev/sdb rescue.log


Источники: [http://forensicswiki.org/wiki/Ddrescue forensicswiki.org]
==Монтирование образа==
Если вы не хотите восстанавливать файлы путем записывания содержимого образа на жесткий диск, то вы можете просто смонтировать img-образ.
# mkdir /mnt/disk
# mount -o loop image.img /mnt/disk
 
==Параметры==
<pre>
-h, --help
  отобразить справку
-V, --version
  отобразить информацию о версии
-b, --block-size=<bytes>
  hardware block size of input device [512]
-B, --binary-prefixes
  show binary multipliers in numbers [default SI]
-c, --cluster-size=<blocks>
  hardware blocks to copy at a time [128]
-C, --complete-only
  do not read new data beyond logfile limits
-d, --direct
  use direct disc access for input file
-D, --synchronous
  use synchronous writes for output file
-e, --max-errors=<n>
  maximum number of error areas allowed
-F, --fill=<types>
  fill given type areas with infile data (?*/-+)
-g, --generate-logfile
  generate approximate logfile from partial copy
-i, --input-position=<pos>
  starting position in input file [0]
-n, --no-split
  do not try to split or retry error areas
-o, --output-position=<pos>
  starting position in output file [ipos]
-q, --quiet
  quiet operation
-r, --max-retries=<n>
  exit after given retries (-1=infinity) [0]
-R, --retrim
  mark all error areas as non-trimmed
-s, --max-size=<bytes>
  maximum size of data to be copied
-S, --sparse
  use sparse writes for output file
-t, --truncate
  truncate output file
-v, --verbose
  verbose operation
</pre>
За числами могут следовать значения: b = blocks, k = kB = 10^3 = 1000, Ki = KiB = 2^10 = 1024, M = 10^6, Mi = 2^20, G = 10^9, Gi = 2^30, etc...
 
==Советы==
*Считывать данные, желательно, указывая параметр <nowiki>--block-size=<bytes></nowiki> (У старых дисков 512, у новых ("advanced format") 4096). '''Проверьте!''' Если блок будет меньше, то скорость чтения будет медленнее; если больше - возможна потеря данных.[http://www.opennet.ru/tips/3054_disk_bad_sector_ddrescue.shtml]
 
Источники: [http://forensicswiki.org/wiki/Ddrescue forensicswiki.org], [http://www.opennet.ru/tips/3054_disk_bad_sector_ddrescue.shtml Форум opennet.ru], [http://superuser.com/questions/1070015/how-to-ddrescue-from-an-image superuser.com], [https://habrahabr.ru/post/233961/ habrahabr.ru]
{{Category navigation|title=Помощь по ALT Linux Rescue|category=Rescue manuals|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Помощь по ALT Linux Rescue|category=Rescue manuals|sortkey={{SUBPAGENAME}}}}
[[Category:Rescue manuals]]
[[Category:Rescue manuals]]
[[Категория:Неоконченные страницы]]
[[Категория:Неоконченные страницы]]

Текущая версия от 13:17, 14 июля 2019

ddrescue - инструмент для восстановления данных, копирующий данные из одного файла или блочного устройства (жесткий диск, CD-ROM и т. д.) в другой, пытаясь спасти данные в случае ошибок чтения.

Примеры использования

Восстановление ext2-раздела

с /dev/sda2 в /dev/sdb2

Обратите внимание: следующая команда перезапишет все данные на разделе /dev/sdb2. Если вы не хотите этого делать, создайте образ восстанавливаемого раздела.

# ddrescue -r3 /dev/sda2 /dev/sdb2 logfile.log
# e2fsck -v -f /dev/sdb2
# mount -t ext2 -o ro /dev/sdb2 /mnt

Копирование диска в образ

с /dev/sda2 в образ

# ddrescue -r3 /dev/sda2 image.img logfile.log

Восстановление из образа

из образа в /dev/sda1

# ddrescue -f image.img /dev/sda1 logfile.log

Полное восстановление жесткого диска

с /dev/sda на /dev/sdb

1. Сначала скопируйте области с ошибками...

# ddrescue -n /dev/sda /dev/sdb rescue.log

2. ...а затем, попытайтесь восстановить поврежденные сектора

# ddrescue -r 1 /dev/sda /dev/sdb rescue.log

Монтирование образа

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

# mkdir /mnt/disk
# mount -o loop image.img /mnt/disk

Параметры

-h, --help
   отобразить справку
-V, --version
   отобразить информацию о версии
-b, --block-size=<bytes>
   hardware block size of input device [512] 
-B, --binary-prefixes
   show binary multipliers in numbers [default SI] 
-c, --cluster-size=<blocks>
   hardware blocks to copy at a time [128] 
-C, --complete-only
   do not read new data beyond logfile limits 
-d, --direct
   use direct disc access for input file 
-D, --synchronous
   use synchronous writes for output file 
-e, --max-errors=<n>
   maximum number of error areas allowed 
-F, --fill=<types>
   fill given type areas with infile data (?*/-+) 
-g, --generate-logfile
   generate approximate logfile from partial copy 
-i, --input-position=<pos>
   starting position in input file [0] 
-n, --no-split
   do not try to split or retry error areas 
-o, --output-position=<pos>
   starting position in output file [ipos] 
-q, --quiet
   quiet operation 
-r, --max-retries=<n>
   exit after given retries (-1=infinity) [0] 
-R, --retrim
   mark all error areas as non-trimmed 
-s, --max-size=<bytes>
   maximum size of data to be copied 
-S, --sparse
   use sparse writes for output file 
-t, --truncate
   truncate output file 
-v, --verbose
   verbose operation

За числами могут следовать значения: b = blocks, k = kB = 10^3 = 1000, Ki = KiB = 2^10 = 1024, M = 10^6, Mi = 2^20, G = 10^9, Gi = 2^30, etc...

Советы

  • Считывать данные, желательно, указывая параметр --block-size=<bytes> (У старых дисков 512, у новых ("advanced format") 4096). Проверьте! Если блок будет меньше, то скорость чтения будет медленнее; если больше - возможна потеря данных.[1]

Источники: forensicswiki.org, Форум opennet.ru, superuser.com, habrahabr.ru