22 linux debian operating-systems power-supply embedded-linux
我正在 Linux 嵌入式开发板(运行 Debian)上开发应用程序,例如 Raspberry Pi、Beagle Board/Bone 或 olimex。电路板在意外断电的环境中工作(放置 PSU 等非常复杂),并且每天都会发生几次。我想知道意外断电是否会导致 Linux 操作系统崩溃/问题?如果这是我应该担心的事情,您有什么建议可以防止意外断电对操作系统造成损害?
附注。应用程序需要向存储介质(SD卡)写入一些数据,我认为将其挂载为只读是不合适的。
小智 14
意外断电可能会导致文件系统数据损坏 - 例如,如果进程已开始写入文件,但尚未完成写入,则文件最终可能只写入了一半。现在想象一下,如果在内核升级进行到一半时发生断电……
正如 l0b0 所写,使用日志文件系统会有所帮助,因为它能够跟踪实际完成的工作。除了维基百科的信息是l0b0链接,你可能有兴趣在 https://unix.stackexchange.com/questions/12699/do-journaling-filesystems-guarantee-against-corruption-after-a-power-failure以及.
作为程序员,您显然需要仔细考虑如何处理对文件的写入,以便它成为一个原子过程(即它要么完全完成,要么根本没有完成,但永远不会完成一半)。这是一个相当复杂的问题。
小智 11
为了帮助最大限度地减少操作系统损坏的可能性,最好在 SD 卡上有单独的“系统”和“数据”分区。这样您就可以以只读方式挂载“系统”分区,并在“数据”分区上使用高弹性的 FS。
此外,这些电路板中的大多数都具有非常低的功率要求,因此可以使用备用电池。Raspberry Pi 的“LiPo 骑手”板可用作基本 UPS,以在断电时提供干净的关机。
归档时间: |
|
查看次数: |
3436 次 |
最近记录: |