/forcefsck 之后,启动时 fsck 结果记录在哪里?

/forcefsck 之后,启动时 fsck 结果记录在哪里?

远程工作时,我使用以下命令将服务器设置为fsck在启动时强制执行:

sudo touch /forcefsck

并重新启动。

重新启动后,我检查了/var/log/fsck磁盘检查的结果。两者checkfs都说checkroot

Nothing has been logged yet

那么结果保存在哪里?

答案1

对于 Ubuntu 16.04 和 18.04根分区

您可能正在寻找/run/initramfs/fsck.log

根文件系统的 fsck 必然在将根文件系统挂载为可写之前发生,因此文件系统检查发生在启动过程的早期,此时系统仍在从 initramfs 运行。 fsck 日志被写入此时可写入的 RAM 支持文件系统 (tmpfs),并且在启动后继续可用/run/initramfs/fsck.log。这是易失性存储,因此一旦系统重新启动,fsck 日志就会丢失。如果在将根文件系统挂载为可写之后将这些日志复制到非易失性存储中,那就太好了,但事实似乎并非如此。

以下是一个例子:

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 238.5G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
└─sda2   8:2    0   238G  0 part /

$ cat /run/initramfs/fsck.log 
Log of fsck -C -a -V -t ext4 /dev/sda2 
Fri Nov 30 22:35:21 2018

fsck from util-linux 2.31.1
[/sbin/fsck.ext4 (1) -- /dev/sda2] fsck.ext4 -a -C0 /dev/sda2 
/dev/sda2: clean, 653295/15597568 files, 6658147/62383360 blocks

Fri Nov 30 22:35:21 2018
----------------

答案2

您可能受到此错误的影响:“没有在 /var/log/fsck/ 中记录 fsck 调用”

Doug 的评论关于该错误,建议采用以下解决方法(格式已针对此平台进行了调整):

12.04 强制文件系统检查:

  • 告诉系统在启动时强制对所有文件系统进行文件系统检查,并/etc/fstab指示进行文件系统检查:

    touch /forcefsck
    
  • 告诉系统在启动时更加详细:

    sudo sed -i "s/VERBOSE=no/VERBOSE=yes/" /etc/default/rcS
    
  • 然后,重新启动后,检查/var/log/boot.log,文件系统检查的结果将在那里可见。

  • 如果您还希望文件系统检查执行所有修复,请进行以下更改:

    sudo sed -i "s/FSCKFIX=no/FSCKFIX=yes/" /etc/default/rcS
    

14.04 强制文件系统检查:

  • 告诉系统在启动时强制对所有文件系统进行文件系统检查,并/etc/fstab指示进行文件系统检查:

    touch /forcefsck
    
  • 告诉系统在启动时更加详细:

    sudo sed -i "s/#VERBOSE=no/VERBOSE=yes/" /etc/default/rcS
    
  • 然后,重新启动后,检查/var/log/upstart/mountall.log,文件系统检查的结果将在那里可见。

  • 如果您还希望文件系统检查执行所有修复,请进行以下更改:

    sudo sed -i "s/#FSCKFIX=no/FSCKFIX=yes/" /etc/default/rcS
    

答案3

对于 Ubuntu 14.xx:

我发现了一些 fsck 日志/var/log/upstart/mountall.log

答案4

对于 Ubuntu 18.04

命令journalctl -b --no-pager | grep systemd-fsckgrep systemd-fsck /var/log/syslog

均报告非根分区文件系统检查。类似于此:

Sep 25 16:06:29 me-Z370-HD3P systemd-fsck[615]: Scratch: clean, 19/6520832 files, 555602/26081280 blocks
Sep 25 16:06:29 me-Z370-HD3P systemd-fsck[609]: /dev/sda1: clean, 47014/89374720 files, 294970235/357492992 blocks
Sep 25 16:06:29 me-Z370-HD3P systemd-fsck[613]: /dev/sda5: clean, 6707/32727040 files, 7464312/130885120 blocks

即使强制检查,通过 UUID 挂载的根分区的结果似乎也不会被记录。

相关内容