Страница 1 из 1

ZFS спасение данных со сбойного диска

Добавлено: 2013-04-17 15:53:20
f_andrey
Имеется неприятная ситуация, был рабочий ноут, с одним винтом, и там на разделе жила себе система на ZFS. В один прекрасный момент винту стало совсем надоедать жить и теперь он постоянно стопорит загрузку, на этапе монтирования ФС, так как находит ошибки на диске.
В экстренном порядке снял образ дика

Код: Выделить всё

# file da0.img 
da0.img: x86 boot sector; partition 1: ID=0xee, active, starthead 0, startsector 1, 625142447 sectors, code offset 0x31
Но если его подцепить как md девайс, то разделов там не видно, и как добраться до раздела на котором ZFS с системой не совсем понятно.
при копирование dd были ошибки которые сыпятся и при загрузке

Код: Выделить всё

# dd if=/dev/da0 of=/home/andrey/da0.img bs=1m conv=noerror                                 
dd: /dev/da0: Input/output error
30379+0 records in
30379+0 records out
31854690304 bytes transferred in 2004.675804 secs (15890195 bytes/sec)
dd: /dev/da0: Input/output error
dd: /dev/da0: Input/output error
82721+0 records in
82721+0 records out
86739255296 bytes transferred in 5455.697882 secs (15898838 bytes/sec)
dd: /dev/da0: Input/output error
dd: /dev/da0: Input/output error
269943+0 records in
269943+0 records out
283055751168 bytes transferred in 17810.435469 secs (15892691 bytes/sec)
dd: /dev/da0: Input/output error
305241+1 records in
305241+1 records out
320068804608 bytes transferred in 20141.347178 secs (15891132 bytes/sec)
В логе это выглядит так

Код: Выделить всё

Jan  4 07:16:14 desktop kernel: (da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 03 b5 5a 00 00 00 80 00 
Jan  4 07:16:14 desktop kernel: (da0:umass-sim0:0:0:0): CAM status: SCSI Status Error
Jan  4 07:16:14 desktop kernel: (da0:umass-sim0:0:0:0): SCSI status: Check Condition
Jan  4 07:16:14 desktop kernel: (da0:umass-sim0:0:0:0): SCSI sense: MEDIUM ERROR asc:11,0 (Unrecovered read error)
Jan  4 07:16:14 desktop kernel: (da0:umass-sim0:0:0:0): Error 5, Unretryable error
Jan  4 08:13:45 desktop kernel: (da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 0a 19 14 00 00 00 80 00 
Jan  4 08:13:45 desktop kernel: (da0:umass-sim0:0:0:0): CAM status: SCSI Status Error
Jan  4 08:13:45 desktop kernel: (da0:umass-sim0:0:0:0): SCSI status: Check Condition
Jan  4 08:13:45 desktop kernel: (da0:umass-sim0:0:0:0): SCSI sense: MEDIUM ERROR asc:11,0 (Unrecovered read error)
Jan  4 08:13:45 desktop kernel: (da0:umass-sim0:0:0:0): Error 5, Unretryable error
Jan  4 11:39:40 desktop kernel: (da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 20 f3 cf 80 00 00 80 00 
Jan  4 11:39:40 desktop kernel: (da0:umass-sim0:0:0:0): CAM status: SCSI Status Error
Jan  4 11:39:40 desktop kernel: (da0:umass-sim0:0:0:0): SCSI status: Check Condition
Jan  4 11:39:40 desktop kernel: (da0:umass-sim0:0:0:0): SCSI sense: MEDIUM ERROR asc:11,0 (Unrecovered read error)
Jan  4 11:39:40 desktop kernel: (da0:umass-sim0:0:0:0): Error 5, Unretryable error
Jan  4 20:42:30 desktop kernel: GEOM: md0: corrupt or invalid GPT detected.
Jan  4 20:42:30 desktop kernel: GEOM: md0: GPT rejected -- may not be recoverable.
О кстати, а вон там и объяснение почему не видно разделов на md.

Никто не посоветует, откуда бы копнуть, чтоб либо образ починить или запустить таки ZFS на диске, сейчас он подцеплен в USB-бокс, но импортнуть ZFS не даёт, примерно так же марерясь в месадж на ошибки чтения диска :(

Re: ZFS спасение данных со сбойного диска

Добавлено: 2013-04-17 17:32:13
Bayerische
Попробовать для снятия дампа ещё http://www.gnu.org/software/ddrescue/ddrescue.html

Re: ZFS спасение данных со сбойного диска

Добавлено: 2013-04-22 22:14:18
f_andrey
Bayerische писал(а):Попробовать ...
Оно оказалось похоже в тему, в портах оно обитает в sysutils/ddrescue, в виде

Код: Выделить всё

# ddrescue -R --max-retries=15 /dev/da0 da0_resc.img da0_resc.log
оно пожужжало, так же как и обычное dd наткнулось на эти три ошибки, потом упорно попыталось считать, фик знает с каким успехом, но в итоге получился вполне сносный образ, который цепляется как md и даёт импортировать пул с какими то данными :)

А да, на будущие и может кому пригодится, пулы на разных компах похоже не стоит называть одинаково, а то для импорта похоже истользуется именно имя пула, даже если пытаться подсунуть id.