这是 x86 Solaris 11.1 安装。我有两个 zfs 池 R500 和 rpool
我想将 R500 从 500GB 磁盘升级到 2TB,我已经完成了,然后使用 500GB 磁盘作为根 rpool 磁盘来替换 320GB 磁盘。
我拆下了一个 rpool 磁盘,并在对 SMI 标签和分区进行分类后连接了一个 500GB 磁盘,因为它认为该磁盘正在 R500 池中使用。它重新同步成功,但无法启动,挂在 BIOS 中验证 SMI 池。Grub 加载了剩余的 320GB 磁盘,但挂在 SunOS 横幅上,认为 500GB 上的引导块丢失,但 320GB 上的引导块损坏。因此,我移除了两个磁盘,并插入了拆下的(未更改的 320GB 磁盘),启动正常。我再次连接了 500GB 磁盘,该磁盘正在重新同步,但处于“zfs status rpool”上
它显示 320GB 磁盘既不可用又在线,我猜它指的是从同一端口移除的旧 320GB。但是我现在如何分离这个不可用的磁盘?
重新启动后它会自行解决,而我要等到 rpool 重新镀银并安装引导块后才能进行几个小时的重新启动。
root@opensolaris:~# zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
R500 464G 402G 61.8G 86% 1.00x DEGRADED -
rpool 298G 213G 85.2G 71% 1.00x DEGRADED -
root@opensolaris:~# zpool status rpool
pool: rpool
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function in a degraded state.
action: Wait for the resilver to complete.
Run 'zpool status -v' to see device specific details.
scan: resilver in progress since Thu Mar 7 12:39:22 2013
29.0G scanned out of 213G at 22.1M/s, 2h21m to go
29.0G resilvered, 13.64% done
config:
NAME STATE READ WRITE CKSUM
rpool DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
--> c5t3d0s0 UNAVAIL 0 0 0
--> c5t3d0s0 ONLINE 0 0 0
c3t1d0s0 DEGRADED 0 0 0 (resilvering)
root@opensolaris:~# cfgadm
Ap_Id Type Receptacle Occupant Condition
sata4/0 sata-port empty unconfigured ok
sata4/1::dsk/c5t1d0 disk connected configured ok
sata4/2::dsk/c5t2d0 disk connected configured ok
sata4/3::dsk/c5t3d0 disk connected configured ok
sata5/0::dsk/c3t0d0 disk connected configured ok
sata5/1::dsk/c3t1d0 disk connected configured ok
我不能运行zpool detach rpool c5t3d0s0
它怎么知道我的意思?
答案1
您可以运行zdb -C rpool
来获取每个设备的 GUID,然后在分离命令中使用它。
当然,您会看到 2 个具有相同 phys_path 的设备,但它不会显示当前状态,因此您无法 100% 确定哪个是 UNAVAIL 磁盘,哪个是 ONLINE 磁盘。您可以希望它以与我的双向 FreeBSDzdb
镜像相同的顺序显示磁盘zpool status
- /dev/ada2 然后是 /dev/ada1,或者如果您尝试删除最后一个剩余的 ONLINE 磁盘,它会阻止您。