linux磁盘故障处理
linux磁盘故障,可能由于异常断电导致主机一块磁盘故障,该盘用于gluster存储,由于gluster使用了多副本配置,掉一个盘不影响使用,最近才发现。
问题表现
1. 尝试查看磁盘内文件
ll /mnt
提示cannot access /mnt/: Input/output error
#/mnt为该故障盘挂载位置
2. gluster查看卷状态
gluster volume status xxx
提示如下图:
处理
系统还能正常挂载该磁盘,不一定是磁盘硬件坏了,首先尝试使用软件修复
1.卸载改磁盘
umount /mnt
2.此时再次挂载该磁盘提示:
failed: Structure needs cleaning
3.查看磁盘分区格式
lsblk -f
4.修复
xfs_repair /dev/mapper/mnt-recording
#因为磁盘为xfs格式,使用xfs_repair修复
#修复过程可能有点久
5.重新挂载
mount /dev/mapper/mnt-recording /mnt
测试
1.查看挂载
df -h
#查看确认挂载成功
2.重启主机
reboot
#由于gluster系统的其他主机上的磁盘一直在接收数据,所以只能重启本机
3.gluster查看
gluster volume status xxx
#查看该磁盘已正常
4.数据同步
...
注意
xfs_repair /dev/mapper/mnt-recording
#修复后,原数据还在
xfs_repair -L /dev/mapper/mnt-recording
#修复时会清楚原数据
xfs_repair参数
-f 设备是文件
-L 强制日志归零。 将此作为最后的手段。
-l logdev 指定外部日志所在的设备。
-m maxmem 要使用的最大内存量,以兆字节为单位。
-n 无修改模式,只检查文件系统是否损坏。
-P 禁用预取。
-r rtdev 指定实时部分所在的设备。
-v 详细输出。
-c subopts 更改文件系统参数 - 使用 xfs_admin。
-o subopts 覆盖默认行为,请参阅手册页。
-t 间隔 以秒为单位的报告间隔。
-d 危险地修复。
-V 报告版本并退出。