Linux运维入门-03系统文件修复

本文介绍Linux系统文件修复相关内容。先阐述文件系统原理,包括inode和block的作用、文件删除机制、文件系统分组及超级块等。接着通过两个案例说明文件系统故障场景,如Oracle数据库无法启动、系统重启后文件系统挂载不上等,并给出使用fsck、e2fsck等工具的解决思路。

Linux系统文件修复

文件系统原理

​ 文件系统在进行格式化时,被分成两个部分。即inode(索引)和block(块存储),其中inode存储的数据为指向用户存储数据(存储在块中)的索引,文件进行删除操作时,是删除inode,而非删除块存储的数据(即用户数据依旧存在,只不过被隐藏)。块存储的数据会在其他新数据存储的时候覆盖掉。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kO0jMWIz-1605745422042)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021141228105.png)]

#用于打印“ext2/ext3”文件系统的超级块和快组信息。(inode、block size)
tune2fs -l /dev/sda6
#查看文件索引号
ls -li 文件名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NTxi19SE-1605745422044)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021154501869.png)]

​ 删除文件时 重建一个文件,该索引号会使用删除文件的索引号,即存储块内容会被覆盖此时想要找回删除文件数据就比较困难

文件系统分组

​ 文件系统在格式化时,会生成很多个blocks,为了防止存储混乱导致访问速度下降。会对blocks进行分组。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jaA11DO1-1605745422045)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021155316434.png)]

# 查询系统的设备号(sda1)
df
#查询sda6文件系统信息
dumpe2fs /dev/sda1 |more

超级块(superblock 非常主要)

​ 记录文件系统的所有属性信息,Group0为主superblock,Group(1、3、5、7、9)为备份superblock。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O4wX0ub2-1605745422047)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021160219780.png)]

破坏文件系统的前10的Group

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kxmUOedD-1605745422048)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021160637935.png)]

破坏后出现的故障信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3uEHx25C-1605745422049)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021160708962.png)]

使用fsck尝试修复(主要修复时先卸载data,防止修复时文件系统搞坏)

umount /data/
#fsck:filesystem check
fsck -v -y /dev/sda6
mount /dev/sda6 /data

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vLq1Ojw7-1605745422051)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021160954500.png)]

案例一

1、场景描述

​ Oracle数据库无法正常启动,数据库所在文件系统故障,使用fsck也无法修复,后导致操作系统也无法正常启动,引导程序出现错误,开机后看见这个界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6lmX42z8-1605745422051)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021140449391.png)]

2、解决思路(ext4文件系统)

1、使用fsck 修复不成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Msx3l2NF-1605745422052)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021161342969.png)]

2、使用e2fsck修复

#检查 /dev/hda5 是否正常,如果有异常便自动修复,并且设定若有问答,均回答[是] :
# e2fsck -a -y /dev/sda5
# 采用Group3的superblock备份 98304 也可以采用Group5、...,越往后被破坏的概率越低
e2fsck -a -y -b 98304 /dev/sda6
mount /dev/sda5 /data
#Superblock backups stored on blocks:
#               8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
# 从输出可知superblock存在于: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bq2Sv8Hu-1605745422052)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021161813382.png)]

xfs文件系统

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yEbVqJtE-1605745422053)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021164825591.png)]

案例二

1、场景描述

​ 系统在长时间运行的过程中会产生一些损坏或者问题,不重启时看不出来,重启时可能会导致文件系统挂载不上等等问题。所以没事别重启服务器,让专业的人来,以下系统有问题重启会导致系统出错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0boo4UUK-1605745422053)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021171222146.png)]

​ **(重启系统)**会出现问题,如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mh2h2v2q-1605745422054)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021171425281.png)]

2、解决思路

输入密码进入紧急模式,按mount -a 查看那个设备出现问题

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QXNgPf6G-1605745422054)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021171600530.png)]

用fsck修复

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OQ7G4xZR-1605745422055)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021171800553.png)]

用mount查看是否可以挂载文件系统,成功则重启

图片转存中…(img-QXNgPf6G-1605745422054)]

用fsck修复

[外链图片转存中…(img-OQ7G4xZR-1605745422055)]

用mount查看是否可以挂载文件系统,成功则重启

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7TNA5otd-1605745422055)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201021171917382.png)]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值