当前位置: 首页 > news >正文

LVM逻辑卷元数据丢失恢复案例 —— 筑梦之路

Lvm常见的故障主要是pv出现异常,有以下几种情况

  1. 一个是pv所在的磁盘发生了lvm的元数据损坏
  2. 一个是系统无法识别到pv所在的磁盘
  3. 一个是系统异常,断电等导致重启后盘符发生变化,也就是系统识别的磁盘uuid发生变化,但是wwid还是可以对应,所以要利用wwid对应磁盘
  4. 一种是磁盘物理坏,且系统可以识别,但是pv是无法使用

故障现象

1. 系统卡在Control-D to continue界面

系统启动过程中有报错,磁盘挂载不上,去掉该磁盘挂载系统可以启动正常

2. /dev/sdb1对应的LVM信息丢失

 pvs vgs lvs 发现无之前的相应的PV,VG,LV

恢复复盘过程

 1. 检查lvm元数据备份

cd /etc/lvm/backup/  && ls  -lh# 列出备份文件vgcfgrestore --list vgdata

# 查看备份文件cat /etc/lvm/backup/vgdata

 2. 恢复物理卷PV 

# 给磁盘分区
fdisk  /dev/sdb# 恢复物理卷 pvpvcreate /dev/sdb1 --test -ff --uuid "8Dh7rF-whbO-mrcU-8T0x-lrWo-AGMv-USNs73" --restorefile /etc/lvm/backup/vgdata pvcreate /dev/sdb1  -ff --uuid "8Dh7rF-whbO-mrcU-8T0x-lrWo-AGMv-USNs73" --restorefile /etc/lvm/backup/vgdata # 查看物理卷PVpvs

3. 恢复卷组VG 

# 恢复卷组VGvgcfgrestore --test -f /etc/lvm/backup/vgdata vgdatavgcfgrestore  -f /etc/lvm/backup/vgdata vgdata# 查看vgvgs

4. 尝试挂载

lsblk -fmount /dev/mapper/vgdata-lvdata /data

 

此时可以正常挂载 恢复完成,故障修复完成。 

 参考资料:

https://www.cnblogs.com/zcyy/articles/16834848.html

LVM文件系统格式丢失_lvm丢失_IwoP的博客-CSDN博客

# 参考命令dd if=/dev/zero bs=1k count=2 of=/dev/sdb1syncpvcreate /dev/sdb1 --test --uuid "ffigvg-1Ygs-wBq7-mLYP-dYdu-CQ4L-LTdzY8"  --restorefile /etc/lvm/backup/testvg -vvpvcreate /dev/sdb1  --uuid "ffigvg-1Ygs-wBq7-mLYP-dYdu-CQ4L-LTdzY8"  --restorefile /etc/lvm/backup/testvg -vvvgcfgrestore --force testvgvgchange -ay testvgxfs_repair -L /dev/mapper/testvg-testlv mount /dev/testvg/testlv /u02

 

 

 

参考资料:

https://serverfault.com/questions/1016772/lvm-cannot-restore-volume-group-with-1-pvs-marked-as-missing-couldnt-find-de
https://www.cnblogs.com/zcyy/articles/16834848.html
https://www.golinuxcloud.com/recover-lvm2-partition-restore-vg-pv-metadata/#:~:text=%205%20easy%20steps%20to%20recover%20LVM2%20partition,,to%20recover%20LVM2%20partition.%20After%20we...%20More%20 

【复盘】记一次LVM元数据丢失的恢复过程

http://www.lryc.cn/news/91830.html

相关文章:

  • Java技术规范概览
  • 【OpenMMLab AI实战营第二期】二十分钟入门OpenMMLab笔记
  • docker-compose单机容器集群编排
  • CentOS7 安装Gitlab
  • Mysql InnoDB的Buffer Pool
  • SMTP简单邮件传输协议(C/C++ 发送电子邮件)
  • uploads靶场通关(1-11关)
  • 6.1黄金探底回升是否到顶,今日多空如何布局
  • 自定义ViewGroup实现流式布局
  • Git版本控制
  • 若依之权限处理
  • 华为OD机试真题 Java 实现【矩阵最大值】【2023 B卷 100分】,附详细解题思路
  • ModuleNotFoundError: No module named ‘transformers_modules.chatglm-6b_v1‘的解决方案
  • MMPretrain代码课
  • Selenium自动化程序被检测为爬虫,怎么屏蔽和绕过
  • Nvidia Jetson Orin:开发技巧
  • 为什么需要 git 和 相关的小知识
  • (详解)vue中实现主题切换的三种方式
  • 英国皇家植物园采用机器学习预测植物抗疟性,将准确率从 0.46 提升至 0.67
  • 基于Locust实现MQTT协议服务的压测脚本
  • AURIX TC3XX Cached PFLASH与Non-Cached PFLASH的区别
  • uniapp开发小程序-显示左滑删除效果
  • FPGA 的数字信号处理:Verilog 实现简单的 FIR 滤波器
  • 使用粒子群优化算法(PSO)辨识锂电池二阶RC模型参数(附MATLAB代码)
  • 如何利用地面控制点实现倾斜摄影三维模型数据的几何坐标变换和纠正?
  • 设计规则之里氏替换原则
  • 【叠高高】叠蛋糕游戏的微信小程序开发流程详解
  • 收集关键词的方法有哪些?(如何查找精准的行业流量关键词)
  • 【GreenDao】RxQuery查询并修改GreenDao数据库,完成后更新UI
  • Modifier ‘public‘ is redundant for interface methods错误