Linux中的Fsck命令(修复文件系统)

fsck (文件系统检查)是一种命令行实用程序,可让您在一个或多个Linux文件系统上执行一致性检查和交互式修复。 它使用特定于所检查文件系统类型的程序。

您可以使用 fsck 在系统无法启动或无法安装分区的情况下,使用此命令修复损坏的文件系统。

在本文中,我们将讨论 fsck 命令。

如何使用 fsck

fsck 命令采用以下一般形式:

fsck [OPTIONS] [FILESYSTEM]

仅root用户或具有 sudo 特权可以清除缓冲区。

当没有 FILESYSTEM 作为参数提供, fsck 检查设备中列出的设备 fstab 文件。

永远不要跑 fsck 在已安装的分区上,因为它可能会损坏文件系统。 始终尝试检查或修复文件系统之前 unmount 首先。

fsck 该命令是各种Linux文件系统检查器的包装器(fsck.*),并根据文件系统的类型接受不同的选项。

查看手册页以获取有关特定检查器的更多信息。 例如,查看可用于 fsck.ext4,输入:

man fsck.ext4

修复损坏的文件系统#

最简单的用例 fsck 命令是修复非根损坏的ext3或ext4文件系统。

  1. 如果您不知道设备名称,请使用 fdiskdf ,或其他任何找到它的工具。

  2. 卸载设备:

    sudo umount /dev/sdc1
  3. fsck 修复文件系统:

    sudo fsck -p /dev/sdc1

    -p 选项告诉 fsck 自动修复可以安全解决的所有问题,而无需用户干预。

  4. 修复文件系统后,安装分区:

    sudo mount /dev/sdc1

修复根文件系统#

fsck 无法检查正在运行的计算机上的根文件系统,因为无法将其卸载。

如果要检查或修复根文件系统,则可以使用几种选择。 您可以设置 fsck 要在启动时运行,请以恢复模式启动系统,或使用实时CD。

跑步 fsck 在恢复模式下:

  1. 进入启动菜单,然后选择“高级选项”
  2. 选择恢复模式,然后选择“ fsck”。
  3. 当提示重新安装根文件系统时,选择“是”。
  4. 完成后,恢复正常启动。

跑步 fsck 从实时分发中:

  1. 启动实时分发。

  2. 使用 fdisk 要么 parted 查找根分区名称。

  3. 打开终端并运行:

    sudo fsck -p /dev/sda1
  4. 完成后,重新启动实时分发并启动系统。

在引导号上检查文件系统

在大多数Linux发行版中, fsck 如果文件系统被标记为脏文件,或者在一定数量的引导或时间之后,则在引导时运行。

要查看当前的安装计数,检查频率编号,检查间隔以及最后一次检查特定分区的时间,请使用 tune2fs 工具:

sudo tune2fs -l /dev/sdc1 | grep -i 'last checked|mount count'
Mount count:              292
Maximum mount count:      -1
Last checked:             Tue Jul 24 11:10:07 2018
Check interval:           0 (<none>)
  • “最大安装次数”是将检查文件系统的安装次数。 的价值 0 要么 -1 意思是 fsck 永远不会运行。
  • “检查间隔”是两次文件系统检查之间的最长时间。

例如,如果您要运行 fsck 每25次启动(安装)后,键入:

sudo tune2fs -c 25 /dev/sdc1

您还可以设置两次检查之间的最长时间。 例如,要将其设置为一个月,可以运行:

sudo tune2fs -i 1m /dev/sdc1

强迫 fsck 要在SystemD发行版上的启动时运行,请传递以下内核启动参数:

fsck.mode=force
fsck.repair=yes

在较旧的发行版上 fsck 将在启动时运行 /forcefsck 文件存在:

sudo touch /forcefsck

fstab 选项#

fstab 是一个配置文件,告诉系统如何以及在何处安装分区。

/etc/fstab 文件包含以下格式的条目列表:

/ etc / fstab

# [File System] [Mount Point] [File System Type] [Options] [Dump] [PASS]
/dev/sda1       /             ext4               defaults  0      1
/dev/sda2       /home         ext4               defaults  0      2
server:/dir     /media/nfs    nfs                defaults  0      0

最后第六栏([PASS])是控制重新启动时文件系统检查顺序的选项。

  • 0 -不要检查。
  • 1 -首先要检查的文件系统,一次要检查。
  • 2 -所有其他文件系统,这些文件系统稍后或可能并行检查。

根文件系统的值应为 1,并且您要检查的所有其他文件系统的值都应为 2

结论#

fsck 是用于检查和选择修复Linux文件系统的命令行工具。

要了解更多有关 fsck 命令,请访问fsck手册页或键入 man fsck 在您的终端中。

如果您有任何疑问或反馈,请随时发表评论。

fsck终端

Sidebar