我有一堆无头 ubuntu 服务器仪器。当发生各种硬件更改时,我们有时会收到此错误。我猜这是主板更换,在这种情况下 RTC 略有不同。
fsck from util-linux 2.20.1
/dev/sda1: Superblock last mount time (Web Feb 18 09:02:07 2015,
now = Sun Jan 19 19:33:44 2014) is in the future.
/dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
mountall: fsck / [292] terminated with status 4
mountall: Filesystem has errors: /
Errors were found while checking the disk drive for /.
Press F to attempt to fix the errros, I to ignore, S to skip mounting, or M for manual recovery
按下 F 键可以解决磁盘问题(我仍然有一个改变的 RTC 问题,但可以单独解决),但我宁愿不要让软件工程师站在每个有电路板变化的仪器旁边,特别是如果它可以自行修复。
有没有办法让系统执行“强制是”或始终尝试修复选项?如果可以,我应该在哪里进行此更改。
答案1
你的问题的答案就在这里如何使 fsck 在启动时以非交互方式运行?
要强制 ubuntu 在启动时修复所有磁盘错误,您需要添加FSCKFIX=yes
到文件/etc/default/rcS
。这告诉fsck
使用该-y
标志运行。
答案2
正如消息所述:
fsck -p /dev/sda1
fsck -py /dev/sda1
-a 尝试修复任何问题,
请参阅 man fsck 或https://wiki.archlinux.org/index.php/fsck了解详情
-a 自动修复文件系统,不会有任何疑问(请谨慎使用此选项)。请注意,e2fsck(8) 仅支持 -a 以实现向后兼容。此选项映射到 e2fsck 的 -p 选项,该选项可以安全使用,与某些文件系统检查器支持的 -a 选项不同。
-y 对于某些文件系统特定的检查器,-y 选项将导致特定于文件系统的 fsck 始终尝试自动修复任何检测到的文件系统损坏。有时专家可能能够更好地手动驱动 fsck。请注意,并非所有文件系统特定的检查器都实现此选项。特别是 fsck.minix(8) 和 fsck.cramfs(8) 在撰写本文时不支持 -y 选项。
如果这些选项不能解决问题,那么您必须“手动”运行它,查看输出,并尝试手动修复。
实际上,如果 -a / -p 选项不起作用,通常是硬件问题,您可能需要进行数据恢复
https://help.ubuntu.com/community/DataRecovery
如果 -ay 或 -py 不起作用,我通常建议您更换硬盘并寻求专业帮助进行数据恢复。
您可以自己尝试数据恢复,但请小心,因为如果您不了解恢复工具的选项,也可能会使问题变得更糟。从我链接的数据恢复页面开始,在做其他任何事情之前先阅读所有内容。
您还可以运行 smartmontools
https://help.ubuntu.com/community/Smartmontools
从实时 CD 运行;)