linux/centos/ubuntu无法开机数据恢复完美解决

生产紧急问题可私信博主解决

背景:

朋友跟我说他的centos7服务器开不开机了,给了我一张图片

他告诉运维通过xfs_repair修复无效,依旧启动不了

原因分析

从以上图片可知系统进入了dracut模式,很明显的报错/dev/mapper/centos-root does not exist

找不到root分区了,/dev/mapper 字符明确告诉我们系统分区是靠lvm管理的,通过以下分析我们找到了答案

/dev/mapper/看不到任何设备 lvs/vgs已经看不到任何的信息 vgscan也扫不到任何vg信息

该问题就是lvm分区信息丢失导致系统无法正常挂载丢失

解决思路

1.既然是lvm分区的问题,那就着手如何对lvm的分区信息进行恢复

2.正常的lvm是对逻辑分区做备份的,备份文件位置/etc/lvm/backup 一般的问题可以直接通过备份文件将分区恢复,直接执行命令 vgcfgrestore centos

3但该机器恰恰是根分区损坏,备份文件也找不到

4.通过磁盘前几个扇区找有用的信息

执行

1.第一步先做一个livecd,保证我们正常分析

2.分析磁盘扇区信息

dd if=/dev/sdb3 bs=512 count=10 | hexdump -C

好在磁盘还保存有分区信息,说明还有救

3.编写vg恢复配置文件

如下为一个/etc/lvm/backup/pool的配置实例:

# Generated by LVM2 version 2.02.42 (2008-10-26): Sat Sep 25 17:36:30 2010

contents = "Text Format Volume Group"
version = 1

description = "Created *after* executing 'lvcreate --name block --size 300G pool'"

creation_host = "zhuweiR30"     # Linux zhuweiR30 2.6.28-storix #1 SMP Thu Dec 24 17:25:02 CST 2009 i686
creation_time = 1285407390      # Sat Sep 25 17:36:30 2010

pool {
id = "0Lm9dz-sIeu-t2Ho-qIBR-lD2P-dcbK-K1U4zW"
seqno = 2
status = ["RESIZEABLE", "READ", "WRITE"]
flags = []
extent_size = 8192              # 4 Megabytes
max_lv = 0
max_pv = 0

physical_volumes {

pv0 {
id = "rewaTQ-vKaK-PzWs-H14L-a2Qz-hV62-CcIHqT"
device = "/dev/sdb"     # Hint only

status = ["ALLOCATABLE"]
flags = []
dev_size = 21484367872 # 10.0044 Terabytes
pe_start = 384
pe_count = 2622603      # 10.0044 Terabytes
}
}

logical_volumes {

block {
id = "ryg1Or-e1C3-ooKV-0XMM-jKSN-g0EM-dXky7G"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
segment_count = 1

segment1 {
start_extent = 0
extent_count = 76800    # 300 Gigabytes

type = "striped"
stripe_count = 1        # linear

stripes = [
"pv0", 0
]
}
}
}
}      

根绝信息编写我们的配置文件

4.命令执行

vgcfgrestore centos -f .conf

5.查看信息

vgs/lvs信息恢复

6.重启

reboot重启恢复正常

最近更新

  1. TCP协议是安全的吗?

    2024-04-09 11:56:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-09 11:56:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-09 11:56:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-09 11:56:03       18 阅读

热门阅读

  1. linux 配置pg官方镜像

    2024-04-09 11:56:03       13 阅读
  2. HTML5标签(网页编程)

    2024-04-09 11:56:03       17 阅读
  3. 什么是物理服务器?

    2024-04-09 11:56:03       12 阅读
  4. 链表的头插,尾插,逆序 and 合并两个有序表

    2024-04-09 11:56:03       13 阅读
  5. [C语言]二分查找

    2024-04-09 11:56:03       16 阅读
  6. restic备份

    2024-04-09 11:56:03       14 阅读
  7. [23年蓝桥杯] 买二赠一

    2024-04-09 11:56:03       12 阅读
  8. git使用

    git使用

    2024-04-09 11:56:03      12 阅读
  9. git 的使用,及其基本指令。

    2024-04-09 11:56:03       11 阅读
  10. go interface{} 作为函数参数

    2024-04-09 11:56:03       11 阅读