You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Ubuntu自动处理"RUN fsck MANUALLY"启动错误并自动执行修复

如何配置Ubuntu自动处理"RUN fsck MANUALLY"启动错误并自动执行修复

完全懂你这种崩溃的感觉——几十台遍布全国的无头摄像头服务器,就因为断电后文件系统出点小问题,就得派人跑现场敲30秒命令,还导致几天的录像空白,太不划算!既然你已经明确接受少量文件损坏的代价,只求系统能自动恢复启动,那咱们直接上配置步骤:

1. 开启自动修复开关(适用于多数Ubuntu版本)

编辑/etc/default/rcS文件:

sudo nano /etc/default/rcS

找到FSCKFIX=no这一行,改成:

FSCKFIX=yes

这个参数的作用是,当系统检测到文件系统需要修复时,自动执行fsck -y(自动确认所有修复操作),完全跳过手动干预的界面。

2. 确保FSTAB里的分区检查顺序正确

打开/etc/fstab文件:

sudo nano /etc/fstab

检查每个存储分区的第6个字段(pass字段):

  • 根分区(/)的pass值设为1(优先检查)
  • 摄像头存储的其他数据分区,pass值设为2(根分区检查完成后再依次检查)
    如果这个字段是0,系统启动时不会自动检查该分区,那就达不到自动修复的目的了。

3. Systemd环境下的额外加固(针对Ubuntu 16.04及以后版本)

如果你的服务器用的是systemd(现在大部分Ubuntu默认都是),可以补充配置systemd-fsck的行为,确保它强制自动修复:
创建systemd服务的覆盖配置目录和文件:

sudo mkdir -p /etc/systemd/system/systemd-fsck-root.service.d
sudo nano /etc/systemd/system/systemd-fsck-root.service.d/override.conf

写入以下内容:

[Service]
ExecStart=
ExecStart=/usr/lib/systemd/systemd-fsck --force --repair=yes /

对其他数据分区,同理创建对应的配置文件(比如systemd-fsck@dev-sdb1.service.d/override.conf),把最后面的/换成对应分区的挂载点或设备路径,参数同样用--force --repair=yes。

配置完成后重载systemd使设置生效:

sudo systemctl daemon-reload

最后再啰嗦两句

正如你权衡的那样,自动修复确实可能导致少量录像文件损坏,但这和几天的存储空白比起来,显然是更能接受的代价。建议你先在一台测试服务器上模拟断电场景验证配置效果,没问题后再批量部署到所有设备上。

备注:内容来源于stack exchange,提问作者JL Griffin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 07:48:15