我这里有两个基于常见设置的问题。快速免责声明:我正在使用 freenas,并且还没有完全消化 ZFS 术语和 freenas 屠夫在其 UI 中的 ZFS 术语。我将接受使用终端或 Freenas UI 的答案(两者都有奖励点;))。
我有一个卷(zpool?),其中有 1 个镜像 vdev,由两个 3TB 磁盘组成。
物理移除其中一个磁盘然后将其放回去的正确步骤是什么?
可能是不明智的,我没有执行任何命令就删除了其中一个磁盘。我立即收到警报,音量已降级(预期)。在我将驱动器放回原处后,这种状态仍然存在(它似乎没有将该驱动器识别为已删除的驱动器 - 或者如果是,我也不知道如何重新连接它)。我重新启动了服务器,它现在显示该卷正常,但在“卷管理器”->“卷统计”下,其中一个驱动器的校验和列中有 182,但另一个驱动器没有(尽管我不知道事先是否存在该值) )。
最后,额外的奖励点是指向简洁的 ZFS 引物的链接,这些引物不是教科书,也不会深入研究 ZF 中无用的晦涩部分。:P
免责声明:我个人没有使用过 FreeNAS,所以有些答案可能不是规范的方法 - 请事先查阅手册。也就是说,它们是 Oracle 推荐的方式,因此其背后应该有一些道理。
zpool replace poolname olddevice newdevice
.zpool detach poolname olddevice
(用于zpool attach poolname olddevice newdevice
重新附加)。zpool offline poolname olddevice
. 如果对较大的数组进行故障排除,这很有用,我在这里只是为了完整性而写它。zpool export poolname
因此,您也可以执行以下操作zpool import poolname
来实现相同的目的,而不是重新启动。您可能必须在插入后配置磁盘(这是标准 illumos 系统上的情况),然后再导入池。如果您不想关闭池,也可以移除故障设备,然后进行更换。这样您就没有停机时间,而是重新同步。我个人总是选择第一个解决方案,除了大型阵列,因为它更安全。zpool clear poolname
删除错误消息。如果两个驱动器上都有校验和错误,则取决于具体情况。通常,ZFS 会告诉您文件是否受到影响以及哪些文件受到影响。答案加分:
man zpool
,man zfs
以及man /usr/bin/chmod
zpool、文件系统和 ACL 配置。它们也可以从 Oracle 在线获得,而且非常非常好。事实上,您几乎不需要其他任何东西,因为它们也有大量现实世界的示例(比 GNU 手册页好得多)。