如果一台机器有不正常的关机,并且fsck的时间已经过期,哪个消息将被打印?

操作系统是CentOS 5。

通常在不清洁的关机之后,CentOS的启动文本会显示一些由于不清洁的关机而需要的fsck。 (我不记得我头顶的确切文字)

另外,如果你在没有fsck的情况下进入某个特定的天数,将会显示消息“check forced”,机器将会fsck。

但是,如果这两个项目是真的呢? 该机器有一个不清洁的关机,它已经1000天没有fsck,哪些信息在启动过程中打印?

为什么我需要知道? 我需要知道是否可以跳过fsck。 这种情况不会经常发生,但确实出现了。 当然,他们应该使用xfs,当然应该是多余的,但这是现实生活。 有时你会遇到fsck需要10个小时的情景,而每个分钟都是停机。 (就个人而言,我会说永远不要跳过fsck,但这不是我的要求)

根据e2fsck/unix.c中的e2fsprogs源文件(修剪为重要位)

 if ((fs->super->s_state & EXT2_ERROR_FS) || !ext2fs_test_valid(fs)) reason = _(" contains a file system with errors"); else if ((fs->super->s_state & EXT2_VALID_FS) == 0) reason = _(" was not cleanly unmounted"); else if (check_backup_super_block(ctx)) reason = _(" primary superblock features different from backup"); else if ((fs->super->s_max_mnt_count > 0) ... reason = _(" has been mounted %u times without being checked"); else if (!broken_system_clock && fs->super->s_checkinterval ... reason = _(" has filesystem last checked time in the future"); else if (!broken_system_clock && fs->super->s_checkinterval ... reason = _(" has gone %u days without being checked"); 

正如你所看到的,这是if / else条件列表。 他们会从上到下检查,只显示find的第一个原因。

你可以放心,确保一个不洁的文件系统将被指明

如果你确实卡住了,我build议从CD / DVD启动到救援模式,在文件系统上运行“tune2fs -i 0 -c 0”,然后重启。 这样,如果文件系统是干净的,它只会挂载。 如果脏了,它会通过fsck。