搜索

12.2. fsck 的文件系统特定信息

download PDF

12.2.1. ext2、ext3 和 ext4

所有这些文件 sytems 使用 e2fsck 二进制文件来执行文件系统检查和修复。文件名 fsck.ext2、 fsck.ext3fsck.ext4 是同一二进制文件的硬链接。这些二进制文件在引导时自动运行,其行为因正在检查的文件系统和文件系统的状态而异。
对于不是元数据日志记录文件系统的 ext2 和没有日志的 ext4 文件系统,会调用完整的文件系统检查和修复。
对于带有元数据日志的 ext3 和 ext4 文件系统,日志会在用户空间中重新执行,二进制文件会退出。这是默认操作,因为日志重播可确保崩溃后文件系统的一致性。
如果这些文件系统在挂载时遇到元数据不一致的情况,它们会在文件系统超级块中记录此事实。如果 e2fsck 发现文件系统标记为此类错误,e2fsck 会在重播日志(如果存在)后执行完整检查。
如果未指定 -p 选项,e2fsck 可能会在运行期间要求用户输入。p 选项告知 e2fsck 自动执行所有可以安全完成的修复。如果需要用户干预,e2fsck 会在其输出中指示未修复的问题,并在退出代码中反映此状态。
常用的 e2fsck 运行时选项包括:
-n
无修改模式.仅检查操作.
-b superblock
如果主块被损坏,请指定备用的 suprerblock 的块数。
-f
如果超级块没有记录的错误,也强制进行全面检查。
-j journal-dev
指定外部日志设备(若有的话)。
-p
自动修复或"复制"文件系统,无需用户输入。
-y
假设所有问题的答案都为"是"。
e2fsck 的所有选项都在 e2fsck (8) 手册页中指定。
e2fsck 在运行时执行以下五个基本阶段:
  1. Inode、块和大小检查.
  2. 目录结构检查。
  3. 目录连接性检查。
  4. 参考计数检查。
  5. 组摘要信息检查。
e2image (8) 工具可用于在修复前创建元数据镜像,以进行诊断或测试。-r 选项用于测试目的,以便创建与文件系统本身大小相同的稀疏文件。然后 e2fsck 可以直接对生成的文件进行操作。如果要存档或提供用于诊断的镜像,则应指定 -Q 选项。这会创建更精简的文件格式,适合传输。

12.2.2. XFS

在引导时不自动执行任何修复。要启动文件系统检查或修复,请使用 xfs_repair 工具。
注意
虽然 xfsprogs 软件包中存在 fsck.xfs 二进制文件,但这仅用于满足在启动时查找 fsck 的 initscripts。文件系统 二进制文件。fsck.xfs 立即退出,退出代码为 0。
旧的 xfsprogs 软件包包含一个 xfs_check 工具。这个工具非常慢,对于大型文件系统无法很好地扩展。因此,它已被 xfs_repair -n 替代。
xfs_repair 需要文件系统上的干净日志才能运行。如果没有完全卸载文件系统,则应在使用 xfs_repair 之前挂载和卸载文件系统。如果日志损坏且无法重新执行,则使用 -L 选项可将日志归零。
重要
只有无法重新执行日志时,必须使用 -L 选项。选项丢弃日志中的所有元数据更新,并产生进一步的不一致。
可以使用 -n 选项,以空运行(仅检查)模式运行 xfs_repair。指定此选项时,不会对文件系统进行任何更改。
xfs_repair 使用非常少的选项。常用的选项包括:
-n
无修改模式。仅检查操作.
-L
将元数据日志归零。仅当无法通过 mount 重新执行日志时才使用。
-m maxmem
将运行期间使用的内存限制为 maxmem MB。可以指定 0 来粗略估算所需的最小内存。
-l logdev
如果存在,指定外部日志设备。
xfs_repair 的所有选项都在 xfs_repair (8) 手册页中指定。
xfs_repair 在运行时执行以下八个基本阶段:
  1. inode 和 inode 块映射(寻址)检查.
  2. inode 分配映射检查。
  3. inode 大小检查。
  4. 目录检查。
  5. 路径名称检查。
  6. 链接数检查。
  7. 空闲映射检查。
  8. 超级块检查。
如需更多信息,请参阅 xfs_repair (8) 手册页。
xfs_repair 不是交互式的。所有操作都自动执行,无需用户输入。
如果需要在修复前为诊断或测试目的创建元数据镜像,则可以使用 xfs_metadump (8)xfs_mdrestore (8) 工具。

12.2.3. Btrfs

注意
Btrfs 在 Red Hat Enterprise Linux 7 中作为技术预览功能提供,但自 Red Hat Enterprise Linux 7.4 发行版本起已被弃用。它将在以后的 Red Hat Enterprise Linux 主发行版本中删除。
如需更多信息,请参阅 Red Hat Enterprise Linux 7.4 发行注记中的 已弃用的功能
btrfsck 工具用于检查和修复 btrfs 文件系统。此工具仍处于早期开发阶段,可能无法检测或修复所有类型的文件系统损坏。
默认情况下,btrfsck 不会对文件系统进行更改;也就是说,它默认运行仅检查模式。如果需要修复,则必须指定 --repair 选项。
btrfsck 在运行时执行以下三个基本阶段:
  1. 扩展检查。
  2. 文件系统 root 检查。
  3. 根参考计数检查。
btrfs-image (8) 工具可用于在修复前创建元数据镜像,以进行诊断或测试。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.