本文主要介绍如何使用 fsck 工具检查并修复 Linux 实例的文件系统
Linux 中的 fsck 命令用于检查和修复文件系统中的错误。fsck 是文件系统检查( File System Check)的缩写。它可以在系统启动时自动运行,也可以手动执行
fsck 命令的基本语法如下:
– -a
:自动修复文件系统中的错误。
– -f
:强制检查即使文件系统看起来干净。
– -n
:模拟运行,不实际执行修复操作。
– -r
:交互式检查,并询问用户是否修复错误。
– -y
:自动回答“是”修复错误的提示。
设备是指需要检查的文件系统所在的设备,如硬盘分区(/dev/sda1)或逻辑卷(/dev/mapper/vg-root)等。
前提条件
已针对系统盘或数据盘创建快照,创建快照请参见云硬盘快照(公测)
操作步骤
本文以/dev/vda1 为例,对文件系统的检查和修复操作进行介绍。
1.远程连接 Linux 实例
数据盘文件系统问题:请参见登录 Linux 弹性云主机
系统盘文件系统问题:您需要将系统盘挂载到其他实例中成为数据盘,然后再登录实例进行以下操作。
2.执行以下命令,确认文件系统没有挂载到系统上。
df -h
3.执行 blkid
命令,查看文件系统类型,从而针对不同的文件系统类型,执行不同的检查和修复命令。
对于EXT3、EXT4文件系统:fsck -y /dev/vda1
对于XFS文件系统:xfs_repair /dev/vda1
4.确认修复成功后,若您是系统盘文件系统问题,需要将磁盘挂载到之前的实例中。若您是数据盘文件系统问题,请忽略此步骤。
5.执行以下命令,挂载文件系统。
mount /dev/vda1 /mnt
6.若您再次执行以下命令,检查已挂载的文件系统,依然会提示文件系统异常,此时您可以忽略相关告警信息,更多信息,请参见 Redhat issue
对于EXT3、EXT4文件系统:fsck -y /dev/vda1
对于XFS文件系统:xfs_repair /dev/vda1