磁盘突袭

Diskraid 是一种命令行工具,可用于配置和管理独立(或廉价)磁盘(RAID)存储子系统的冗余阵列。

RAID 通常用于服务器上,以标准化和分类容错磁盘系统。 RAID 级别提供各种性能、可靠性和成本组合。 某些服务器提供三个 RAID 级别:级别 0(条带化)、级别 1(镜像)和级别 5(带化与奇偶校验)。

硬件 RAID 子系统使用逻辑单元号(LUN)将物理可寻址存储单元与彼此区分开来。 LUN 对象必须至少有一个 plex,并且可以具有任意数量的附加 plex。 每个 plex 都包含 LUN 对象上数据的副本。 可以向 LUN 对象添加和删除 Plexes。

大多数 Diskraid 命令在特定主机总线适配器(HBA)端口、发起程序适配器、发起程序门户、提供程序、子系统、控制器、端口、驱动器、LUN、目标门户、目标门户、目标门户或目标门户组上运行。 使用 SELECT 命令选择对象。 据说所选对象具有焦点。 焦点简化了常见配置任务,例如在同一子系统中创建多个 LUN。

注释

Diskraid 命令行工具仅适用于支持虚拟磁盘服务(VDS)的存储子系统。

Diskraid 命令

在 Diskraid 工具中提供以下命令。

将现有 LUN 添加到当前选定的 LUN,或将 iSCSI 目标门户添加到当前选定的 iSCSI 目标门户组。

语法

add plex lun=n [noerr]
add tpgroup tportal=n [noerr]
参数
参数 说明
Plex LUN=<n> 指定要作为 plex 添加到当前所选 LUN 的 LUN 编号。 警告:将删除作为 plex 添加的 LUN 上的所有数据。
tpgroup tportal=<n> 指定要添加到当前所选 iSCSI 目标门户组的 iSCSI 目标门户编号。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

将当前所选 LUN 的控制器端口指定列表设置为活动状态(其他控制器端口处于非活动状态),或将指定的控制器端口添加到当前所选 LUN 的现有活动控制器端口列表中,或关联当前所选 LUN 的指定 iSCSI 目标。

语法

associate controllers [add] <n>[,<n> [,…]]
associate ports [add] <n-m>[,<n-m>[,…]]
associate targets [add] <n>[,<n> [,…]]
参数
参数 说明
控制器 添加或替换与当前所选 LUN 关联的控制器列表。 仅适用于 VDS 1.0 提供程序。
港口 添加或替换与当前所选 LUN 关联的控制器端口列表。 仅适用于 VDS 1.1 提供程序。
目标 添加或替换与当前所选 LUN 关联的 iSCSI 目标列表。 仅适用于 VDS 1.1 提供程序。
如果使用 VDS 1.0 提供程序: 将指定的控制器添加到与 LUN 关联的控制器的现有列表中。 如果未指定此参数,控制器列表将替换与此 LUN 关联的控制器的现有列表。

如果使用 VDS 1.1 提供程序: 将指定的控制器端口添加到与 LUN 关联的控制器端口的现有列表中。 如果未指定此参数,控制器端口列表将替换与此 LUN 关联的控制器端口的现有列表。

<n>[,<n> [, ...]] 控制器一起使用,目标 参数。 指定要设置为活动或关联的控制器或 iSCSI 目标的编号。
<n-m>[,<n-m>[,…]] 端口 参数一起使用。 指定使用控制器编号(n)和端口号(m) 对设置活动的控制器端口。

示例

若要将端口关联并添加到使用 VDS 1.1 提供程序的 LUN:

DISKRAID> SEL LUN 5
LUN 5 is now the selected LUN.

DISKRAID> ASSOCIATE PORTS 0-0,0-1
Controller port associations changed.
(Controller ports active after this command: Ctlr 0 Port 0, Ctlr 0 Port 1)

DISKRAID> ASSOCIATE PORTS ADD 1-1
Controller port associations changed.
(Controller ports active after this command: Ctlr 0 Port 0, Ctlr 0 Port 1, Ctlr 1 Port 1)

自动魔术

设置或清除向提供程序提供有关如何配置 LUN 的提示的标志。 与无参数一起使用时,自动作将显示标志列表。

语法

automagic {set | clear | apply} all <flag=value> [<flag=value> [...]]
参数
参数 说明
将指定的标志设置为指定的值。
清除 清除指定的标志。 所有 关键字清除所有自动标记。
应用 将当前标志应用于所选 LUN。
<flag> 标志由三个字母缩略词标识,包括:
  • FCR - 需要快速崩溃恢复
  • FTL - 容错
  • MSR - 大部分是读取
  • MXD - 最大驱动器数
  • MXS - 预期最大大小
  • ORA - 最佳读取对齐方式
  • ORS - 最佳读取大小
  • OSR - 针对顺序读取进行优化
  • OSW - 针对顺序写入进行优化
  • OWA - 最佳写入对齐
  • OWS - 最佳写入大小
  • RBP - 重新生成优先级
  • RBV - 读回验证已启用
  • RMP - 已启用重新映射
  • STS - 条带大小
  • WTC - 已启用 Write-Through 缓存
  • YNK - 可移动

从当前选定的 LUN 中删除 plex。 plex 及其包含的数据不会保留,驱动器盘区可能会被回收。

谨慎

在使用此命令之前,必须先选择镜像 LUN。 将删除 plex 上的所有数据。 不保证原始 LUN 中包含的所有数据保持一致。

语法

break plex=<plex_number> [noerr]
参数
参数 说明
指定要删除的 plex 的数目。 plex 及其包含的数据不会保留,并且将回收此 plex 使用的资源。 LUN 中包含的数据不能保证一致。 如果要保留此 plex,请使用卷影复制服务(VSS)。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

设置质询握手身份验证协议(CHAP)共享机密,以便 iSCSI 发起方和 iSCSI 目标可以相互通信。

语法

chap initiator set secret=[<secret>] [target=<target>]
chap initiator remember secret=[<secret>] target=<target>
chap target set secret=[<secret>] [initiator=<initiatorname>]
chap target remember secret=[<secret>] initiator=<initiatorname>
参数
参数 说明
发起程序集 设置在发起程序对目标进行身份验证时用于相互 CHAP 身份验证的本地 iSCSI 发起程序服务中的共享机密。
发起程序记住 将 iSCSI 目标的 CHAP 机密传达给本地 iSCSI 发起程序服务,以便发起程序服务可以使用机密在 CHAP 身份验证期间向目标进行身份验证。
目标集 在目标对发起程序进行身份验证时,在当前选定的 iSCSI 目标中设置用于 CHAP 身份验证的共享机密。
目标记住 将 iSCSI 发起程序的 CHAP 机密传递给当前焦点中的 iSCSI 目标,以便目标可以使用机密在相互 CHAP 身份验证期间向发起程序进行身份验证。
秘密 指定要使用的机密。 如果为空,则会清除机密。
目标 指定要与机密关联的当前所选子系统中的目标。 在发起程序上设置机密并退出时,此选项是可选的,表示该机密将用于尚未具有关联机密的所有目标。
发起人名称 指定要与机密关联的发起程序 iSCSI 名称。 在目标上设置机密并退出时,此选项是可选的,指示该机密将用于尚未具有关联机密的所有发起程序。

创造

在当前选定的子系统上创建新的 LUN 或 iSCSI 目标,或在当前选定的目标上创建目标门户组。 可以使用 Diskraid 列表 命令查看实际绑定。

语法

create lun simple [size=<n>] [drives=<n>] [noerr]
create lun stripe [size=<n>] [drives=<n, n> [,...]]  [stripesize=<n>] [noerr]
create lun raid [size=<n>] [drives=<n, n> [,...]] [stripesize=<n>] [noerr]
create lun mirror [size=<n>] [drives=<n, n> [,...]] [stripesize=<n>] [noerr]
create lun automagic size=<n> [noerr]
create target name=<name> [iscsiname=<iscsiname>] [noerr]
create tpgroup [noerr]
参数
参数 说明
简单 创建一个简单的 LUN。
条纹 创建条带化 LUN。
袭击 创建具有奇偶校验的条带 LUN。
镜子 创建镜像 LUN。
自动魔术 使用当前生效的 自动 提示创建 LUN。 有关详细信息,请参阅本文中的 自动 子命令。
尺寸= 指定 LUN 总大小(以兆字节为单位)。 必须指定 大小= 或 驱动器= 参数。 它们也可以一起使用。 如果未指定 size= 参数,则创建的 LUN 将是所有指定驱动器允许的最大大小。

提供程序通常创建至少与请求的大小一样大的 LUN,但在某些情况下,提供程序可能需要向上舍入到下一个最大大小。 例如,如果将大小指定为 .99 GB,并且提供程序只能分配 GB 磁盘区,则生成的 LUN 将为 1 GB。 若要使用其他单位指定大小,请在大小后立即使用以下识别后缀之一:

  • B - 字节
  • KB - 千字节
  • MB - 兆字节
  • GB - 千兆字节
  • TB - TB
  • PB - PB。
驱动器= 指定用于创建 LUN 的驱动器的 drive_number。 必须指定 大小= 或 驱动器= 参数。 它们也可以一起使用。 如果未指定 size= 参数,则创建的 LUN 是所有指定驱动器允许的最大大小。 如果指定了 size= 参数,提供程序将从指定的驱动器列表中选择驱动器来创建 LUN。 提供程序将尝试按照指定的顺序使用驱动器(如果可能)。
stripesize= 指定 条带raid LUN 的大小(以兆字节为单位)。 创建 LUN 后,无法更改条带化。 若要使用其他单位指定大小,请在大小后立即使用以下识别后缀之一:
  • B - 字节
  • KB - 千字节
  • MB - 兆字节
  • GB - 千兆字节
  • TB - TB
  • PB - PB。
目标 在当前选定的子系统上创建新的 iSCSI 目标。
姓名 提供目标的友好名称。
iSCSI 名称 提供目标的 iSCSI 名称,并可以省略提供程序生成名称。
TPP组 在当前选定的目标上创建新的 iSCSI 目标门户组。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

删除

删除当前选定的 LUN、iSCSI 目标(只要没有任何与 iSCSI 目标关联的 LUN)或 iSCSI 目标门户组。

语法

delete lun [uninstall] [noerr]
delete target [noerr]
delete tpgroup [noerr]
参数
参数 说明
删除当前选定的 LUN 及其上的所有数据。
卸载 指定删除 LUN 之前,将清理与 LUN 关联的本地系统上的磁盘。
目标 如果没有与目标关联的 LUN,则删除当前选定的 iSCSI 目标。
TPP组 删除当前选定的 iSCSI 目标门户组。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

细节

显示有关指定类型的当前选定对象的详细信息。

语法

detail {hbaport | iadapter | iportal | provider | subsystem | controller | port | drive | lun | tportal | target | tpgroup} [verbose]
参数
参数 说明
HBAport 列出有关当前所选主机总线适配器 (HBA) 端口的详细信息。
iadapter 适配器 列出有关当前选定的 iSCSI 发起程序适配器的详细信息。
iPortal 列出有关当前选定的 iSCSI 发起程序门户的详细信息。
提供程序 列出有关当前所选提供程序的详细信息。
子系统 列出有关当前所选子系统的详细信息。
控制器 列出有关当前所选控制器的详细信息。
港口 列出有关当前所选控制器端口的详细信息。
驱动器 列出有关当前所选驱动器的详细信息,包括占用的 LUN。
列出有关当前所选 LUN 的详细信息,包括参与驱动器。 输出略有不同,具体取决于 LUN 是光纤通道还是 iSCSI 子系统的一部分。 如果“未掩码主机”列表仅包含星号,则表示 LUN 已取消屏蔽到所有主机。
tportal 列出有关当前所选 iSCSI 目标门户的详细信息。
目标 列出有关当前选定的 iSCSI 目标的详细信息。
TPP组 列出有关当前选定的 iSCSI 目标门户组的详细信息。
冗长 仅用于 LUN 参数。 列出其他信息,包括其困惑。

取消关联

将指定的控制器端口列表设置为当前所选 LUN 的非活动状态(其他控制器端口不受影响),或取消关联当前所选 LUN 的指定 iSCSI 目标列表。

语法

dissociate controllers <n> [,<n> [,...]]
dissociate ports <n-m>[,<n-m>[,…]]
dissociate targets <n> [,<n> [,…]]
参数
参数 说明
控制器 从与当前所选 LUN 关联的控制器列表中删除控制器。 仅适用于 VDS 1.0 提供程序。
港口 从与当前所选 LUN 关联的控制器端口列表中删除控制器端口。 仅适用于 VDS 1.1 提供程序。
目标 从与当前选定的 LUN 关联的 iSCSI 目标列表中删除目标。 仅适用于 VDS 1.1 提供程序。
<n> [,<n> [,…]] 用于 控制器目标 参数。 指定要设置为非活动或取消关联的控制器或 iSCSI 目标的数量。
<n-m>[,<n-m>[,…]] 用于 端口 参数。 指定使用控制器编号(n) 和端口号(m) 对设置为非活动状态的控制器端口。

示例

DISKRAID> SEL LUN 5
LUN 5 is now the selected LUN.

DISKRAID> ASSOCIATE PORTS 0-0,0-1
Controller port associations changed.
(Controller ports active after this command: Ctlr 0 Port 0, Ctlr 0 Port 1)

DISKRAID> ASSOCIATE PORTS ADD 1-1
Controller port associations changed.
(Controller ports active after this command: Ctlr 0 Port 0, Ctlr 0 Port 1, Ctlr 1 Port 1)

DISKRAID> DISSOCIATE PORTS 0-0,1-1
Controller port associations changed.
(Controller ports active after this command: Ctlr 0 Port 1)

退出

退出 Diskraid。

语法

exit

扩展

通过将扇区添加到 LUN 的末尾来扩展当前选定的 LUN。 并非所有提供程序都支持扩展 LUN。 不扩展 LUN 中包含的任何卷或文件系统。 扩展 LUN 后,应使用 DiskPart extend 命令扩展关联的磁盘结构。

语法

extend lun [size=<LUN_size>] [drives=<drive_number>, [<drive_number>, ...]] [noerr]
参数
参数 说明
大小 指定扩展 LUN 的大小(以兆字节为单位)。 必须指定 大小<drive> 参数。 它们也可以一起使用。 如果未指定 size= 参数,则 LUN 将扩展为所有指定驱动器允许的最大大小。 如果指定了 size= 参数,提供程序将从 drives= 参数指定的列表中选择驱动器来创建 LUN。 若要使用其他单位指定大小,请在大小后立即使用以下识别后缀之一:
  • B - 字节
  • KB - 千字节
  • MB - 兆字节
  • GB - 千兆字节
  • TB - TB
  • PB - PB。
驱动器= 指定创建 LUN 时要使用的驱动器 <drive_number>。 必须指定 大小<drive> 参数。 它们也可以一起使用。 如果未指定 size= 参数,则创建的 LUN 是所有指定驱动器允许的最大大小。 提供程序按指定的顺序使用驱动器(如果可能)。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

flushcache 刷新缓存

清除当前所选控制器上的缓存。

语法

flushcache controller

帮助

显示所有 Diskraid 命令的列表。

语法

help

importtarget

检索或设置为当前所选子系统设置的当前卷影复制服务(VSS)导入目标。

语法

importtarget subsystem [set target]
参数
参数 说明
设置目标 如果指定,请将当前选定的目标设置为当前所选子系统的 VSS 导入目标。 如果未指定,该命令将检索为当前所选子系统设置的当前 VSS 导入目标。

引发

检索有关本地 iSCSI 发起程序的信息。

语法

initiator

invalidatecache

使当前所选控制器上的缓存失效。

语法

invalidatecache controller

lb策略

设置当前所选 LUN 上的负载均衡策略。

语法

lbpolicy set lun type=<type> [paths=<path>-{primary | <weight>}[,<path>-{primary | <weight>}[,…]]]
lbpolicy set lun paths=<path>-{primary | <weight>}[,<path>-{primary | <weight>}[,…]]
参数
参数 说明
类型 指定负载均衡策略。 如果未指定类型,则必须指定 路径 参数。 Type 可以是下列类型之一:
  • 故障转移 - 使用一个主路径,其他路径是备份路径。
  • ROUNDROBIN - 以轮循机制方式使用所有路径,从而按顺序尝试每个路径。
  • SUBSETROUNDROBIN - 以轮循机制方式使用所有主要路径;仅当所有主路径失败时,才使用备份路径。
  • DYNLQD - 使用具有最小活动请求数的路径。
  • 加权 - 使用权重最低的路径(必须为每个路径分配权重)。
  • LEASTBLOCKS - 使用具有最小块的路径。
  • VENDORPECIFIC - 使用特定于供应商的策略。
路径 指定路径是 还是具有特定的 <weight>。 未指定的任何路径都隐式设置为备份。 列出的任何路径都必须是当前所选 LUN 的路径之一。

列表

显示指定类型的对象列表。

语法

list {hbaports | iadapters | iportals | providers | subsystems | controllers | ports | drives | LUNs | tportals | targets | tpgroups}
参数
参数 说明
HBAports 列出有关 VDS 已知的所有 HBA 端口的摘要信息。 当前选定的 HBA 端口由星号 \.
i适配器 列出有关 VDS 已知的所有 iSCSI 发起程序适配器的摘要信息。 当前选定的发起程序适配器由星号 \.
i门户 列出有关当前所选发起程序适配器中所有 iSCSI 发起程序门户的摘要信息。 当前选定的发起程序门户由星号 \.
供应商 列出有关 VDS 已知的每个提供程序的摘要信息。 当前选定的提供程序由星号 \.
子系统 列出有关系统中每个子系统的摘要信息。 当前选定的子系统由星号 \.
控制器 列出有关当前所选子系统中每个控制器的摘要信息。 当前选定的控制器由星号 \.
港口 列出有关当前所选控制器中每个控制器端口的摘要信息。 当前选定的端口由星号 \.
驱动器 列出有关当前所选子系统中每个驱动器的摘要信息。 当前选定的驱动器由星号 \.
LUN 列出有关当前所选子系统中每个 LUN 的摘要信息。 当前选定的 LUN 由星号 \.
t门户 列出有关当前所选子系统中所有 iSCSI 目标门户的摘要信息。 当前选择的目标门户由星号 \.
目标 列出有关当前所选子系统中所有 iSCSI 目标的摘要信息。 当前选定的目标由星号 \.
tpgroups 列出有关当前所选目标中的所有 iSCSI 目标门户组的摘要信息。 当前选定的门户组由星号 \.

登录

将指定的 iSCSI 发起程序适配器记录到当前选定的 iSCSI 目标中。

语法

login target iadapter=<iadapter> [type={manual | persistent | boot}] [chap={none | oneway | mutual}] [iportal=<iportal>] [tportal=<tportal>] [<flag> [<flag> […]]]
参数
参数 说明
类型 指定要执行的登录类型:手动持久性。 如果未指定,将执行手动登录。
手动 手动登录。 还有一个 启动 选项,用于将来的开发,目前未使用。
永久 重启计算机时,自动使用相同的登录名。
指定要使用的 CHAP 身份验证的类型:单向 CHAP 或 相互 CHAP;如果未指定,则不会使用任何身份验证。
tportal 指定要用于登录的当前所选子系统中的可选目标门户。
iPortal 指定用于登录的指定发起程序适配器中的可选发起程序门户。
<flag> 由三字母首字母缩写词标识:
  • IPS - 需要 IPsec
  • EMP - 启用多路径
  • EHD - 启用标头摘要
  • EDD - 启用数据摘要

注销

将指定的 iSCSI 发起程序适配器从当前选定的 iSCSI 目标中记录出来。

语法

logout target iadapter= <iadapter>
参数
参数 说明
iadapter 适配器 指定要从中注销的登录会话的发起程序适配器。

维护

对指定类型的当前所选对象执行维护作。

语法

maintenance <object operation> [count=<iteration>]
参数
参数 说明
<object> 指定要对其执行作的对象的类型。 对象 类型可以是 子系统控制器端口、驱动器LUN
<operation> 指定要执行的维护作。 类型可以 旋转自旋闪烁 或 ping ping。 必须指定
计数= 指定重复 的次数。 这通常用于 闪烁蜂鸣声,或 ping

姓名

将当前所选子系统、LUN 或 iSCSI 目标的友好名称设置为指定名称。

语法

name {subsystem | lun | target} [<name>]
参数
参数 说明
<name> 指定子系统、LUN 或目标的名称。 名称长度必须小于 64 个字符。 如果未提供任何名称,则会删除现有名称(如果有)。

离线

将指定类型的当前选定对象的状态设置为 脱机

语法

offline <object>
参数
参数 说明
<object> 指定要对其执行此作的对象的类型。 类型可以是:子系统控制器驱动器LUN端口

在线

将指定类型的选定对象的状态设置为 联机。 如果对象 hbaport,将当前所选 HBA 端口的路径的状态更改为 联机

语法

online <object>
参数
参数 说明
<object> 指定要对其执行此作的对象的类型。 类型可以是:hbaport子系统控制器驱动器LUN

恢复

执行必要的作,例如重新同步或热稀疏,以修复当前选定的容错 LUN。 例如,RECOVER 可能会导致热备用绑定到具有故障磁盘或其他磁盘盘区重新分配的 RAID 集。

语法

recover <lun>

重新枚举

恢复指定类型的对象。 如果使用扩展 LUN 命令,则必须使用刷新命令来更新磁盘大小,然后再使用恢复命令。

语法

reenumerate {subsystems | drives}
参数
参数 说明
子系统 查询提供程序以发现当前所选提供程序中添加的任何新子系统。
驱动器 查询内部 I/O 总线,以发现当前所选子系统中添加的任何新驱动器。

刷新

刷新当前所选提供程序的内部数据。

语法

refresh provider

雷姆

用于注释脚本。

语法

Rem <comment>

删除

从当前选定的目标门户组中删除指定的 iSCSI 目标门户。

语法

remove tpgroup tportal=<tportal> [noerr]
参数
参数 说明
tpgroup tportal=<tportal> 指定要删除的 iSCSI 目标门户。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

取代

将指定的驱动器替换为当前选定的驱动器。 指定的驱动器可能不是当前选定的驱动器。

语法

replace drive=<drive_number>
参数
参数 说明
驱动器= 指定要替换的驱动器的 <drive_number>

重置

重置当前选定的控制器或端口。

语法

reset {controller | port}
参数
参数 说明
控制器 重置控制器。
港口 重置端口。

选择

显示或更改当前选定的对象。

语法

select {hbaport | iadapter | iportal | provider | subsystem | controller | port | drive | lun | tportal | target | tpgroup } [<n>]
参数
参数 说明
对象 指定要选择的对象类型,包括:提供程序子系统控制器驱动器LUN
HBAport [<n>] 将焦点设置为指定的本地 HBA 端口。 如果未指定 HBA 端口,该命令将显示当前选定的 HBA 端口(如果有)。 指定无效的 HBA 端口索引会导致没有焦点中的 HBA 端口。 选择 HBA 端口会取消选择任何选定的发起程序适配器和发起程序门户。
iadapter 适配器 [<n>] 将焦点设置为指定的本地 iSCSI 发起程序适配器。 如果未指定任何发起程序适配器,该命令将显示当前选定的发起程序适配器(如果有)。 指定无效的发起程序适配器索引会导致无焦点发起程序适配器。 选择发起程序适配器会取消选择任何选定的 HBA 端口和发起程序门户。
iPortal [<n>] 将焦点设置为所选 iSCSI 发起程序适配器中的指定本地 iSCSI 发起程序门户。 如果未指定发起程序门户,该命令将显示当前选定的发起程序门户(如果有)。 指定无效的发起程序门户索引会导致没有选择的发起程序门户。
供应商 [<n>] 将焦点设置为指定的提供程序。 如果未指定提供程序,该命令将显示当前选定的提供程序(如果有)。 指定无效的提供程序索引会导致无焦点提供程序。
子系统 [<n>] 将焦点设置为指定的子系统。 如果未指定子系统,该命令将显示具有焦点的子系统(如果有)。 指定无效的子系统索引会导致无焦点子系统。 选择子系统会隐式选择其关联的提供程序。
控制器 [<n>] 将焦点设置为当前所选子系统中的指定控制器。 如果未指定控制器,该命令将显示当前选定的控制器(如果有)。 指定无效的控制器索引会导致无焦点控制器。 选择控制器会取消选择任何选定的控制器端口、驱动器、LUN、目标门户、目标和目标门户组。
端口 [<n>] 将焦点设置为当前所选控制器中的指定控制器端口。 如果未指定任何端口,该命令将显示当前选定的端口(如果有)。 指定无效的端口索引会导致未选择任何端口。
驱动器 [<n>] 将焦点设置为当前所选子系统内的指定驱动器或物理轴。 如果未指定驱动器,该命令将显示当前选定的驱动器(如果有)。 指定无效的驱动器索引会导致无焦点驱动器。 选择驱动器会取消选择任何选定的控制器、控制器端口、LUN、目标门户、目标和目标门户组。
[<n>] 将焦点设置为当前所选子系统中的指定 LUN。 如果未指定 LUN,该命令将显示当前选定的 LUN(如果有)。 指定无效的 LUN 索引会导致未选择任何 LUN。 选择 LUN 会取消选择任何选定的控制器、控制器端口、驱动器、目标门户、目标和目标门户组。
tportal [<n>] 将焦点设置为当前所选子系统中的指定 iSCSI 目标门户。 如果未指定目标门户,该命令将显示当前选择的目标门户(如果有)。 指定无效的目标门户索引将导致未选择的目标门户。 选择目标门户会取消选择任何控制器、控制器端口、驱动器、LUN、目标和目标门户组。
目标 [<n>] 将焦点设置为当前所选子系统中的指定 iSCSI 目标。 如果未指定目标,该命令将显示当前选定的目标(如果有)。 指定无效的目标索引会导致没有选定的目标。 选择目标会取消选择任何控制器、控制器端口、驱动器、LUN、目标门户和目标门户组。
TPP组 [<n>] 将焦点设置为当前所选 iSCSI 目标中的指定 iSCSI 目标门户组。 如果未指定目标门户组,该命令将显示当前选定的目标门户组(如果有)。 指定无效的目标门户组索引会导致没有焦点目标门户组。
[<n>] 指定要选择的 <object number>。 如果指定的 <object number> 无效,则会清除指定类型对象的任何现有选择。 如果未指定 <object number>,则显示当前对象。

设置标志

将当前选定的驱动器设置为热备用。 热备用不能用于普通 LUN 绑定作。 它们仅用于错误处理。 驱动器当前不得绑定到任何现有 LUN。

语法

setflag drive hotspare={true | false}
参数
参数 说明
选择当前选定的驱动器作为热备用。
取消选择当前选定的驱动器作为热备用。

收缩

减小所选 LUN 的大小。

语法

shrink lun size=<n> [noerr]
参数
参数 说明
大小 指定所需的空间量(MB),以减小 LUN 的大小。 若要使用其他单位指定大小,请在大小后立即使用以下识别后缀之一:
  • B - 字节
  • KB - 千字节
  • MB - 兆字节
  • GB - 千兆字节
  • TB - TB
  • PB - PB。
诺尔 仅用于脚本编写。 遇到错误时,Diskraid 会继续处理命令,就像错误未发生一样。

待机

将当前所选主机总线适配器 (HBA) 端口的路径的状态更改为 STANDBY。

语法

standby hbaport
参数
参数 说明
HBAport 将当前所选主机总线适配器 (HBA) 端口的路径的状态更改为 STANDBY。

揭露

使当前选定的 LUN 可从指定的主机访问。

语法

unmask lun {all | none | [add] wwn=<hexadecimal_number> [;<hexadecimal_number> [;…]] | [add] initiator=<initiator>[;<initiator>[;…]]} [uninstall]
参数
参数 说明
所有 指定应从所有主机访问 LUN。 但是,无法将 LUN 取消屏蔽到 iSCSI 子系统中的所有目标。

在运行 unmask lun all 命令之前,必须注销目标。

没有 指定 LUN 不应可供任何主机访问。

在运行 unmask lun none 命令之前,必须注销目标。

指定指定的主机必须添加到可从中访问此 LUN 的现有主机列表。 如果未指定此参数,提供的主机列表将替换可从中访问此 LUN 的现有主机列表。
WWN= 指定十六进制数字的列表,该列表表示应从中访问 LUN 或主机的世界范围名称。 若要屏蔽/取消掩码到光纤通道子系统中的一组特定主机,可以为感兴趣的主机上的端口键入以分号分隔的 WWN 列表。
发起程序= 指定当前所选 LUN 应可访问的 iSCSI 发起程序的列表。 若要屏蔽/取消掩码到 iSCSI 子系统中的特定主机集,可以为感兴趣的主机上的发起程序键入以分号分隔的 iSCSI 发起程序名称列表。
卸载 如果指定,则卸载与本地系统上的 LUN 关联的磁盘,然后再屏蔽 LUN。

编写 Diskraid 脚本

可以在运行受支持版本的 Windows Server 的任何计算机上(与关联的 VDS 硬件提供程序)编写 Diskraid 脚本。 若要调用 Diskraid 脚本,请在命令提示符处键入:

diskraid /s <script.txt>

默认情况下,Diskraid 停止处理命令,并在脚本中出现问题时返回错误代码。 若要继续运行脚本并忽略错误,请在命令中包含 noerr 参数。 这允许使用单个脚本删除子系统中的所有 LUN,而不考虑 LUN 总数的有用做法。 并非所有命令都支持 noerr 参数。 无论是否包含 noerr 参数,都始终在命令语法错误上返回错误。

Diskraid 错误代码

错误代码 错误说明
0 未发生错误。 整个脚本运行而不失败。
1 发生致命异常。
2 Diskraid 命令行中指定的参数不正确。
3 Diskraid 无法打开指定的脚本或输出文件。
4 Diskraid 使用的服务之一返回了失败。
5 发生命令语法错误。 脚本失败,因为对象未正确选择或无效,无法与该命令一起使用。

示例

若要查看计算机上子系统 0 的状态,请键入:

diskraid

按 ENTER 并显示如下所示的输出:

Microsoft Diskraid version 5.2.xxxx
Copyright (©) 2003 Microsoft Corporation
On computer: COMPUTER_NAME

若要选择子系统 0,请在 Diskraid 提示符下键入以下内容:

select subsystem 0

按 ENTER 并显示如下所示的输出:

Subsystem 0 is now the selected subsystem.

DISKRAID> list drives

  Drive ###  Status      Health          Size      Free    Bus  Slot  Flags
  ---------  ----------  ------------  --------  --------  ---  ----  -----
  Drive 0    Online      Healthy         107 GB    107 GB    0     1
  Drive 1    Offline     Healthy          29 GB     29 GB    1     0
  Drive 2    Online      Healthy         107 GB    107 GB    0     2
  Drive 3    Not Ready   Healthy          19 GB     19 GB    1     1

若要退出 Diskraid,请在 Diskraid 提示符处键入以下内容:

exit