使用“errors=continue”安装时通知 EXT4 错误的任何方式

使用“errors=continue”安装时通知 EXT4 错误的任何方式

我正在制作一个在闪存上使用 ext4 的新嵌入式系统的原型。这些系统将在没有本地系统管理员的情况下进行远程部署,因此任何诊断也必须通过网络远程完成。

ext4 的默认挂载选项是在遇到错误时将 FS 设置为只读。我认为这对于我的情况来说太严重了,因为它可能导致许多操作停止工作并阻止远程登录。

我更愿意保持系统运行(并容忍一些 FS 错误)。因此,对于我的情况,安装选项“errors=continue”似乎更合适。但是,我希望我的应用程序在发生任何 FS 错误时收到通知,以便它可以将这些错误记录为高优先级问题并发送该信息。回到我们的服务器。

有谁知道这是否可以使用现有的 Linux 内核(x86_64 上的 4.8.1)来完成?

答案1

我更愿意保持系统运行(并容忍一些 FS 错误)

这是一个自相矛盾的说法。当您遇到 FS 错误时,您的系统将无法运行很长时间。事实上,运行 witherrors=continue很可能会进一步损坏损坏的文件系统,直到没有任何合理恢复的希望。

如果您希望您的应用程序在出现 FS 错误的情况下也能够最好地继续运行,那么它应该有一个脚本来检测何时/变为只读,并通过强制 fsck 重新启动。

到了某个时候,一切都会崩溃。这就是熵增定律。除了遵守可靠的工程原理并为关键任务用例获得高质量零件之外,您对此无能为力。

相关内容