ddrescue 读取未试过的块

问题描述 投票:0回答:1

我试图拯救一个有读取错误的1TB磁盘。因为我没有一个空闲的1TB硬盘,我创建了一个由两个500GB硬盘组成的raid 0。维基百科 的第一次运行。

sudo ddrescue -f -n /dev/sdk /dev/md/md_test /home/user/rescue.map

ddrescue已经完成了这次运行 大约20小时后,超过7000个读取错误。 现在我试图做第二次运行。

sudo ddrescue -d -f -v -r3 /dev/sdk /dev/md/md_test /home/user/rescue.map

并读取非尝试过的块,但ddrescue给我这个。

GNU ddrescue 1.23
About to copy 1000 GBytes from '/dev/sdk' to '/dev/md/md_test'
Starting positions: infile = 0 B,  outfile = 0 B
Copy block size: 128 sectors       Initial skip size: 19584 sectors
Sector size: 512 Bytes

Press Ctrl-C to interrupt
Initial status (read from mapfile)
rescued: 635060 MB, tried: 0 B, bad-sector: 0 B, bad areas: 0

Current status
 ipos:    1000 GB, non-trimmed:        0 B,  current rate:       0 B/s
 opos:    1000 GB, non-scraped:        0 B,  average rate:       0 B/s
 non-tried:  365109 MB,  bad-sector:   0 B,    error rate:       0 B/s
 rescued:  635060 MB,   bad areas:     0,        run time:          0s
 pct rescued:   63.49%, read errors:   0,  remaining time:         n/a
                          time since last successful read:         n/a
 Copying non-tried blocks... Pass 1 (forwards)
 ddrescue: Write error: Invalid argument

我不知道这个写错是什么意思,我已经在手册上找过答案了。 任何帮助都是感激的!Thx!

recovery file-recovery
1个回答
0
投票

过了一会儿,我找到了写入错误的原因,损坏的硬盘容量是931,5G,但raid 0的总容量只有931。3G.意识到这一点,而我仔细看了一下输出的。lsblk 命令,于是我用3块500G硬盘重建raid 0阵列,ddrescue现在可以正常工作了。

所以我用3个500G的硬盘重建raid 0阵列,ddrescue现在可以正常工作了。

© www.soinside.com 2019 - 2024. All rights reserved.