我需要一点帮助来解决一个问题。我有一个 raidz1 池:
NAME STATE READ WRITE CKSUM
data1 DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
sda ONLINE 0 0 0
sde DEGRADED 0 0 0 too many errors
sdd ONLINE 0 0 0
sdf ONLINE 0 0 0 (resilvering)
mirror-1 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
errors: Permanent errors have been detected in the following files:
data1:<0x8a33>
data1:<0x2b33a>
data1:<0x2922f3>
/data1/hd1/TaskImage.bin
在我重新启动系统之前,驱动器 sdf 出现故障。读取计数器为 25。不久之后,sde 驱动器出现性能下降。目前,我在池上运行 zpool clear。它正在重新同步。
好吧,ZFS 在 /data1/hd1/TaskImage.bin 文件上显示错误。这是一个 3TB 驱动器映像。这是一个“好东西”。如果我愿意,我可以从原始驱动器中完全恢复该文件。但我不太在乎。如果我有这些文件,并且文件的某些部分已损坏,那对我来说没问题。
我目前的计划是重建整个池。所以我有一个 10TB 的驱动器,想将 ZFS 文件系统发送到另一个池。我可以在此状态下执行此操作吗?
答案1
zfs send
当遇到错误时将会失败,因此您需要在拍摄要发送的快照之前删除所有损坏的文件。
测试使用:
zfs send pool/fs@snap > /dev/null