FSCK是一个重要的Linux/Unix工具,用于检测和修复文件系统中的错误。它类似于Windows操作系统中的“chkdsk”工具,但它是为Linux、MacOS、FreeBSD操作系统准备的。FSCK的全称是FileSystemConsistencyCheck。大多数时候,它在系统启动时运行,但如果需要,它也可以由超级用户手动启动。它可以在三种模式下运行,发现错误时检查并让用户决定如何处理,检查并自动修复,发现错误时检查但只显示错误而不修复。FSCK的语法手动执行FSCK的语法是$fsckoptionsdrivesfsck支持的选项是-pautorepair(donotask)-nmakenochangestothefilesystem-yanswer"yes"toallquestions-ccheck所有坏块并将其添加到坏块列表-f即使文件系统被标记为干净也强制检查-v输出详细-b超级块使用替代超级块-Bblocksize指定超级块块大小-jexternal_journal指定外部日志的位置-lbad_blocks_file添加到指定的坏块列表(文件)-Lbad_blocks_file指定坏块列表(文件)我们可以根据要做的操作任意指定这些选项。让我们看下面的一些例子。Fsck命令的案例注意:请在开始讨论案例之前阅读本段。我们不应该使用fsck来检查挂载的磁盘,它很可能对磁盘造成致命的损坏。所以在开始使用fsck之前,我们需要使用下面的命令来卸载磁盘,$umountdrivename这样,$umount/dev/sdb1可以通过下面的命令查看分区号,$fdisk-l另外,当运行fsck,您可能会出错并返回一些错误代码。以下是一些常见错误及其含义的列表,0-没有错误1??-修复了一些文件系统错误2-需要重新启动系统4-文件系统错误未修复8-操作员错误16-用法或语法错误32-fsck被用户128取消-共享库错误现在让我们看一些fsck命令的示例,以检查单个分区上的错误在终端中运行以下命令来检查单个分区,$umount/dev/sdb1$fsck/dev/sdb1检查文件系统错误并自动修复它们使用选项-a执行一致性检查并自动修复这些错误。您也可以使用-y而不是-a选项。$fsck-a/dev/sdb1检查文件系统错误但不修复它们如果我们只想知道文件系统上有什么错误但不想修复它们,那么我们可以使用选项-n,$fsck-n/dev/sdb1checkErrorsinallpartitions-A选项一次检查所有分区上的文件系统错误,$fsck-A禁止检查根文件系统,可以使用选项-R,$fsck-AR只检查分区指定文件系统类型的分区使用选项-t和文件系统类型使fsck只检查指定文件系统类型的分区,如指定文件系统类型为“ext4”,$fsck-text4/dev/sdb1or,$fsck-t-Aext4only对未挂载的磁盘进行一致性检查为确保fsck仅在未挂载的磁盘上运行,请使用选项-M,$fsck-AM
