fsck命令详解

基础命令学习目录首页

本文出自 “airfish2000” 博客,更多命令查看博客:

http://airfish2000.blog.51cto.com/10829608/1880801

 

fsck命令

使用fsck命令可以检查文件系统并尝试修复系统的错误。

命令语法:

fsck [选项] [文件系统]

命令中各选项的含义如表所示。

表                                fsck命令选项含义


选项


含义


-a


自动修复文件系统,不询问任何问题


-A


按照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统


-N


不执行命令,仅列出实际执行会进行的动作


-P


当搭配-A选项使用时,则会同时检查/目录的文件系统


-r


采用交互模式,在执行修复时询问,让用户确认并决定处理方式


-R


当使用-A选项检查所有文件系统的时候,跳过/目录的文件系统


-t <文件系统类型>


指定要检查的文件系统类型


-C


显示完整的检查进度


-y


关闭互动模式


-c


检查坏块,并将它们添加到坏块列表


-p


自动修复文件系统错误


-f


强制检查,即使文件系统被标记干净

例:检查磁盘分区/dev/sda5的文件系统。

[[email protected] ~]# fsck /dev/sda5

例:强制检查磁盘分区/dev/sda5的文件系统

[[email protected]~]# fsck -f /dev/sda5

fsckfrom util-linux-ng 2.17.2

e2fsck1.41.12 (17-May-2010)

第一步:检查inode,块,和大小

第二步:检查目录结构

第3步:检查目录连接性

Pass4: Checking reference counts

第5步:检查簇概要信息

/dev/sda5:12/6561792 files (0.0% non-contiguous), 459863/26215641 blocks

例:检查和修复磁盘分区/dev/sda5的文件系统,在执行修复时进行询问,让用户决定处理方式,显示详细修复过程。

[[email protected] ~]# fsck -rV -t ext4 /dev/sda5

例:检查磁盘分区/dev/sda5的文件系统,并显示完整的检查进度。

[[email protected] ~]# fsck -C -t ext4/dev/sda5

例:检查磁盘分区/dev/sda6的msdos文件系统的是否正常,如果有异常便自动修复。

[[email protected] ~]# fsck -t msdos -a/dev/sda6

个人分类: linux运维

功能说明:检查文件系统并尝试修复错误。

语  法:fsck [-aANPrRsTV][-t <文件系统类型>][文件系统...]

补充说明:当文件系统发生错误四化,可用fsck指令尝试加以修复。

注意:千万不能在运行的系统上面直接执行fsck,特别是RHEL6.0以下ext3的文件系统,否则100%损坏根文件系统,使用fsck -y /dev/sdb1 修复磁盘时,必须将sdb1分区umount掉

参  数:

-a 自动修复文件系统,不询问任何问题。

-A 依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统。

-N 不执行指令,仅列出实际执行会进行的动作。

-P 当搭配"-A"参数使用时,则会同时检查所有的文件系统。

-r 采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式。

-R 当搭配"-A"参数使用时,则会略过/目录的文件系统不予检查。

-s 依序执行检查作业,而非同时执行。

-t<文件系统类型> 指定要检查的文件系统类型。

-T 执行fsck指令时,不显示标题信息。

-V 显示指令执行过程。

fdisk -l 查看设备号

运行 fsck -y /dev/sdb1 修复磁盘  -y参数为自动确认修复

这条命令也是用fsck修复磁盘是,常使用的命令

特别说明:在EXT3(实际上其他文件系统也类似)无法mount,或者提示fsck时,如果有重要数据,应该慎重对待,千万不可贸然执行"fsck -f -y "这样的自动修复功能。如果可能,先对故障区域做dd全镜像后再执行,或者以只读方式执行,并仔细看修复过程,如果提示大量inode错误、需要重建树、或大小不对等就不可再继续下去了。

Linux ext3 fsck一定要慎用

不管是哪种文件系统,其根本目的都是相同的:如何把文件存在系统给定的区域里,如何有效地管理文件的读与写。为实现这样的目的,驱动层需要完善、周密地应付附加在文件系统上的各种操作。这些操作通常不会是一条指令完成的,如果一个过程需要多条指令完成,在执行这些操作时,全部指令未完成的情况下产生中断,那这个文件系统便会出现一致性错误(或者叫连续性错误)。

为了保证尽可以少的出现一致性错误,现在主流的文件系统都会设计成日志型的。日志型文件系统的主要特点就是把一个操作的所有指令执行过程都另外缓冲下来,如果全部执行完成再清除日志标志,如果操作没有执行完成,可以在重新激活后通过日志回溯或继续完成。

EXT3的日志功能通过在EXT2的设计基础上增加一个特殊的文件(通常是8号节点文件),在这个文件中记录文件系统的操作过程。但EXT系统文件系统本身在节点、间接索引块、目录节点方面没有冗余保护,所以当文件系统除日志外的其他结构并不一致,却又要通过fsck来进行修复,这种一致性有可能将原本正确的结构也错误化。(就像原来是1+2=3,现在错成了1+3=3,也许改完后变成了1+3=4,就完全没办法还原成最早的1+2=3)。

数据恢复领域经常会遇到这类情况:一次RAID出故障后,下次启动系统提示做fsck,但做完后,也无法mount分区或者mount 分区后数据全是错的。需要对这类情况进行数据修复的难度是很大的,从一个完整的结构(fsck后实际上从系统角度看已经是完整的了)再构建另一个完全不同的结构要比修正一个错误的结构更难以下手。其实这类情况,很多是因为RAID5有早离线的盘加入了两个逻辑磁盘组,导致所有的数据流是以新+旧的方式交错组成的,自然会有太多错误。这时候如果做fsck后,有可能数据都无法恢复了。

所以,在EXT3(实际上其他文件系统也类似)无法mount,或者提示fsck时,如果有重要数据,应该慎重对待,千万不可贸然执行"fsck -f -y "这样的自动修复功能。如果可能,先对故障区域做dd全镜像后再执行,或者以只读方式执行,并仔细看修复过程,如果提示大量inode错误、需要重建树、或大小不对等就不可再继续下去了。

原文链接:https://blog.csdn.net/ggxiaobai/article/details/53505118

补充说明:当文件系统发生错误四化,可用fsck指令尝试加以修复。
注意:千万不能在运行的系统上面直接执行fsck,特别是RHEL6.0以下ext3的文件系统,
      否则100%损坏根文件系统,使用fsck -y /dev/sdb1 修复磁盘时,必须将sdb1分区umount掉

fdisk -l 查看设备号
运行 fsck -y /dev/sdb1 修复磁盘  -y参数为自动确认修复
这条命令也是用fsck修复磁盘是,常使用的命令

特别说明:在EXT3(实际上其他文件系统也类似)无法mount,或者提示fsck时,如果有重要数据,应该慎重对待,千万不可贸然执行"fsck -f -y "这样的自动修复功能。如果可能,先对故障区域做dd全镜像后再执行,或者以只读方式执行,并仔细看修复过程,如果提示大量inode错误、需要重建树、或大小不对等就不可再继续下去了。

---------------------
作者:selina361
来源:CSDN
原文:https://blog.csdn.net/selina361/article/details/79784698
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/machangwei-8/p/10353614.html

时间: 2024-10-12 10:34:18

fsck命令详解的相关文章

hadoop fsck命令详解

hadoop fsck命令详解 hadoop  fsck Usage: DFSck <path> [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]]        <path>             检查这个目录中的文件是否完整 -move               破损的文件移至/lost+found目录        -delete             删除破损的文件 -o

Linux fsck命令详解

fsck(file system check)用来检查和维护不一致的文件系统.若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查. fsck常见命令参数 -a:自动修复文件系统,不询问任何问题: -A:依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统: -N:不执行指令,仅列出实际执行会进行的动作: -P:当搭配"-A"参数使用时,则会同时检查所有的文件系统: -r:采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式: -R:当搭配&quo

Linux上命令的使用格式和基础命令详解

一.Linux上命令的使用格式 命令行提示符详解: 用户通过终端的命令行接口来控制操作系统,登陆后如下: [[email protected] ~]# root: 当前登录的用户 @:分隔符 localhost: 当前主机的主机名,非完整格式:此处的完整格式为:localhost.localdomain [[email protected] ~]# hostname localhost.localdomain ~:用户当前所在的目录(current directory),也称为工作目录(work

Linux关机命令详解

在linux下一些常用的关机/重启命令有shutdown.halt.reboot.及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的. Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shut

Cent os关机与重启命令详解

Cent OS关机与重启命令详解 分类: Linux2012-10-02 14:06 5553人阅读 评论(0) 收藏 举报 centoslinuxsignallogin工作windows Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:35 在时间为20:35时候重启

【转】centos关机与重启命令详解

连接:http://blog.csdn.net/jiangzhengdong/article/details/8036594 Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话

centos关机与重启命令详解

Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启 Linux centos关机命令: 1.halt 立刻关机 2.poweroff

centos、linux关机与重启命令详解

Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启 Linux centos关机命令: 1.halt 立刻关机 2.poweroff

jar打包命令详解

:如何把 java 程序编译成 .exe 文件.通常回答只有两种,一种是说,制作一个可执行的 JAR 文件包,就可以像.chm 文档一样双击运行了:而另一种回答,则是使用 JET 来进行编译.但是 JET 是要用钱买的,而且,据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣.所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台特性.先来看看什么是 JAR 文件包: 1. JAR 文件包 JAR 文件就是 Java Archi