概述
fsck (文件系统检查) 是一个工具,用于检查存储在磁盘分区上的文件系统的结构完整性,并在必要时尝试修复。当系统因电源故障或硬件错误等原因突然关闭时,文件系统的元数据(如 inode、超级块等)可能会损坏。fsck 检测并修复这些损坏,使文件系统恢复正常状态。如果说 `mkfs` 是创建文件系统的工具,那么 `fsck` 可以说是维护文件系统的工具。
主要特点
fsck 命令的主要特点如下:
- 检查文件系统的完整性。
- 可以以交互式或自动模式修复损坏的文件系统。
- 作为调用特定文件系统专用工具(如 `fsck.ext4`、`fsck.xfs` 等)的前端。
- 在系统启动时自动运行,检查文件系统是否损坏。
fsck 与 fsck.<文件系统>
fsck 是一个调用特定文件系统检查工具的包装器。`fsck -t ext4 /dev/sda1` 命令在内部等同于执行 `fsck.ext4 /dev/sda1`。
- fsck.ext4: 检查和修复 ext2/3/4 文件系统的工具。也称为 `e2fsck`。
- fsck.xfs: 检查 XFS 文件系统的工具。也称为 `xfs_repair`。
- fsck.vfat: 检查 FAT 文件系统的工具。
主要选项
fsck 提供了用于指定文件系统类型的 `-t` 选项,以及控制修复方式的各种选项。
1) 执行选项
生成的命令:
请尝试组合命令。
描述:
`fsck` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
使用示例
通过 fsck 命令的各种使用示例来熟悉其功能。**只能在卸载状态下进行检查/修复。**
检查文件系统
sudo fsck /dev/sda1
检查 `/dev/sda1` 分区的文件系统。必须处于卸载状态。
自动修复文件系统
sudo fsck -y /dev/sdb1
自动修复 `/dev/sdb1` 分区的文件系统错误,无需用户确认。
指定文件系统类型后检查
sudo fsck -t ext4 /dev/sdc1
明确指定 `ext4` 文件系统类型来检查 `/dev/sdc1`。这等同于直接调用 `fsck.ext4`。
检查所有文件系统
sudo fsck -A
自动检查 `/etc/fstab` 中定义的所有文件系统。执行与启动时类似的操作。
安装
fsck 是 `util-linux` 软件包的一部分,默认包含在大多数 Linux 发行版中。无需单独安装。但是,某些特定文件系统专用工具可能需要单独安装软件包。
安装 XFS 工具 (Debian/Ubuntu)
sudo apt update
sudo apt install -y xfsprogs
安装 ext4 工具 (Debian/Ubuntu)
sudo apt update
sudo apt install -y e2fsprogs
提示与注意事项
总结了使用 fsck 命令时需要注意的事项。
提示
- fsck **必须在卸载状态下**运行。对已挂载的分区运行可能会导致数据损坏或丢失。要检查系统的根文件系统 (`/`),您需要启动到单用户模式或使用 Live CD/USB。
- 自动修复选项 (`-y`) 虽然方便,但在损坏严重的情况下可能会删除重要数据。因此,对于包含重要数据的情况,建议先使用 `-n` 选项进行检查以确保安全。
- 在运行 `fsck` 之前,必须使用 `umount` 命令卸载目标分区。(例如:`sudo umount /dev/sdb1`)