我最近安装了 Ubuntu 20.04,3 个月前全新安装,安装在 SSD(无启动 ZFS)上,其中我创建了 2 个 zpools:一个“zombiepool2”4 x 2TB(不是,非常新的驱动器),第二个“zombiepool”3 x 3TB,都是用于 PLEX 服务器的 raidz1 一天早上,4 个驱动器池发出咔嗒声,一个驱动器显示为 FAILED,而池也显示为 FAILED,我的问题是:1-我将坏驱动器换成空驱动器并尝试更换它,-但驱动器状态更改为 UNAVAIL,池也更改为 UNAVAIL 2-我放回坏驱动器,并将新的空驱动器插入开放的 SATA 端口,驱动器状态更改为 FAILED,并且 zpool 也更改为 FAILED
我将在下面显示我的终端输出,但我的问题是,如果命令显示无法使用池,我该如何更换驱动器
-----sudo zpool status 池:zombiepool 状态:ONLINE 扫描:scrub 于 2023 年 4 月 1 日星期六 17:25:43 于 07:17:56 修复 0B,出现 0 个错误 配置:
NAME STATE READ WRITE CKSUM
zombiepool ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
sde ONLINE 0 0 0
sdf ONLINE 0 0 0
sdg ONLINE 0 0 0
错误:没有已知数据错误 --------sudo zpool import pool: zombiepool2 id: 2181955902400174884 state: FAULTED status: 一个或多个设备包含损坏的数据。 操作:由于设备或数据损坏,无法导入池。 该池可能在另一个系统上处于活动状态,但可以使用“-f”标志导入。 参见:https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-5E 配置:
zombiepool2 FAULTED corrupted data
sdb ONLINE
sdc FAULTED corrupted data
ata-ST32000542AS_5XW020AR ONLINE
ata-ST32000542AS_5XW01YSD ONLINE
----- 我的可用空驱动器是.........型号 WDC WD2003FYPS-27Y2B0 (04.05G11),序列号 N:WD-WCAVY6043324......... GUID 分区表,未分配空间 /dev/sdi
------sudo zpool replace -f zombiepool2 /dev/sdc /dev/sdi ------(尝试使用和不使用 -F -f)并得到无法打开“zombiepool2”:没有这样的池
我有什么办法可以拯救这个游泳池?
********添加 ZDB 命令结果 *******
zombiepool:
version: 5000
name: 'zombiepool'
state: 0
txg: 1297882
pool_guid: 17864338163211157409
errata: 0
hostid: 1372433909
hostname: 'plexzombieU'
com.delphix:has_per_vdev_zaps
vdev_children: 1
vdev_tree:
type: 'root'
id: 0
guid: 17864338163211157409
create_txg: 4
children[0]:
type: 'raidz'
id: 0
guid: 2716189947926612760
nparity: 1
metaslab_array: 132
metaslab_shift: 34
ashift: 12
asize: 9001735028736
is_log: 0
create_txg: 4
com.delphix:vdev_zap_top: 257
children[0]:
type: 'disk'
id: 0
guid: 11774464606619835771
path: '/dev/sde1'
devid: 'ata-ST3000DM001-1E6166_Z1F591S9-part1'
phys_path: 'pci-0000:01:00.1-ata-1.0'
whole_disk: 1
DTL: 273
create_txg: 4
com.delphix:vdev_zap_leaf: 258
children[1]:
type: 'disk'
id: 1
guid: 9891655099731410770
path: '/dev/sdf1'
devid: 'ata-ST3000DM001-1CH166_Z1F65800-part1'
phys_path: 'pci-0000:01:00.1-ata-2.0'
whole_disk: 1
DTL: 262
create_txg: 4
com.delphix:vdev_zap_leaf: 259
children[2]:
type: 'disk'
id: 2
guid: 15970182034792832750
path: '/dev/sdg1'
devid: 'ata-ST3000DM001-1E6166_Z1F4L1NW-part1'
phys_path: 'pci-0000:01:00.1-ata-5.0'
whole_disk: 1
DTL: 10
create_txg: 4
com.delphix:vdev_zap_leaf: 260
features_for_read:
com.delphix:hole_birth
com.delphix:embedded_data
答案1
@rfm 的评论是正确的。从您的zpool status
命令中可以明显看出,zombiepool2
并非作为 创建raidz1
。因此,您无法更换磁盘或恢复数据。
因此不幸的是,坏消息是:所有数据都zombiepool2
将丢失,除非您愿意花费一大笔钱来恢复数据。
如果您决定zombiepool2
再次重新创建,请确保将其创建为raidz1
,以便在磁盘发生故障时可以恢复数据。命令如下:
zpool create -m /path/to/mountpoint zombiepool2 raidz /dev/sda /dev/sdb /dev/sdc /dev/sdd