卧槽?微软这样也行?用 Win Server 做 NAS 要慎重了……

2017-12-18 10:36:56 +08:00
 sadan9
平时写代码在 Hyper-V 的虚拟机中。虚拟磁盘镜像在 ReFS 文件系统上,底层 2 块盘做 raid1 的存储池。
某次非正常关机以后,在 Hyper-V 中发现有某个一个文件 IO 出错(其他文件正常)。
在主系统中对整个虚拟磁盘文件进行复制,结果报了以下错。
https://ds3.galdb.net/22.jpg

直接删整个文件……直接删整个文件……直接删整个文件……………………
23398 次点击
所在节点    程序员
47 条回复
Nitromethane
2017-12-18 12:42:48 +08:00
我在 VM ware 中,也发生过磁盘文件损坏的问题。
对于这种重要数据,至少要做到双机备份吧。
Shura
2017-12-18 12:45:20 +08:00
这叫截肢手术,避免扩散,233333 (大雾)
honeycomb
2017-12-18 12:49:39 +08:00
@sadan9
我表述不对,看链接里那个 salvage data 的特性(卷保持在线,受损的文件则直接删除),看完以后是不是很想骂娘。

至于它那个自动修复错误的特性,估计依赖于开启完整性流,而开启了这个特性后涉及的内容会变成 copy on write 模式,而 io 性能会因为随时对数据算 hash,降低很多
honeycomb
2017-12-18 12:53:12 +08:00
@likuku 我试过在带完整性流的情况下,它确实能修复错误。
方法是这样:

建两个 vhdx,格式化成 refs,都开完整性流,在储存池里挂载为双向镜像的卷。

卸载掉其中一个 vhdx,用 hex 编辑器把里面稍微乱改一下,再挂载回去,储存池能检测到错误,然后修复。
tyhunter
2017-12-18 12:54:17 +08:00
@BXIA 求教 APFS 现在有什么坑
honeycomb
2017-12-18 12:56:55 +08:00
@tyhunter 新浪上有人说,有些时候删除速度比复制速度慢。
likuku
2017-12-18 13:01:15 +08:00
@honeycomb 那么看来路子没错,自动修复数据错误,前提必须是存储池 /卷 底层必须是带冗余的才可以。这和 ZFS 的作法一样的。
likuku
2017-12-18 13:03:07 +08:00
@honeycomb 也对,存储这么重要的用途,服务器上一般是没人敢用不带冗余的配置。
momocraft
2017-12-18 13:11:33 +08:00
/安慰

要不要考虑上 zfs ... 一个 freebsd 的 zraid pool 能简单提供 nfs/samba/sshfs,也可以当 VM guest (bhyve) 的块存储用。就是要的盘有点多 (raidz2 要五块起)。io 也不算快,不过撑满家里 GB 网线还是够的。

如果有需要可以偷偷 qq 上找我 -_-
sadan9
2017-12-18 13:11:42 +08:00
@honeycomb 自动修复我试过没问题,这次估计磁盘硬件问题,然后 refs 自动修复失败。问题部分数据读取失败直接砍掉一个 100G 文件这个做法………
RqPS6rhmP3Nyn3Tm
2017-12-18 13:18:18 +08:00
@tyhunter 使用下来大问题没发现有,但是性能好慢……尤其是加密的情况下
然后 snapshot 这个功能不能脱离 time machine 使用,逻辑上挺难理解的
sadan9
2017-12-18 13:37:03 +08:00
忽然还发现一个问题……既然 ReFS 都已经认为 IO 读取失败了……存储池里的磁盘居然状态都是正常……没有告警……
OTZ。。。。
sobigfish
2017-12-18 14:08:05 +08:00
@honeycomb #26 删除(孤本)比复制慢的话 不是很正常么? 复制的时候只是新的元数据
gamexg
2017-12-18 15:02:15 +08:00
@sadan9 还好上次因为没有快照功能没选择 ReFs,微软这个操作真的很厉害...

一次电源故障造成双盘镜像掉了一个盘外加另一个盘出现错误,zfs 显示几个文件损坏,修正电源问题两个盘重新上线后错误被自动修复了。
另外磁盘状态有错误计数,这个计数需要手动才能清除。
tyhunter
2017-12-18 16:04:55 +08:00
@BXIA 不过从 Macbook Pro 2016 开始,很多反映 Firevalut 开启后,mbp 就花屏了
opengps
2017-12-18 16:40:30 +08:00
微软这个想法很实在,反正用不了,别浪费时间了
ThatIsFine
2017-12-18 18:09:05 +08:00
我 kao
jingniao
2017-12-18 18:49:23 +08:00
这样啊……
hyuwang
2017-12-18 19:47:54 +08:00
用 ReFS 在 RAID0 上做数据储存的表示好慌。。。
RobertYang
2017-12-18 20:09:25 +08:00
有块存照片的硬盘是 refs,有点虚

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/415587

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX