带有可启动 Linux 的外部 SSD 太敏感

带有可启动 Linux 的外部 SSD 太敏感

我已经OCS Vector 150安装Ubuntu 15.04了。驱动器已插入Transcend StoreJet 25S3封闭装置。

在家里和工作中使用它对我来说都很舒服。而且我可以轻松地将它连接到任何电脑上,我自己完全配置的环境到处。

问题是,此解决方案对由坏的 USB 端口/坏的电缆/实际功率损失等引起的电源/连接损失过于敏感... 这意味着,如果我在文件系统进行某些活动(如文件下载/编译/复制文件等)期间拔下电缆,下次再次插入驱动器时,我将得到完全损坏的文件系统。我使用ext4,但文件系统还是坏了。运行后看起来有很多错误fsck。 fsck 修复了这些错误,但它永远不会恢复所有文件。

更(不)好笑的是,在连接丢失期间,所有正在写入的文件之间的文件内容可能会完全混乱。实际上,甚至在正在读取的文件之间也是如此。有一次,我看到dpkg二进制文件包含一些 json,可能是来自 Firefox 配置文件数据。这使得恢复变得非常困难。

我尽量不将任何重要数据存储在驱动器上,除非这些数据可以轻松恢复。

当世界末日来临时,我会debsums查找损坏的系统文件(当 debsums/dpkg/zsh/etc 本身没有损坏时 :) ),重新安装相应的软件包,并从我的 git 存储库中提取一些配置文件和脚本。由于 ssd 驱动器速度很快,所以不需要很长时间。如果损坏不大,只需不到 10 分钟就可以恢复几乎所有内容并使系统(至少看起来)干净。

所以,在讲完这个长篇故事之后,问题是:您认为哪些方面可以改进?我知道,很难有一个简单而好的解决方案,但如果您能分享您对这个问题的想法,我将不胜感激。

2015 年 9 月 10 日更新 目前,我认为文件系统损坏的原因不是物理影响。我主要在家里和工作中使用该设备,统计显示,它在家里损坏的频率比在工作中高得多,而工作中的活动包括编译、vcs pull/commits,即大量磁盘 I/O。有一次,我的同事在我日常活动中不小心将磁盘从机箱中掉落。它断开了连接,我以为会造成严重问题。但是当我重新连接并重新启动时,fsck 没有显示任何错误!同时,我在家里从这个磁盘启动 kubuntu 仅一分钟,打开浏览器,重新启动,然后就好了!丢失了大约几千个 inode。

症状与以下非常相似:https://bugs.launchpad.net/ubuntu/+source/linux/+bug/992424https://bugzilla.kernel.org/show_bug.cgi?id=42723

我看到的东西和那些人看到的几乎一样:

[11742.577091] EXT4-fs error (sdc2) ext4_mb_generate_buddy:757 group 1, block and bg descriptor inconsistent: XXX vs YYY free clusters
[11742.577337] Aborting journal on device sdc2-8

由于该问题在某种程度上取决于机器,而且我没有其他线索,因此我倾向于相信问题出在控制器逻辑/ USB 电源或类似的东西上。

现在的问题是:如何让文件系统更加可靠?你认为这brtfs会有帮助吗?

2016 年 1 月 29 日更新

我放弃了。我在家里和工作时拆下了机箱的左侧,并使用 SATA 连接。到目前为止没有问题。

答案1

高性能大容量 USB 驱动器会有所改进吗?它重量更轻,不会晃动(因为它不需要额外的支撑),并且在 USB 插槽中相对更安全。128GB 的​​价格相当,而且我怀疑您是否可以充分利用 SSD 的性能。

ext4 会报告错误,但在这种情况下,日志文件系统应该比非日志文件系统更好。

也许文件系统会更加合适,因为它实现了写时复制(COW)。

答案2

哇,这听起来太糟糕了。Ext4 是一个日志文件系统,但这些听起来确实像是非日志文件系统的问题。我们最近看到有人在 Windows 和 Mac 机器之间切换驱动器时使用 exFAT,但无法正确分离,某些写入操作仍在发生,或者像您的情况一样。

令人惊讶的是,您的电源/连接如此糟糕,这种情况经常发生。我听说其他人使用外部 USB 驱动器运行 Ubuntu 时没有遇到任何问题。要清楚的是,这种情况在您不采取任何措施的情况下发生的频率是多少,以及您故意断开连接的频率是多少?

删除是 Ext4 为文件恢复提供的有限选项的一个很好的工具,但这不是数据被删除的情况,而是数据损坏的情况。如果您(希望不会)要尝试忍受这种混乱,我肯定会尝试一个具有更好恢复选项的文件系统,这样您就有更好的最后手段。我不确定这对 Linux 来说会是什么。不过,Btrfs 是个好主意。它不是一个好的最后手段恢复选项,但也许写时复制可以为您省去一些麻烦。

另外,我不希望它挂在 USB 电缆上,对吧?(就像我在另一个答案中得到的印象一样)。我希望它没有移动。我不得不问。还有其他我不明白的事情吗?

相关内容