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文件系统。
如果您不知道设备名称,请使用
fdisk
,df
,或其他任何找到它的工具。卸载设备:
sudo umount /dev/sdc1
跑
fsck
修复文件系统:sudo fsck -p /dev/sdc1
的
-p
选项告诉fsck
自动修复可以安全解决的所有问题,而无需用户干预。修复文件系统后,安装分区:
sudo mount /dev/sdc1
修复根文件系统#
fsck
无法检查正在运行的计算机上的根文件系统,因为无法将其卸载。
如果要检查或修复根文件系统,则可以使用几种选择。 您可以设置 fsck
要在启动时运行,请以恢复模式启动系统,或使用实时CD。
跑步 fsck
在恢复模式下:
- 进入启动菜单,然后选择“高级选项”
- 选择恢复模式,然后选择“ fsck”。
- 当提示重新安装根文件系统时,选择“是”。
- 完成后,恢复正常启动。
跑步 fsck
从实时分发中:
启动实时分发。
使用
fdisk
要么parted
查找根分区名称。打开终端并运行:
sudo fsck -p /dev/sda1
完成后,重新启动实时分发并启动系统。
在引导号上检查文件系统
在大多数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终端