Ubuntu 15.10 突然完全崩溃损毁

2016-02-16 14:41:16 +08:00
 dandycheung
硬件环境是 ThinkPad X230T ,所用硬盘为 Samsung 840 EVO 的 250GB SSD ,操作系统是 Ubuntu 15.10 ,从 14.10 一路升级上来的。

之前一直不是主力机,并未重度使用。昨天是要验证一个脚本,所以使用 VMWare WorkStation 12 搭建了个 CentOS 7 的虚拟机。为了能多次测试,所以虚拟机在不同的阶段需要保存快照,结果在第二次保存快照时报磁盘 I/O 出错,硬盘不能写入,提示文件系统已经成为只读, superblock 如何如何;按照提示修复,完全没有效果。重启已经不能引导,会进入 GRUB 的 rescue 模式。

挂载到另一台电脑上查看,文件系统已经瘫痪,用恢复软件寻找到的文件,绝大部分是垃圾。用三棒的官方软件查看硬盘健康度是良好,尚未全盘扫描。

这个帖子不是要痛陈损失,是想让大家帮助分析下可能的原因。我怀疑是虚拟机软件的问题,但没有任何证据。 VMWare WorkStation 12 很奇怪, 12.0 开始,安装上运行无法显示主界面, 12.0.x 一直保持这个问题,昨天装的是最新的 12.1.0 ,这个问题消失了。顺便说一句,我给 CentOS 虚拟机分配了 8GB 的内存,占宿主机总内存的一半。
5702 次点击
所在节点    Linux
10 条回复
eightqueen
2016-02-16 15:58:42 +08:00
坐等 arch 党前来装逼
582033
2016-02-16 16:01:26 +08:00
为了不让楼上失望, arch 党在此。
至今虚拟机滚了几百次,没挂。
要不楼主也试试?
@eightqueen
BSD
2016-02-16 16:03:57 +08:00
唉,用 SSD 就是怕碰到这种问题。。。。

我觉得虚拟机软件再怎么 BUG ,也不至于导致全盘文件系统损坏的,至少我这么多年是没遇到过。
saybye
2016-02-16 16:32:42 +08:00
840 evo....
mko0okmko0
2016-02-16 16:39:51 +08:00
google "Samsung 840 EVO" 很多质疑.
TLC 颗粒呵呵.
换个至少是 MLC 的吧.

档案系统是?
档案系统也会影响.

SSD 有时候会写入出问题.如果是硬体级的故障那就神仙难救.
如果是比较小的性能突发下降.
可以靠档案系统的设计挽回.
例如 BTRFS 有对 SSD 最佳化.
或是 XFS 这种支持 Snapshot 的档案系统会更稳定.

Snapshot 不是指 VMWare 的那个.
而是档案系统本身就有 Snapshot 指令.

有 Snapshot 的档案系统通常是支持 cow 的技术.对 SSD 的寿命有帮助.
SSD 重复读写某区块会死很快.
okampfer
2016-02-16 17:12:33 +08:00
@mko0okmko0 这么说的话, SSD 用 BTRFS 或者 XFS 、机械磁盘用 EXT4 是比较理想的组合?
mko0okmko0
2016-02-16 17:23:20 +08:00
boot 分区可能直接 ext2.要用更好的就看起动器的支持.我是 ext2.
其他的我是用 BTRFS.但我会推荐 XFS.做什么都很稳.
BTRFS 有支持很多这特性但出问题后的修复很麻烦.所以不敢推荐给别人.
ZFS 也是可以用了但建立 ZFS 也是麻烦.
aivier
2016-02-16 17:52:52 +08:00
别人都说 TLC SSD 不靠谱...我用坏了一块机械硬盘,也在机械硬盘上遇到过无数次数据损坏,例如前几天 BTRFS 突然就坏了...用 fsck.btrfs 一直在以相同的内容刷屏,没有硬盘读写, SSD 上的系统用的更多,却好好的
mko0okmko0
2016-02-16 17:57:54 +08:00
http://blog.udn.com/q928856957/26014600
重点看 XFS 跟 4K 优化部分.

http://saplingidea.iteye.com/blog/636770
重点看 inode size

一堆优化建议
http://xjsunjie.blog.51cto.com/999372/1390754

http://blog.csdn.net/helloanthea/article/details/50464800
优化评比

http://www.cnblogs.com/yuzhaoxin/p/4083623.html
一些参数说明

http://imysql.com/2015/07/14/xfs-vs-ext4-fileio-and-tpmc-under-pciessd.shtml
已经提示 XFS 默认的参数是哪些.可以不用人工添加

SSD 的 LINUX 说明和故障排除
https://wiki.archlinux.org/index.php/Solid_State_Drives_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29#.E6.9C.80.E5.A4.A7.E5.8C.96.E5.88.A9.E7.94.A8SSD.E7.9A.84.E6.8A.80.E5.B7.A7

XFS 的删除效率不好的解决参数
http://blog.udn.com/q928856957/26014600

XFS 跟某资料库的优化
https://yq.aliyun.com/articles/2372
又一篇
https://www.ruilog.com/notebook/view/dbbf8a178c54.html


补充一下上面几篇有说到 ASYNC(非同步)相关参数加速读写.

ASYNC/SYNC 的模式大致分为
无日志系统例如 FAT/EXT2.写入中的档案遇到断电会不可修复.
有日志但两段式写入.遇到断电会有问题但可修复.
有日志但一次性写入.断电不需修复但是写速度想死.而且会过于多次写入影响寿命.
EXT3~4/XFS/BTRFS/ZFS 都有日志.可用参数选择一次或是两段写入.甚至还有延迟多久批次写入.

像 BTRFS 的预设延迟就是 30 秒.我调整成 1 秒.因为我没电池.
BTRFS 对于 SWAP/LOOP 档案不友善.有此需求请勿使用.

我想说的是.
任何非同步(延迟)写入的加速都是建立在欺骗自己资料已经"安全写入硬碟".
因为实际上还在记忆体或是快取层中.只要这时候断电一定出问题.
所以任何使用 ASYNC 的参数的前提.就是硬碟不会故障+有电池.不然这加速...呵呵.
任何有风险的环境都不应该使用 ASYNC 加速.
dandycheung
2016-02-17 00:05:21 +08:00
@582033
@BSD
@saybye
@aivier
@mko0okmko0 已经用同一块盘重做系统,重装 Guest CentOS ,反正是个测试性环境,看看还会出什么问题。感谢各位,尤其是制造( mk )了很多不错的( ok )洞洞( o0 )的那位坛友……

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

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

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

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

© 2021 V2EX