V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
mikewang
V2EX  ›  NAS

威联通 ZFS 出现损坏

  •  
  •   mikewang · 2023-04-27 02:35:55 +08:00 · 1942 次点击
    这是一个创建于 577 天前的主题,其中的信息可能已经有所发展或是发生改变。

    威联通的 ZFS 看起来并不是 OpenZFS ,用起来有点奇怪。 zpool status,发现报错。手动 scrub 了一次,问题依旧。

    # zpool status -xv
      pool: zpool1
     state: ONLINE
    status: One or more devices has experienced an error resulting in data
    	corruption.  Applications may be affected.
    action: Restore the file in question if possible.  Otherwise restore the
    	entire pool from backup.
       see: http://illumos.org/msg/ZFS-8000-8A
      scan: scrub repaired 0 in 0 days 00:16:51 with 1 errors on Thu Apr 27 02:11:14 2023
     prune: never
     renew: none requested
    config:
    
    	NAME                                        STATE     READ WRITE CKSUM
    	zpool1                                      ONLINE       0     0     1
    	  qzfs/enc_0/disk_0x6_[序列号]_3            ONLINE       0     0     0
    	  qzfs/enc_0/disk_0x7_[序列号]_3            ONLINE       0     0     2
    
    errors: Permanent errors have been detected in the following files:
    
            zpool1/$SHADOW:<0x1> (180:1:0:1458175)
    

    同样的,在 zpool2 中也存在:

    errors: Permanent errors have been detected in the following files:
    
            zpool2/$SHADOW:<0x1> (180:1:0:21594879)
    

    zpool1 和 zpool2 是两个完全不同的阵列构成,磁盘间无关联。

    问题来了:

    • zpool1/$SHADOW:<0x1> 是什么东西?并没有这个名字的数据集,也不存在这个文件。
    • 怎样消除这个告警?

    尝试了 zfs clear zpool1,并不能解决这个问题。奇怪。

    mikewang
        1
    mikewang  
    OP
       2023-04-27 02:57:48 +08:00 via iPhone
    我怀疑这可能是一个普遍的问题。
    Google 了一下,也有人在 reddit 上问过,不过没有结论。
    威联通 QuTS 系统的用户可以 ssh 进去,zpool status -xv 一下看看是不是都有这个玩意。
    mikewang
        2
    mikewang  
    OP
       2023-04-28 03:08:10 +08:00 via iPhone   ❤️ 1
    查询了好一会,找到了消除 error 的方法:
    zpool scrub zpool1
    执行后直接取消当前 scrub 操作:
    zpool scrub -s zpool1
    这个时候查看状态,错误应该已经清零:
    zpool status -v
    再完整 scrub 一次,如果没有出现错误,那么代表 error 确实已经解决并消除:
    zpool scrub zpool1

    其实出现 error ,并不意味着当前 ZFS 上一定有文件出现问题,这个是历史记录一样的信息。

    以上是记录的最终解决方法。如果 QNAP 用户遇到了同样的问题,搜到了本帖,希望上述方法能有所帮助。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   918 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 21:38 · PVG 05:38 · LAX 13:38 · JFK 16:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.