Linux学习-41-检测和修复文件系统fsck命令用法

114 篇文章 11 订阅
10.8 fsck命令:检测和修复文件系统
  • 若系统掉电或磁盘发生问题,这种情况下非常容易造成文件系统的崩溃,严重时甚至会造成硬件损坏。这也是我们一直在强调的“服务器一定要先关闭服务再进行重启”的原因所在。如果真出现了文件系统损坏的情况,使用 fsck 命令来修复.
  • fsck 命令用于检查文件系统并尝试修复出现的错误。该命令的基本格式如下:
[root@CncLucZK ~]# fsck [选项] 分区设备文件名
  • 该命令常用的选项以及各自的功能。

    选项功能
    -a自动修复文件系统,没有任何提示信息。
    -A对/etc/fstab 配置文件中所有列出来的 分区(partition)检查文件内罗列的全部文件系统。
    -d打印出 e2fsck 的 debug 结果
    -C(大写)显示检查分区的进度条。
    -f强制检测,一般 fsck 命令如果没有发现分区有问题,则是不会检测的。如果强制检测,那么不管是否发现问题,都会一项一项的检测。
    -p同时有 -A 条件时,同时有多个 fsck 的检查一起执行
    -r采取互动的修复模式,在修改文件前会进行询问,让用户得以确认并决定处理方式。
    -R同时有 -A 条件时,省略 / 不检查
    -s依序一个一个地执行 fsck 的指令来检查
    -t 文件系统类型指定要检查的文件系统类型。
    -V详细显示模式
    -y自动修复,和 -a 作用一致,不过有些文件系统只支持 -y。

此命令通常只有身为 root 用户且文件系统出现问题时才会使用,否则,在正常状况下使用 fsck 命令,很可能损坏系统。另外,如果你怀疑已经格式化成功的硬盘有问题,也可以使用此命令来进行检查。

使用 fsck 检查并修复文件系统是存在风险的,特别是当硬盘错误非常严重的时候,因此,当一个受损文件系统中包含了非常有价值的数据时,务必首先进行备份!

  • 查看系统有多少文件系统支持的 fsck 命令:
[root@CncLucZK ~]# fsck
fsck         fsck.ext2    fsck.ext4    fsck.xfs     
fsck.cramfs  fsck.ext3    fsck.minix 
  • 如果想要修复某个分区,则只需执行如下命令:
[root@CncLucZK ~]#fsck -r /dev/sdb1		#采用互动的修复模式
  • 强制检测 /dev/vda3分区:
[root@CncLucZK ~]# fsck -C -f -t ext3 /dev/vda3
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
vbird_logical: 11/251968 files (9.1% non-contiguous), 36926/1004046 blocks
  • fsck 命令在执行时,如果发现存在没有文件系统依赖的文件或目录,就会提示用户是否把它们找回来,因为这些没有文件系统依赖的文件或目录对用户来说是看不到的,换句话说,用户根本无法使用,这通常是由文件系统内部结构损坏导致的。如果用户同意找回(输入 y),fsck 命令就会把这些孤立的文件或目录放到 lost+found 目录中,并用这些文件自己对应的 inode 号来命名,以便用户查找自己丢失的文件。
  • 因此,当用户在利用 fsck 命令修复磁盘分区以后,如果发现分区中有文件丢失,就可以到对应的 lost+found 目录中去查找,但由于无法通过文件名称分辨各个文件,这里可以利用 file 命令查看文件系统类型,进而判断出哪个是我们需要的文件。

参考文献:
Linux fsck命令:检测和修复文件系统
Linux 磁盘管理

下一篇:Linux学习-42-查看文件系统信息dumpe2fs命令用法
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值