我在用着OSX 上的 ZFS并且我的 zpool 处于活动状态并且在线:
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
WD_1TB 931G 280G 651G 30% 1.00x ONLINE -
但我实际上无法安装它。
$ sudo zfs mount WD_1TB
cannot open 'WD_1TB': pool I/O is currently suspended
cannot open 'WD_1TB': pool I/O is currently suspended
或者卸载它:
$ sudo zfs unmount WD_1TB
cannot open 'WD_1TB': pool I/O is currently suspended
cannot open 'WD_1TB': pool I/O is currently suspended
甚至摧毁它:
$ sudo zpool destroy -f WD_1TB
cannot open 'WD_1TB': pool I/O is currently suspended
做的时候zpool export WD_1TB
就冻结了。
清除池中的设备错误时,也会出现错误:
$ sudo zpool clear WD_1TB
cannot clear errors for WD_1TB: I/O error
无论磁盘是否通过 USB 连接,都会发生上述情况。
有趣的是,zpool status
zpool 指向 /dev/disk1,但diskutil list
指向 /dev/disk3。
我已经通过以下方式启用了调试消息:sysctl -w zfs.vnops_osx_debug=1
并运行sudo dmesg | tail
,结果显示如下内容:
0 [Level 3] [Facility com.apple.system.fs] [ErrType IO] [ErrNo 6] [IOType Read] [PBlkNum 0] [LBlkNum 0]
0 [Level 3] [Facility com.apple.system.fs] [DevNode devfs] [MountPt /dev] [Path /dev/disk1s2]
disk1s2: media is not present.
0 [Level 3] [Facility com.apple.system.fs] [ErrType IO] [ErrNo 6] [IOType Read] [PBlkNum 512] [LBlkNum 512]
0 [Level 3] [Facility com.apple.system.fs] [DevNode devfs] [MountPt /dev] [Path /dev/disk1s2]
zfs_vnop_write(vp 0xffffff804f6303c0, offset 0x12b00000 size 0x10000
zfs_vnop_write(vp 0xffffff804f6303c0, offset 0x12b10000 size 0x10000
zfs_vnop_write(vp 0xffffff804f6303c0, offset 0x12b20000 size 0x10000
zfs_vnop_write(vp 0xffffff804f6303c0, offset 0x12b30000 size 0x10000
zfs_vnop_write(vp 0xffffff8051b031e0, offset 0x1f0000 size 0x10000
连接或断开 HDD 没有帮助。
在上述情况下,有没有简单在 OSX 上安装 HDD 的方法?
有关的:
答案1
如果执行sudo zpool clear WD_1TB
不起作用,请尝试:
$ sudo zpool clear -nFX WD_1TB
这些未记录的参数的含义是:
-F
:(未记录clear
,与 相同import
)倒回。不可导入池的恢复模式。尝试通过丢弃最后几个事务将池返回到可导入状态。并非所有损坏的池都可以使用此选项恢复。如果成功,则丢弃的事务中的数据将不可挽回地丢失。如果池可导入或已导入,则忽略此选项。-n
:(未记录的clear
,与 相同import
)与恢复选项一起使用-F
。确定是否可以将不可导入的池再次导入,但实际上并不执行池恢复。有关池恢复模式的更多详细信息,请参阅上面的 -F 选项。然后尝试再次重新导入:-X
(未记录):极端倒带。-X 的效果似乎是尝试执行一些非常冗长的操作,而这些操作永远不会完成。在某些情况下,需要重新启动才能终止该过程。-V
(未记录):UTSLing 的选项,当使用import
它时,池会被再次导入,但仍然不会尝试重新镀银。
来源:ZFS 故障池问题和man zpool
。
$ zpool import WD_1TB
如果没有帮助,请尝试以下命令删除无效的 zpool:
$ zpool list -v
$ sudo zfs unmount WD_1TB
$ sudo zpool destroy -f WD_1TB
$ zpool detach WD_1TB disk1s2
$ zpool remove WD_1TB disk1s2
$ zpool remove WD_1TB /dev/disk1s2
$ zpool set cachefile=/etc/zfs/zpool.cache WD_1TB
最后,如果没有任何帮助,请删除该文件/etc/zfs/zpool.cache
(可选)并重新启动计算机。
有关的: