在非根文件系统上执行fsck非常简单。但是,对于根文件系统,挂载后无法执行fsck。本快速教程介绍了如何强制检查根文件系统的文件系统。根文件系统在此示例中,/ dev / sda1分区是作为/挂载的根文件系统。如果运行fsck来检查根文件系统,由于/ dev / sda1已挂载,您将收到以下错误消息,并且无法在已挂载的文件系统上执行fsck。
在这种情况下,我们希望在根文件系统上执行fsck。那么,解决方案是什么?
如果要在非根文件系统上执行fsck,则只需卸载该分区并执行fsck。
另外,如果您是fsck的新手,请参考此:检查和修复文件系统的10个Linux Fsck命令示例
重启前的Tune2fs输出
在重新引导系统之前,让我们检查一下fsck上次对根文件系统执行检查的时间。
为此,请使用tune2fs命令,并使用grep进行“检查”,如下所示。
从上面的输出中我们可以看到:
上次检查:表示上次根文件系统检查发生的时间。这发生在十一月。
下一次检查之后:表示日期和时间,在该日期和时间后您执行重新引导时,将检查文件系统。这只会在五月之后发生。
内部检查:指示检查根文件系统的频率。在此示例中,它将在重新启动期间在此文件系统上执行fsck之前,再等待6个月。
但是,就我们而言,我们不想等到五月。我们现在要执行根文件系统fsck检查。
创建/ forcefsck文件以强制检查根文件系统
因此,要强制检查根文件系统,一种简单的方法是重新引导系统,并在内核启动根文件系统之前,在系统启动时强制fsck执行文件系统。
要在重新引导期间强制fsck,请首先在/下创建一个名为forcefsck的空文件,如下所示。