系统管理指南:高级管理

阶段 2:检查路径名消息

此阶段将删除指向阶段 1 和 1B 中所找到的坏 inode 的目录项。它将报告下列原因所导致的错误状态:

整理(-o -p 选项)文件系统时,此阶段中的所有错误都会终止 fsck,但与不是块大小倍数的目录、重复块和坏块、超出范围的 inode 以及多余的硬链接相关的错误除外。

阶段 2 中可能出现以下消息(按字母顺序):


BAD INODE state-number TO DESCEND
原因

fsck 内部错误将一个无效状态 state-number 传递给由文件系统目录结构向下派生的例程。fsck 退出。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


BAD INODE NUMBER FOR '.' I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
原因

找到一个目录 inode-number,其用于 "." 的 inode 编号不等于 inode-number

操作

要更改 "." 的 inode 编号以使其等于 inode-number,请在 FIX 提示符下键入 y。要使 "." 的 inode 编号保持不变,请键入 n


BAD INODE NUMBER FOR '..' I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
原因

找到一个目录 inode-number,其用于 ".." 的 inode 编号不等于 inode-number 的父级。

操作

要更改 ".." 的 inode 编号以使其等于 inode-number 的父级,请在 FIX 提示符下键入 y。(请注意,根 inode 中的 ".." 指向本身。)要使 ".." 的 inode 编号保持不变,请 键入 n


BAD RETURN STATE state-number FROM DESCEND
原因

fsck 内部错误从文件系统目录结构向下派生的例程中返回不可能的状态 state-numberfsck 退出。

操作

如果显示此消息,请与当地服务提供商或其他有资格的人员联系。


BAD STATE state-number FOR ROOT INODE
原因

内部错误为根 inode 指定了不可能的状态 state-numberfsck 退出。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


BAD STATE state-number FOR INODE=inode-number
原因

内部错误为 inode inode-number 指定了不可能的状态 state-numberfsck 退出。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


DIRECTORY TOO SHORT I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
原因

发现大小 file-size 小于最小目录大小的目录 filename。此时将显示属主 UID、模式 file-mode、大小 file-size、修改时间 modification-time 和目录名称 filename

操作

要将目录的大小增大至最小目录大小,请在 FIX 提示符下键入 y。要忽略此目录,请键入 n


DIRECTORY filename: LENGTH file-size NOT MULTIPLE OF disk-block-size (ADJUST)

Oracle Solaris 10:


DIRECTORY filename: LENGTH file-size NOT MULTIPLE OF block-number (ADJUST)
原因

找到一个目录 filename,其大小 file-size 不是目录块大小 disk-block-size 的倍数。

Oracle Solaris 10:

找到一个目录 filename,其大小 file-size 不是目录块大小 block-number 的倍数。

操作

要将长度舍入为合适的磁盘块大小,请键入 y。整理文件系统(-o p 选项)时,fsck 只显示警告并调整目录。要忽略此状态,请键入 n

Oracle Solaris 10:

要将长度舍入为合适的块大小,请键入 y。整理文件系统(-o p 选项)时,fsck 只显示警告并调整目录。要忽略此状态,请键入 n


DIRECTORY CORRUPTED I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (SALVAGE)
原因

找到了具有不一致的内部状态的目录。

操作

要丢弃达到下一目录边界(通常为 512 字节边界)的所有项,请在 SALVAGE 提示符下键入 y。此极端操作最多可丢弃 42 个项。仅在其他恢复努力失败之后,才能采取此操作。要跳到下一个目录边界并继续阅读,但不修改目录,请键入 n


DUP/BAD I=inode-number OWNER=O MODE=M SIZE=file-size 
MTIME=modification-time TYPE=filename (REMOVE)
原因

阶段 1 或阶段 1B 发现与目录或文件项 filename、inode inode-number 相关的重复片段或坏片段。此时将显示属主 UID、模式 file-mode、大小 file-size、修改时间 modification-time 以及目录名称或文件名 filename。如果指定了 -op(整理)选项,则会删除重复/坏片段。

Oracle Solaris 10:

阶段 1 或阶段 1B 发现与目录或文件项 filename、inode inode-number 相关的重复块或坏块。此时将显示属主 UID、模式 file-mode、大小 file-size、修改时间 modification-time 以及目录名称或文件名 filename。如果指定了 -op(整理)选项,则会删除重复/坏块。

操作

要删除该目录或文件项 filename,请在 REMOVE 提示符下键入 y。要忽略此错误状态,请键入 n


DUPS/BAD IN ROOT INODE (REALLOCATE)
原因

阶段 1 或阶段 1B 在文件系统的根 inode(inode 编号 20)中发现重复片段或坏片段。

Oracle Solaris 10:

阶段 1 或阶段 1B 在文件系统的根 inode(通常为 inode 编号 2)中发现重复块或坏块。

操作

要清除根 inode 的现有内容并对其重新分配,请在 REALLOCATE 提示符下键入 y。通常在根 inode 中找到的文件和目录将在阶段 3 中恢复,并被放入 lost+found 目录中。如果尝试分配根时失败,fsck 将退出并显示以下消息: CANNOT ALLOCATE ROOT INODE。键入 n 获取 CONTINUE 提示符。键入 y 以对 CONTINUE 提示符做出响应,忽略根 inode 中的 DUPS/BAD 错误状态并继续运行文件系统检查。如果根 inode 不正确,则可能会生成许多其他错误消息。键入 n 终止程序。


EXTRA '.' ENTRY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
原因

找到一个 "." 有多个项的目录 inode-number

操作

要删除 "." 的多余项,请在 FIX 提示符下键入 y。要使该目录保持不变,请键入 n


EXTRA '..' ENTRY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
原因

找到一个 ".."(父目录)有多个项的目录 inode-number。

操作

要删除 ".."(父目录)的多余项,请在 FIX 提示符下键入 y。要使该目录保持不变,请键入 n


hard-link-number IS AN EXTRANEOUS HARD LINK TO A DIRECTORY filename (REMOVE)
原因

fsck 发现链接到目录 filename 的多余硬链接 hard-link-number。整理(-o p 选项)时,fsck 将忽略多余硬链接。

操作

要删除多余项 hard-link-number,请在 REMOVE 提示符下键入 y。要忽略该错误状态,请键入 n


inode-number OUT OF RANGE I=inode-number NAME=filename (REMOVE)
原因

目录项 filename 有一个 inode 编号 inode-number 大于 inode 列表的最后一个数。如果指定了 -p(整理)选项,则会自动删除该 inode。

操作

要删除目录项 filename,请在 REMOVE 提示符下键入 y。要忽略该错误状态,请键入 n


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename (FIX)
原因

找到一个第一项(用于 "." 的项)尚未分配的目录 inode-number

操作

要为 "." 生成一个 inode 编号等于 inode-number 的项,请在 FIX 提示符下键入 y。要使该目录保持不变,请键入 n


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, FIRST ENTRY IN 
DIRECTORY CONTAINS filename
原因

找到一个第一项为 filename 的目录 inode-numberfsck 无法解决此问题。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, INSUFFICIENT 
SPACE TO ADD '.'
原因

找到一个第一项不是 "." 的目录 inode-numberfsck 无法解决此问题。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename (FIX)
原因

找到一个第二项尚未分配的目录 inode-number

操作

要为 ".." 生成一个 inode 编号等于 inode-number 的父级的项,请在 FIX 提示符下键入 y。(请注意,根 inode 中的 ".." 指向本身。)要使该目录保持不变,请键入 n


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, SECOND ENTRY IN 
DIRECTORY CONTAINS filename
原因

找到一个第二项为 filename 的目录 inode-numberfsck 无法解决此问题。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, INSUFFICIENT SPACE 
TO ADD '..'
原因

找到一个第二项不是 ".."(父目录)的目录 inode-number。fsck 无法解决此问题。

操作

如果显示此错误消息,请与当地服务提供商或其他有资格的人员联系。


NAME TOO LONG filename
原因

发现一个超长的路径名,这通常表示文件系统名称空间中的循环。如果特权用户对目录创建了循环链接,则会出现此错误。

操作

删除循环链接。


ROOT INODE UNALLOCATED (ALLOCATE)
原因

根 inode(通常为 inode 编号 2)没有分配模式位。

操作

要将 inode 2 分配为根 inode,请在 ALLOCATE 提示符下键入 y。通常在根 inode 中找到的文件和目录将在阶段 3 中恢复,并被放入 lost+found 目录中。如果尝试分配根 inode 时失败,fsck 将显示此消息并退出: CANNOT ALLOCATE ROOT INODE。要终止该程序,请键入 n


ROOT INODE NOT DIRECTORY (REALLOCATE)
原因

文件系统的根 inode(通常为 inode 编号 2)不是目录 inode。

操作

要清除根 inode 的现有内容并对其重新分配,请在 REALLOCATE 提示符下键入 y。通常在根 inode 中找到的文件和目录将在阶段 3 中恢复,并被放入 lost+found 目录中。如果尝试分配根 inode 时失败,fsck 将显示此消息并退出: CANNOT ALLOCATE ROOT INODE。要使 fsck 提供带 FIX 的提示,请键入 n


UNALLOCATED I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time type=filename(REMOVE)
原因

目录或文件项 filename 指向未分配的 inode inode-number。此时将显示属主 UID、模式 file-mode、大小 file-size、修改时间 modification-time 和文件名 filename

操作

要删除目录项 filename,请在 REMOVE 提示符下键入 y。要忽略该错误状态,请键入 n


ZERO LENGTH DIRECTORY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (REMOVE)
原因

目录项 filename 的大小 file-size 为零。此时将显示属主 UID、模式 file-mode、大小 file-size、修改时间 modification-time 和目录名称 filename

操作

要删除目录项 filename,请在 REMOVE 提示符下键入 y。这将导致阶段 4 中出现 BAD/DUP 错误消息。要忽略该错误状态,请键入 n