如果同时使用 UFS noatime 和 logging 安装选项,将由于无法写入 inode 而导致文件系统被破坏。产生此故障后将显示以下消息:
/mnt: 意外分配 inode 1783,运行 fsck(1M)... /zoot: 意外释放 inode 5674,运行 fsck(1M)... |
解决方法:按照以下步骤执行操作:
确定哪些文件系统使用了 noatime 和 logging 安装选项。
% mount | grep noatime | grep logging |
编辑 /etc/vfstab 以便从所有使用 logging 选项的文件系统删除 noatime 选项。
卸载所有使用 logging 和 noatime 安装选项安装的文件系统,并对其运行 fsck 命令。
对所有以前使用 logging 和 noatime 安装选项安装、但当前已卸载的文件系统,运行 fsck 命令。
使用 fsck 命令可能会显示类似以下内容的消息:
8016 DUP I=646 EXCESSIVE DUP BLKS I=7404 INCORRECT BLOCK COUNT I=7407 DUP/BAD I=646 OWNER=root MODE=100644 ZERO LENGTH DIRECTORY I=3807 BAD/DUP FILE I=575 OWNER=root MODE=100644 BAD/DUP DIRECTORY I=3807 OWNER=root MODE=40755 LINK COUNT DIR I=3806 OWNER=root MODE=40755 LINK COUNT FILE I=25084 OWNER=host1 MODE=100644 FREE BLK COUNT(S) WRONG IN SUPERBLK |