我有zfsonlinux (Centos 7)和raidz1。我有麻烦了:两个磁盘都快死了。
第一个磁盘在SMART中出现Raw_Read_Error_Rate故障和Reallocated_Sector_Ct错误(磁盘已耗尽空闲扇区以重新定位数据)
第二个磁盘有Reallocated_Sector_Ct错误,但仍然有备份扇区。
我已经将第一个磁盘更改为新磁盘,zfs已开始重放。一开始速度是2MB/S,但过了一段时间,它降到了20 to /S,甚至更少,而且在几天内保持很小!
还有更多的错误:
Jul 9 06:14:09 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], FAILED SMART self-check. BACK UP DATA NOW!
Jul 9 06:14:11 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], 488 Currently unreadable (pending) sectors
Jul 9 06:14:11 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], 107 Offline uncorrectable sectors
Jul 9 06:44:08 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], FAILED SMART self-check. BACK UP DATA NOW!
Jul 9 06:44:12 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], 488 Currently unreadable (pending) sectors
Jul 9 06:44:12 shaggycat-desktop smartd[966]: Device: /dev/sdf [SAT], 107 Offline uncorrectable sectors重新启动,导入池没有帮助。
我是否可以使用dd_rescue将第二个失败的磁盘复制到新磁盘,并欺骗zpool?我怎样才能欺骗它,用新磁盘导入池呢?我使用/dev/disk/by-id/来识别zpool中的磁盘。
pool: tank
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Sun Jul 5 15:16:17 2015
59.2G scanned out of 1.70T at 81.3K/s, (scan is slow, no estimated time)
14.8G resilvered, 3.40% done
config:
NAME STATE READ WRITE CKSUM
tank DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
ata-Hitachi_HDS721010CLA332_JP2940HQ2VTTDH-part1 ONLINE 0 0 0
replacing-1 DEGRADED 0 0 1
4455585976361728304 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-Hitachi_HDS721010CLA332_JP2940HQ2VTZUH-part1
ata-ST1000DM003-1ER162_W4Y1HJTP-part1 ONLINE 0 0 0 (resilvering)
ata-WDC_WD10EALS-00Z8A0_WD-WCATR1714802-part1 ONLINE 0 0 0
ata-WDC_WD10EALS-00Z8A0_WD-WCATR1737637-part1 ONLINE 0 0 0
zpool list
NAME SIZE ALLOC FREE EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
tank 3.56T 1.70T 1.86T - - 47% 1.54x DEGRADED -我使用这些软件版本:zfs-Release-1-2.el7.centos.noarchlibzfs2-0.6.4.1-1.el7.centos.x86_64 zfs-0.6.4.1-1.el7.centos.x86_64 zfs 0.6.4.1-1.el7.centos.noarch.noarch.noarch-0.6.4.1-1.el7.centos.noarchs。
发布于 2015-10-31 18:16:30
编辑:我最初以为是镜像池,而不是雷兹。
首先,锌池替换应该工作良好。如果因为即将死掉的磁盘动作慢,那么您可以先离线/分离它,以便从其他磁盘重新生成数据,并且不会尝试从坏磁盘读取数据。但是,多个失败的磁盘不是一件好事。
导出池,使用dd救援,然后导入也应该是工作的,只要旧的死磁盘在这一点上从机器上被移除。导入通常会查看所有磁盘,以查看需要查找和导入哪些池。
而且,如果您有多个失败的驱动器,那么同时更换它们也没有什么问题,通常情况下,这样做更快,因为这样做所有磁盘只需要一次重银。当您替换联机磁盘时,它仍被用作读/写目标,直到替换完成为止。
https://serverfault.com/questions/704518
复制相似问题