AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 500836
Accepted
nagylzs
nagylzs
Asked: 2013-04-19 22:47:36 +0800 CST2013-04-19 22:47:36 +0800 CST 2013-04-19 22:47:36 +0800 CST

zpool 中同名的两个设备,不能替换

  • 772

今天我在服务器上发现了这个(FreeBSD 8.2 STABLE):

NAME STATE READ WRITE CKSUM
data DEGRADED 1.38K 0 0
  raidz1-0 DEGRADED 1.38K 0 0
    ad10 ONLINE 1.38K 0 0
    ad12 ONLINE 0 0 0
    ad14 ONLINE 0 0 0
    ad16 REMOVED 0 0 0 

我迅速拔下错误的硬盘并放入一个新的。之后,我输入了这个倒霉的命令:

zpool add data ad16

结果是池中出现了一个新的 ad16 设备:

NAME        STATE     READ WRITE CKSUM
data        DEGRADED     0     0     0
  raidz1-0  DEGRADED     0     0     0
    ad10    ONLINE       0     0     0
    ad12    ONLINE       0     0     0
    ad14    ONLINE       0     0     0
    ad16    FAULTED      0     0     0  corrupted data
  ad16      ONLINE       0     0     0

第一个 ad16 设备出现故障并且是 data/raidz1-0 卷的一部分。第二个 ad16 设备在线,不属于任何卷。问题是它们具有相同的名称,因此替换命令不起作用:

gw# zpool replace -f data ad16 ad16
invalid vdev specification
the following errors must be manually repaired:
/dev/ad16 is part of active pool 'data'

我认为我应该先删除联机 ad16 磁盘,然后才能更换故障的 ad16 磁盘。但这不起作用,因为我无法将其置于离线状态,也无法将其删除:

gw# zpool offline data ad16
gw# zpool status
  pool: data
 state: DEGRADED
status: One or more devices has been taken offline by the administrator.
    Sufficient replicas exist for the pool to continue functioning in a
    degraded state.
action: Online the device using 'zpool online' or replace the device with
    'zpool replace'.
 scan: scrub in progress since Thu Apr 18 03:23:06 2013
    26.1G scanned out of 3.13T at 50.7M/s, 17h52m to go
    0 repaired, 0.81% done
config:

    NAME        STATE     READ WRITE CKSUM
    data        DEGRADED     0     0     0
      raidz1-0  DEGRADED     0     0     0
        ad10    ONLINE       0     0     0
        ad12    ONLINE       0     0     0
        ad14    ONLINE       0     0     0
        ad16    OFFLINE      0     0     0
      ad16      ONLINE       0     0     0

errors: No known data errors
gw# zpool remove data ad16
cannot remove ad16: only inactive hot spares, cache, top-level, or log devices can be removed

我猜想“offline ad16”命令是针对 FAULTED 设备的。但我想离线另一个。我还尝试将系统引导到单用户模式,并删除了这个新磁盘,但这导致两个 ad16 设备都不可用,并且整个池不可用(这很奇怪,因为有足够的磁盘使其工作.. .)

zpool
  • 2 2 个回答
  • 2048 Views

2 个回答

  • Voted
  1. Best Answer
    USD Matt
    2013-04-19T23:32:30+08:002013-04-19T23:32:30+08:00

    'zpool add' 命令用于将新设备 (vdev) 添加到池中。当您最初运行该命令时,您向池中添加了一个新的 vdev(仅包含 ad16)。您从 4 磁盘 raidz 开始,其中一个磁盘发生故障,但现在您有一个池,其中数据在 raidz 和 ad16 之间条带化。丢失 ONLINE ad16 磁盘将使整个池出现故障。

    由于现在无法删除 ad16(您不能从池中删除 vdev),而且我怀疑您是否希望数据在 4 磁盘 raidz 和单个磁盘之间条带化,我认为不值得您花时间尝试排序出故障磁盘。您最好考虑将数据转移到单独的池/磁盘/服务器上并销毁/重新创建该池。

    • 2
  2. Wing Tang Wong
    2013-04-19T23:07:16+08:002013-04-19T23:07:16+08:00

    建议:通过 UUID 与逻辑名称引用底层设备。

    请参阅: http: //forums.freebsd.org/showthread.php?t=37394

    • 0

相关问题

  • Ubuntu 上的本机 ZFS 配置

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve