在 Oracle® Solaris 11.2 中管理 ZFS 文件系统

退出打印视图

更新时间: 2014 年 12 月
 
 

使存储池中的设备联机和脱机

使用 ZFS 可使单个设备脱机或联机。硬件不可靠或无法正常工作时(假定该情况只是暂时的),ZFS 会继续对设备读写数据。如果该情况不是暂时的,您可以指示 ZFS 通过使设备脱机来忽略该设备。ZFS 不会向脱机设备发送任何请求。


注 - 设备无需脱机即可进行替换。

使设备脱机

可以使用 zpool offline 命令使设备脱机。如果设备是磁盘,则可以使用路径或短名称指定设备。例如:

# zpool offline tank c0t5000C500335F95E3d0

使设备脱机时,请注意以下几点:

  • 不能将池脱机到变为 UNAVAIL 的程度。例如,不能使 raidz1 配置中的两个设备脱机,也不能使顶层虚拟设备脱机。

    # zpool offline tank c0t5000C500335F95E3d0
    cannot offline c0t5000C500335F95E3d0: no valid replicas
  • 缺省情况下,OFFLINE 状态是持久性的。重新引导系统时,设备会一直处于脱机状态。

    要暂时使设备脱机,请使用 zpool offline –t 选项。例如:

    # zpool offline -t tank c1t0d0

    重新引导系统时,此设备会自动恢复到 ONLINE 状态。

  • 当设备脱机时,它不会从存储池中分离出来。如果尝试使用其他池中的脱机设备,那么即使在销毁原始池之后,也会显示类似于以下内容的消息:

    device is part of exported or potentially active ZFS pool. Please see zpool(1M)

    如果要在销毁原始存储池之后使用其他存储池中的脱机设备,请先使该设备恢复联机,然后销毁原始存储池。

    要在保留原存储池的同时使用其他存储池中的设备,还有一种方法是用另一个类似的设备替换原存储池中的现有设备。有关替换设备的信息,请参见替换存储池中的设备

查询池的状态时,已脱机的设备以 OFFLINE 状态显示。有关查询池的状态的信息,请参见查询 ZFS 存储池的状态

有关设备运行状况的更多信息,请参见确定 ZFS 存储池的运行状况

使设备联机

使设备脱机后,可以使用 zpool online 命令使其恢复联机。例如:

# zpool online tank c0t5000C500335F95E3d0

使设备联机时,已写入池中的任何数据都将与最新可用的设备重新同步。请注意,不能通过使设备联机来替换磁盘。如果使设备脱机,然后替换该设备并尝试使其联机,则设备将一直处于 UNAVAIL 状态。

如果尝试使 UNAVAIL 设备联机,则会显示类似于以下内容的消息:

# zpool online tank c0t5000C500335DC60Fd0
warning: device 'c0t5000C500335DC60Fd0' onlined, but remains in faulted state
use 'zpool clear' to restore a faulted device

您还可能会看到故障磁盘消息显示在控制台上,或者写入 /var/adm/messages 文件中。例如:

SUNW-MSG-ID: ZFS-8000-LR, TYPE: Fault, VER: 1, SEVERITY: Major
EVENT-TIME: Wed Jun 20 11:35:26 MDT 2012
PLATFORM: ORCL,SPARC-T3-4, CSN: 1120BDRCCD, HOSTNAME: tardis
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: fb6699c8-6bfb-eefa-88bb-81479182e3b7
DESC: ZFS device 'id1,sd@n5000c500335dc60f/a' in pool 'pond' failed to open.
AUTO-RESPONSE: An attempt will be made to activate a hot spare if available.
IMPACT: Fault tolerance of the pool may be compromised.
REC-ACTION: Use 'fmadm faulty' to provide a more detailed view of this event.
Run 'zpool status -lx' for more information. Please refer to the associated
reference document at http://support.oracle.com/msg/ZFS-8000-LR for the latest
service procedures and policies regarding this diagnosis.

有关更换故障设备的更多信息,请参见解决缺少设备或设备被移除的问题

您可以使用 zpool online –e 命令扩展 LUN。 缺省情况下,添加至池中的 LUN 不会扩展到其完整大小,除非启用了 autoexpand 池属性。使用 zpool online –e 命令可以自动扩展 LUN,即使 LUN 已经联机或者 LUN 目前脱机。例如:

# zpool online -e tank c0t5000C500335F95E3d0