如何使用 fsck 检查根分区?

如何使用 fsck 检查根分区?

我安装了 Linux Mint 12 KDE,我想检查根分区是否有任何错误。

如何在启动时使用 fsck 检查根分区?

答案1

sudo touch /forcefsck

然后重新启动。

答案2

您也可以为此使用关机命令。

shutdown -rF now

来自男人:

-F 标志表示“强制 fsck”。
这只会创建一个咨询文件 /forcefsck,系统重新启动时可以对其进行测试。启动 rc 文件可以测试此文件是否存在,并决定使用特殊的“强制”标志运行 fsck(1),以便即使正确卸载的文件系统也会得到检查。此后,启动过程应该会删除 /forcefsck。

答案3

下面是另一种方法:

tune2fs -C 2 -c 1 /dev/THEDEVTHATROOTIS

重启

然后将检查文件系统,一旦一切正常,你应该这样做

tune2fs -c 60 /dev/THEDEVTHATROOTIS

我假设 max-mount-count 设置为 60,你应该在发出第一个命令之前先弄清楚

dumpe2fs /dev/THEDEVTHATROOTIS |grep "Maximum mount count"

答案4

在现代 Linux 系统上,上述答案(使用 forcefsck)不起作用。您必须手动执行此操作:

  1. 将您的根分区放入只读模式通过修改故障分区的行/etc/fstab(但要记住您的旧设置):

    UUID=fd1d0fad-3a4c-457f-9b5e-eed021cce3d1 /                       ext4    remount,ro        1 1
    
  2. 重启

  3. 切换到运行级别 1 只是为了尽量减少干扰进程的数量:

    init 1
    
  4. 修复您的文件系统(将 /dev/sda2 替换为您的分区的设备),现在应该可以工作了,因为根分区是只读的:

    fsck /dev/sda2
    
  5. 重启。(在我的 Fedora 21 系统上,我必须使用 Grub2 在启动过程中更改为运行级别 1,因为否则系统会因无法在根分区上写入而卡住)

  6. 使您的根文件系统可读/可写:

    mount -o remount,rw /dev/sda2
    
  7. 将 /etc/fstab 恢复到其原始状态。

  8. 重启


来源:http://bitsofmymind.com/2014/03/14/how-to-fix-fsck-your-root-file-system-that-you-have-to-boot-into-on-linux/

相关内容