因为我们从 dmesg 得到了以下信息
[37785.390633] XFS (dm-2): Metadata corruption detected at xfs_dir3_block_read_verify+0x5e/0x110 [xfs], block 0x7f8af18
[37785.390634] XFS (dm-2): Unmount and run xfs_repair
Dm-2 is the /var
我们开始根据文档执行xfs_repair -https://access.redhat.com/solutions/1194613
首先我们强制卸载 /var
umount -l /var
我们按照以下步骤开始程序:https://access.redhat.com/solutions/1194613
xfs_repair -v /dev/mapper/vg_var 2>&1 |tee /tmp/xfs_repair.out
xfs_repair: /dev/mapper/vg_var contains a mounted filesystem
xfs_repair: /dev/mapper/vg_var contains a mounted and writable filesystem
fatal error -- couldn't initialize XFS library
从上面我们可以看到 xfs_repair 抱怨包含/dev/mapper/vg_var
一个已安装的文件系统,尽管我们强制卸载
答案1
您已请求延迟卸载 ( umount -l
)。这只会在没有更多进程访问文件系统时卸载该文件系统。文档 ( man umount
) 本身说
-l
懒惰卸载。现在将文件系统从文件系统层次结构中分离出来,并在文件系统不再繁忙时立即清除对文件系统的所有引用。
在这种情况下,您不应使用该-l
标志,因为您需要确保文件系统确实已卸载。
在继续之前验证文件系统是否确实已卸载。如果有的lsof
话可能有助于识别意外的过程。