断电后 ubuntu 文件系统损坏?

2017-10-30 16:28:35 +08:00
 qqqasdwx

背景

我这边有一些设备,每天都要强制断电,有的时候就会出现无法进入系统的情况。

解决方案选择

  1. 预防
  2. 解决

问题

  1. 如果是预防的话,方案是将系统设置为只读,领导提供的方案是 Overlayroot,我没接触过,网上也没找到什么例子,有大神接触过的请不吝赐教,拜谢!
  2. 如果是解决的话,看了一下,用 fsck 应该是可以的,但是领导说系统都崩了,根本找不到 fsck 命令的,但我有点疑问,如果 fsck 是在系统启动之后才能运行的话,那设置/etc/default/rcS下的FSCKFIX = yes有什么用呢?

附加

不考虑 ups,设备多,成本太高

9312 次点击
所在节点    Linux
34 条回复
514146235
2017-10-30 16:45:02 +08:00
btrfs 你值得拥有
ryanking8215
2017-10-30 16:45:14 +08:00
我给你出个馊注意吧,借鉴嵌入式系统,用 ramfs, cramfs, squashfs 等只读文件系统,数据挂 ext4, xfs 日志文件系统。
ToughGuy
2017-10-30 17:41:35 +08:00
如果能改接受系统重启后数据还原就直接使用 aufs 弄成类似 LiveCD 那种格式。
hcymk2
2017-10-30 17:49:14 +08:00
不能提前关机么?
py2ex
2017-10-30 17:52:22 +08:00
以前用过 ubuntu 11.04 每次机房断电,恢复供电后启动系统,这时看到各个分区都变为只读挂载了。
难道只读这个过程不是自动的?
AttufliX
2017-10-30 18:03:55 +08:00
万年 ext4,断电也没坏过。btrfs 千万别用
qqqasdwx
2017-10-30 18:05:11 +08:00
@hcymk2 不能 [手动捂脸] ,时间不定 0.0
Osk
2017-10-30 18:16:00 +08:00
我手上一块开发板现在当家庭 server 也是,每次都起不来,每次都得手动取卡执行 fsck,其实是我懒,只要配置好 initramfs,在 initramfs 阶段中完成 fsck 就没这些问题了,但配置方法我弄丢了(主要是 ubbot 启动脚本),想着反正一年就几次而已就没管。

或者像嵌入式系统那样,原始的 rootfs 分区挂载为只读,然后数据分区挂载读写,最后挂载 OverlayFS 做为真正的 /
gwind
2017-10-30 21:52:20 +08:00
Linux 这种需求不为过,可以满足,但是如果想做到安全,需要定制。
另外,应用内存数据不考虑保护吗?
ashong
2017-10-30 21:59:43 +08:00
我的软路由刷 LEDE 也是这个问题, 掉电后重新启动就是只读挂载, 搜了一下应该是 linux 常见的问题
flynaj
2017-10-30 22:03:39 +08:00
断电之前先关机,
Ehend
2017-10-30 23:37:40 +08:00
表示我的树莓派也是这样,目前解决方案是常年接个充电宝。。。
likuku
2017-10-30 23:43:25 +08:00
经常断电,力荐 xfs

硬盘足够多,那么数据盘使用带冗余策略的 ZFS 也是很好的选择

btrfs ... 那玩意还是算了吧
HMSQQbA
2017-10-31 00:53:37 +08:00
@Ehend 求充电宝型号?一直找不到满足要求的:1.能边放边充。2.断电时供电不会短时断开
yingfengi
2017-10-31 01:09:42 +08:00
每天强制断电是什么场景
twl007
2017-10-31 01:18:02 +08:00
禁用硬盘自带缓存
Ehend
2017-10-31 02:06:55 +08:00
ashong
2017-10-31 02:39:10 +08:00
@HMSQQbA 我也在找,tb 上有些宿舍路由器 ups,不知道常通电会不会有安全隐患
likuku
2017-10-31 02:48:55 +08:00
@yingfengi 上学时候,宿舍 23:30 准时断电... 那时我用 freebsd 6 和 debian,crontab 设置了 23:25 自动关机,然后就听着楼道里各种咒骂断电的例行吐槽。
tamlok
2017-10-31 06:57:46 +08:00
买个 ups 护着?起码有时间关机。

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

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

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

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

© 2021 V2EX