我正在努力解决有史以来最奇怪的 LVM 问题。
我正在家里运行一台小型服务器,其中包含 4 个 3 TB 磁盘的软件 Raid 5。 (机箱中没有空间容纳硬件 Raid 控制器)。
从技术来看,它是英特尔快速存储技术。
该服务器的存储挂载如下所示:
物理磁盘 -> 软件 Raid 5 -> LVM2 -> EXT4
上周停电后,Bios 处于故障状态,因此我重新配置 Bios 以再次将磁盘处理为 RAID。
但是,在第一次查看 Raid 控制器界面后,我发现了以下内容:
状态失败,因为一个磁盘已从 Raid 信息中完全删除?!
因此,由于没有其他选项可以删除并重新创建 Raid 阵列,因此我可以在此之后启动系统,但内部没有 LVM 存储空间。
mdadm.conf 更改为:
ARRAY metadata=imsm UUID=3870907f:d7fafe1a:593e95f1:3496eea9
ARRAY /dev/md/Volume1 container=3870907f:d7fafe1a:593e95f1:3496eea9 member=0 UUID=0429e388:74a0f3ea:8ca3b4a3:5f976ec2
到:
ARRAY metadata=imsm UUID=52065345:de8d583c:8fa56cc8:55d93798
ARRAY /dev/md/Volume1 container=52065345:de8d583c:8fa56cc8:55d93798 member=0 UUID=b8f3dcf7:0e95fede:e6224238:b2426835
和
blkid /dev/md126
现在返回
/dev/md126: UUID="Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3" TYPE="LVM2_member"
由于重新创建了 softwareraid,我在 /etc/lvm/backup/ 中将 PV0 的 UUID 从 mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc 更改为 Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3日志卷0:
# Generated by LVM2 version 2.02.168(2) (2016-11-30): Mon Oct 14 00:05:24 2019
contents = "Text Format Volume Group"
version = 1
description = "Created *after* executing 'vgchange -ay'"
creation_host = "home" # Linux home 4.15.17-1-pve #1 SMP PVE 4.15.17-9 (Wed, 9 May 2018 13:31:43 +0200) x86_64
creation_time = 1571004324 # Mon Oct 14 00:05:24 2019
LogVol0 {
id = "Ch3etp-GYit-9qVW-nhEg-bv3K-IQnW-0jCjgM"
seqno = 16
format = "lvm2" # informational
status = ["RESIZEABLE", "READ", "WRITE"]
flags = []
extent_size = 8192 # 4 Megabytes
max_lv = 0
max_pv = 0
metadata_copies = 0
physical_volumes {
pv0 {
id = "Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3"
device = "/dev/md126" # Hint only
status = ["ALLOCATABLE"]
flags = []
dev_size = 17581580288 # 8.18706 Terabytes
pe_start = 2048
pe_count = 2146188 # 8.18706 Terabytes
}
}
logical_volumes {
Logical_Volume_00 {
id = "BWUgvn-24uy-XXf5-aFVx-o9YA-RF2H-2uD3OV"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
creation_time = 1395998316 # 2014-03-28 10:18:36 +0100
creation_host = "debian"
segment_count = 1
segment1 {
start_extent = 0
extent_count = 2146188 # 8.18706 Terabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv0", 0
]
}
}
}
}
“pvdisplay”的当前输出:
pvdisplay
--- Physical volume ---
PV Name /dev/md126
VG Name LogVol0
PV Size 8.19 TiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2146188
Free PE 0
Allocated PE 2146188
PV UUID Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
(当我尝试使用“vgcfgrestore LogVol0 LogVol0”恢复卷组时,pvdisk 首先丢失,因此我创建了这个新的 pvdisk)
创建“新”PVdisk 并恢复备份文件后,lvdisplay 如下所示:
--- Logical volume ---
LV Path /dev/LogVol0/Logical_Volume_00
LV Name Logical_Volume_00
VG Name LogVol0
LV UUID BWUgvn-24uy-XXf5-aFVx-o9YA-RF2H-2uD3OV
LV Write Access read/write
LV Creation host, time debian, 2014-03-28 10:18:36 +0100
LV Status NOT available
LV Size 8.19 TiB
Current LE 2146188
Segments 1
Allocation inherit
Read ahead sectors auto
PV:
PV VG Fmt Attr PSize PFree
/dev/md126 LogVol0 lvm2 a-- 8.19t 0
左扫描:
inactive '/dev/LogVol0/Logical_Volume_00' [8.19 TiB] inherit
lsblk -f:
sdb isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
sdc isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
sdd isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
sde isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
因此,如果我使用“vgchange -ay”激活该 VG,输出将更改为:
sdb isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
└─LogVol0-Logical_Volume_00 LVM2_member mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc
sdc isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
└─LogVol0-Logical_Volume_00 LVM2_member mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc
sdd isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
└─LogVol0-Logical_Volume_00 LVM2_member mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc
sde isw_raid_member
└─md126 LVM2_member Wzcm2T-H2pt-c41w-dbi5-K0IP-O7FU-GRfoA3
└─LogVol0-Logical_Volume_00 LVM2_member mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc
/dev/LogVol0/Logical_Volume_00 的类型为:
/dev/LogVol0/Logical_Volume_00: LVM2 PV (Linux Logical Volume Manager), UUID: mowPbj-0RMX-Glr2-e6ar-vOgP-mcHH-k4sAmc, size: 9001769107456
所以我无法安装它,因为我已经在新的 LVM 中创建了“旧”LVM?
使用 Testdisk,我可以看到内部 LVM 内的 ext4 分区,但如何取回我的...卷?
感谢您的帮助...
(哦,是的,我知道我需要更多备份......)
答案1
当 LV 显示为不活动时,我会尝试以下操作:
lvchange -ay
旁注:有些奇怪......要么您从 BIOS 设置 RAID,然后这是一个硬件 raid,您的系统只能看到一个虚拟设备 ( /dev/sdX
)。即使您没有专门的卡来处理此问题:您的主板也可以发挥该作用。
或者您有一个软件 raid,您的操作系统可以看到所有磁盘,您有一些代表您的 raid 的特殊设备 ( /dev/mdX
)。从表面上看,这就是你的情况。虽然我不明白你的 BIOS 中发生了什么。