V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
Bursto7
V2EX  ›  云计算

Windows server2016 上搞了个 300T 的 ReFS 卷,有一次重启后变成只读。。了

  •  
  •   Bursto7 · Dec 8, 2020 · 7200 views
    This topic created in 1976 days ago, the information mentioned may be changed or developed.
    有什么办法让他变成可写吗?还有得救吗? QWQ
    45 replies    2022-03-14 02:09:52 +08:00
    jousca
        1
    jousca  
       Dec 8, 2020   ❤️ 1
    微软官方:

    所有 ReFS 支持的配置必须使用 Windows Server 目录 认证硬件,并满足应用程序要求。
    felixcode
        2
    felixcode  
    PRO
       Dec 9, 2020 via Android   ❤️ 2
    第一个想到的不应该是赶紧趁只读时备份么
    laminux29
        3
    laminux29  
       Dec 9, 2020
    软阵列,以及高端文件系统,这些东西是 Linux 范畴的事情,因为 Linux 界这类东西用的多,就算有 bug 有争议,也很早就被解决。比如 linux 的各类 fs,只因为 fs 挂载时的 sync 或 async 参数,以及 os flush delay 时间,都在曾经引发一场很多大佬参与的讨论(撕逼),当时有些 fs 的重要作者还根据讨论结果对这方面的设计做了改进。

    Windows 就没这运气了,无论是 Win8 新出的存储空间,还是 ReFS,甚至连很早就有的软阵列,因为用的人太少,导致各种问题。Windows 至今没有 lvm 的完整功能。

    给你一个建议,你的数据如果有 300T 了,建议用基于 Linux 的 OS 来进行管理。把 raid ( mdadm )、lvm ( pv/vg/lv )那套东西好好学学,该做的实验也做做。
    mingl0280
        4
    mingl0280  
       Dec 9, 2020 via Android   ❤️ 11
    @laminux29 人家问你现在只读怎么办没让你评价 fs 优劣( lvm 丢数据丢卷还少了么,linux 还不是磁盘坏了要降级),真的是用个文件系统都能用出优越感来也不知道脑子怎么长的。
    @Bursto7 首先尽快备份,然后检查硬盘和阵列是否有损坏。
    laminux29
        5
    laminux29  
       Dec 9, 2020   ❤️ 4
    @mingl0280 我已经给出解决方案了,看不懂的话,可以大声朗读 100 遍并背诵来加深理解。

    另外这种基础东西,为啥你会觉得有优越感。
    Dragonish3600
        6
    Dragonish3600  
       Dec 9, 2020 via iPhone   ❤️ 4
    germain
        7
    germain  
       Dec 9, 2020   ❤️ 1
    diskpart.exe

    LIST VOLUME
    SELECT VOLUME
    DETAIL VOLUME
    ATTR VOLUME CLEAR READONLY

    PS, 这位 @laminux29 显然是没有接触过企业 PB,EB 和以上级别的存储及应用,做人还是谦虚点。
    laminux29
        8
    laminux29  
       Dec 9, 2020   ❤️ 4
    @germain 噗...

    1.我要是你,在没搞清楚到底是什么原因,造成一个 FS READONLY 之前,是不会轻易进行强行修复的。十几年前,fs 故障,我当时没检查内存条,直接强行命令行修复硬盘,结果报废了一辆 X3 价值的数据,算算通货膨胀,猜猜今年应该是 X 几的价?

    2.我虽然不知道,为啥这事能扯上 PB EB,但看上去,你应该认为 PB EB 已经很大了。我顺手看了一下,我现在在单位附近的家里,一个分数据中心,里面的小电影,总量 0.8 个 PB,你猜猜我这分数据中心,每月电费?

    至于存储方面的其他问题,我就不提当年某报纸报道过的大一学生捐赠 EMC 当年最强存储产品进实验室,不提某捷固件门国内第一版原理解析,不提当年 Oracle 文档妹和我对线 Oracle 存储细节,不提我和谷歌工程师对线机房散热与能耗控制,不提某电视台的新媒体存储方案,不提我和 XX 服对线他们最新的 X 融合一体机的 xSAN 的延迟问题...

    不想提这些,是因为整个 IT 领域,我觉得,存储问题,真的只是入门问题。当 PB EB 就称为了你的上限时,你应该反思自己。

    做人,还是谦虚点。
    germain
        9
    germain  
       Dec 9, 2020   ❤️ 6
    @laminux29 哇,好厉害,怪不得被降权了。
    Osk
        10
    Osk  
       Dec 9, 2020 via Android
    有多种可能,

    先确认一下存储池内的硬盘状态,比如是否检测到错误,甚至是掉盘了。

    存储空间的文档: httpx: //docs.microsoft.com/en-us/windows-server/storage/storage-spaces/storage-spaces-states

    //docs.microsoft.com/zh-cn/windows-server/storage/storage-spaces/storage-spaces-states


    不建议看该文档的机翻中文
    Osk
        11
    Osk  
       Dec 9, 2020 via Android
    对了,在你取消只读状态前最好先备份一下重要数据。

    另外,楼主这个存储空间用的是哪种布局呢? simple mirror 还是 parity ?
    christin
        12
    christin  
       Dec 9, 2020 via iPhone   ❤️ 7
    @laminux29 好家伙 不提 xxx 不提 xxx 不提 xxx
    让我想到一个段子 当一个人和你说“不是我跟你吹”的时候 他就要开始吹了
    isnullstring
        13
    isnullstring  
       Dec 9, 2020   ❤️ 1
    应该先备份数据吧?鬼知道下次重启还能不能读.......
    phpfpm
        14
    phpfpm  
       Dec 9, 2020   ❤️ 2
    @laminux29 这次我站你

    我发现 windows 的存储空间就是,not even a toy....
    Bursto7
        15
    Bursto7  
    OP
       Dec 9, 2020
    @Osk 没有创建存储池,应用端直接裸盘格式化的 ReFS,不过裸盘是后端 iscsi 多路径提供的卷
    Bursto7
        16
    Bursto7  
    OP
       Dec 9, 2020
    @isnullstring 主要是监控数据,业务端有双写备份,主要想看看怎么修
    Bursto7
        17
    Bursto7  
    OP
       Dec 9, 2020
    @laminux29 主要业务端是跑 winserver 的,业务端就自己格了一个大盘直接用了
    mingl0280
        18
    mingl0280  
       Dec 9, 2020   ❤️ 7
    @laminux29 嗯,你的方案是换 Linux 。问题是人家系统现在是 Windows 的,问的问题也是 Windows 怎么挂了,你的方案屁都不值一个好吧……
    解决问题不要新增问题,谢谢。
    Bursto7
        19
    Bursto7  
    OP
       Dec 9, 2020
    感谢回复,我的磁盘没有创建存储池,是单盘创建的,link 中好像是存储池的解决方案
    mingl0280
        20
    mingl0280  
       Dec 9, 2020
    @Bursto7 我去查了下微软文档,没找着微软说在 ReFS 卷上有啥可靠的操作……建议你还是备份数据然后重建 ReFS 分区可能可靠一点。
    vx812574395
        21
    vx812574395  
       Dec 9, 2020 via iPhone
    ntfs 不香了吗?
    msg7086
        22
    msg7086  
       Dec 9, 2020
    ReFS 我就没看见过一次有人说他牛逼的。
    每次看到帖子都是
    文件丢了
    文件系统挂了
    ermmm……
    phpfpm
        23
    phpfpm  
       Dec 9, 2020
    @mingl0280



    A 问喝敌敌畏会死怎么办

    B 说你渴了喝水不要喝敌敌畏

    C 说敌敌畏兑点大米粥就好了,实在不行喝之前煮一下

    D 说 B 人家问怎么喝敌敌畏的问题你非得扯喝水
    gamexg
        24
    gamexg  
       Dec 9, 2020
    @msg7086 #22 我想起了上次有人提到,ReFS 碰到文件系统错误时,直接将损坏的文件删掉的来保证文件系统无错误的神操作。
    isnullstring
        25
    isnullstring  
       Dec 9, 2020
    @Bursto7 说实话,很少看见修复 的文章.........
    Bursto7
        26
    Bursto7  
    OP
       Dec 9, 2020
    @isnullstring 说实话,我们有个盘已经 RAW 了。。。想着救一个是一个
    mingl0280
        27
    mingl0280  
       Dec 9, 2020 via Android
    @Bursto7 如果 RAW 了可以用 refsutil 修( ms 推荐操作)
    zxCoder
        28
    zxCoder  
       Dec 9, 2020
    这个帖子的内容完全看不懂。。。
    zxCoder
        29
    zxCoder  
       Dec 9, 2020
    确实是术业有专攻啊
    Tink
        30
    Tink  
    PRO
       Dec 9, 2020
    @laminux29 #3 文不对题
    DoctorCat
        31
    DoctorCat  
       Dec 9, 2020
    @mingl0280 我说我怎么看不到这个用户呢,原来是我早已 block 他了
    Bursto7
        32
    Bursto7  
    OP
       Dec 9, 2020
    @mingl0280 已经写入 100T 了,转移数据是个噩梦,总之感谢回复
    laminux29
        33
    laminux29  
       Dec 10, 2020   ❤️ 1
    @mingl0280 这问题我两年前就踩过 3 次,最后找出该问题的本质是微软的这套东西,因用的人少,导致 bug 没能及时修复。

    你说我的方案屁都不值?看看那你给的方案:备份,检查硬盘与阵列是否有损坏,然后?

    我可以直接告诉你答案,硬盘与阵列不会有损坏。

    然后让题主再重来一次 readonly ?我 TM 当时就是这么做的,最后连续搬运整个数据池 2 次,第三次就迁移到 linux-lvm,最后再无问题。

    你这方案才屁都不值,懂?因为这种问题,你自己根本就没踩过。

    正确的方案就是我说的,迁移到有很多人用并保持稳定的 linux-lvm 。
    laminux29
        34
    laminux29  
       Dec 10, 2020
    @Tink 把我发的东西,大声朗读 100 次,如果还觉得不对题,那就背诵下来,加深理解。
    imbushuo
        35
    imbushuo  
       Dec 10, 2020   ❤️ 1
    ReFS 的 resiliency 是假设 Storage Space 存在的,裸盘直接跑 ReFS 比 Storage Space 还要灵车(

    btw, Storage Space 下面的存储设备不能有 RAID 卡控制的阵列(必须是 HBA mode/IT mode )
    xcstream
        36
    xcstream  
       Dec 10, 2020
    大声朗读 100 次 23333
    dingyx99
        37
    dingyx99  
       Dec 10, 2020
    大声朗读 100 次。。。。这是哪里来的自信 xswl
    Bursto7
        38
    Bursto7  
    OP
       Dec 10, 2020
    有道理,看着主推的是实时检测数据损坏后从冗余区读出来修复。刚我们测试,还出现了,连续写一段时间后,refs 盘直接卡死,资源管理器看不到容量,磁盘管理点脱机直接没响应,但系统日志里没有任何报错的现象。。。。同时测试的 ntfs 盘没有这个问题,目录能正常读写。
    TsubasaHanekaw
        39
    TsubasaHanekaw  
       Dec 10, 2020
    技术凡尔赛 笑死
    leeg810312
        40
    leeg810312  
       Dec 10, 2020 via Android   ❤️ 1
    难得看到自己完全没概念的领域 hh 。楼上那位凡尔赛虽然说话语气让有些人不爽,但从他描述来说应该是亲自踩过坑且解决过问题的。记得以前学计算机操作系统课程时,问过文件系统怎么测试,印象回答是完整功能的文件系统测试非常复杂,非常资深开发者才有测试经验,初学者就学个原理吧。当下要搞个新型商用文件系统,没个 5 年 8 年大规模使用没法做到成熟可靠。
    Bursto7
        41
    Bursto7  
    OP
       Dec 11, 2020
    最新进展,这个东西很玄学。。。没管他几天,有次启动后又自己挂成读写了。

    另外,发现 2016 的 ntfs 、refs 文件系统使用比较大的卷( 10TB 左右),磁盘管理脱机、联机,以及 iscsi login 的时候,都会出现较长时间的卡顿,几十秒到上百秒,抓包看全是读命令。但 2012R2 的系统没有这个现象,就很奇怪。
    SgtPepper
        42
    SgtPepper  
       Dec 22, 2020
    这鸟玩意儿连磁盘配额和 ODX 也不支持,纯好奇 lz 公司上这派啥用?
    Bursto7
        43
    Bursto7  
    OP
       Jan 18, 2021
    @SgtPepper 额,用户自己创建的,存监控视频
    czscc
        44
    czscc  
       Jan 29, 2021
    建议还是备份数据,重建阵列. REFS 这种东西少用为妙. 我现在的策略是 proxmox VE 下面做 ZFS RAIDZ2 (可以用 zpool create poolname raidz c8t1d0 c8t2d0 c8t3d0 raidz c8t4d0 c8t5d0 c8t6d0 这样创建类似于 raid50 的结构). 然后通过 iSCSI 共享一个 ZVOL 到 Windows Server.然后由 win 格式化为 NTFS 。而且还可以加读写缓存,支持类似于 LVM ThinPool 的稀疏空间,还可以另建一个 ZVOL 在 linux 下格式化挂载,然后 CIFS 共享。 算是解决 Win Server 比较好的存储方案了。
    2NUT
        45
    2NUT  
       Mar 14, 2022
    @dingyx99 #37 技术普信
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5742 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 80ms · UTC 06:48 · PVG 14:48 · LAX 23:48 · JFK 02:48
    ♥ Do have faith in what you're doing.