Solaris:克隆/重新创建不受 ZFS 卷支持的 iSCSI 目标

Solaris:克隆/重新创建不受 ZFS 卷支持的 iSCSI 目标

是否可以重新创建或克隆不受 ZFS 卷支持的现有 iSCSI 目标?我之所以问这个问题,是因为在重新启动 X4500 Thumper 时,我受到了此错误的影响:http://wesunsolve.net/bugid/id/6803721同样的错误也在这里,https://defect.opensolaris.org/bz/show_bug.cgi?id=7482,但我突然无权查看该页面。

因此,执行“iscsitadm list target -v”时显示的其中一个 iSCSI 目标的 LUN 参数现在全部未知。iSCSI 目标可以从其 Windows Server 2008 启动器连接,但从未安装任何磁盘。实际数据存在于后备存储目录 (/export/pool1/iscsi/iqn.1900.fakeiqn/lun.0) 中。

以下是一些附加信息,此 iSCSI 目标是按以下方式创建的:

1)zfs创建pool1/iscsi

2)iscsitadm 修改管理员--base-directory /export/pool1/iscsi

3)iscsitadm 创建目标 --size 1T this.is.a.long.target.name.affected.by.the.bug.above

4)基本目录布局如下(ls -al /export/pool1/iscsi):

drwxr-xr-x 2 根系统 3 1 月 30 日 10:10 iqn.1900.fakeiqn.target

lrwxrwxrwx 1 root sys 87 2010 年 11 月 4 日 this.is.a.long.target.name.affected.by.the.bug.above -> /export/pool1/iscsi/iqn.1900.fakeiqn.target

如果无法重新创建或克隆此现有的 iSCSI 目标,是否可以通过其他方式检索 LUN 数据?

感谢您的帮助。

答案1

我似乎已经回答了我自己的问题。

我能够通过将数据从故障的 iSCSI 目标添加到由 ZFS 卷支持的新 iSCSI 目标来恢复数据。这些是我执行的步骤:

1)zfs创建-V 1T pool1 / new_target

2)zfs shareiscsi =在pool1 / new_target上

3)iscsitadm 列表目标 -v pool1/new_target | grep '后备存储'

4) 记下 pool1/new_target 的后备存储路径(在本例中为 /dev/zvol/rdsk/pool1/new_target)

5) 由于故障的 iSCSI 目标没有 ZFS 卷支持,因此步骤 4 无法找到故障 iSCSI 目标的备份存储。故障 iSCSI 目标的数据位于使用 iscsitadm show admin 找到的基本目录中。cd 到该目录并按照路径操作,直到找到 lun.# 文件。(/export/pool1/iscsi/iqn.1900.fakeiqn.target/lun.0)

6)dd if=/export/pool1/iscsi/iqn.1900.fakeiqn.target/lun.0 of=/dev/zvol/rdsk/pool1/new_target bs=8k(新ZFS卷的块大小为8k)

添加数据花了大约 2 天时间,但很成功,我能够从 Windows 启动器挂载新的 iSCSI 目标并查看所有数据。

相关内容