原 LVM创建卷组报错Cannot use device /dev/sdb with duplicates.
现象
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 557.9G 0 disk ├─sda1 8:1 0 600M 0 part /boot/efi ├─sda2 8:2 0 1G 0 part /boot └─sda3 8:3 0 556.3G 0 part ├─openeuler-root 253:0 0 70G 0 lvm / ├─openeuler-swap 253:1 0 4G 0 lvm [SWAP] └─openeuler-home 253:2 0 482.3G 0 lvm /home sdb 8:16 0 20T 0 disk sdc 8:32 0 20T 0 disk sdd 8:48 0 20T 0 disk sde 8:64 0 20T 0 disk [root@localhost ~]# [root@localhost ~]# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created. [root@localhost ~]# vgcreate vggp /dev/sdb WARNING: Not using device /dev/sdc for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sdd for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sde for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. Cannot use device /dev/sdb with duplicates. [root@localhost ~]# lvs WARNING: Not using device /dev/sdc for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sdd for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sde for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home openeuler -wi-ao---- <482.27g root openeuler -wi-ao---- 70.00g swap openeuler -wi-ao---- 4.00g [root@localhost ~]# pvs WARNING: Not using device /dev/sdc for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sdd for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: Not using device /dev/sde for PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. WARNING: PV QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF prefers device /dev/sdb because device was seen first. PV VG Fmt Attr PSize PFree /dev/sda3 openeuler lvm2 a-- <556.27g 0 /dev/sdb lvm2 --- 20.00t 20.00t [root@localhost ~]# [root@localhost ~]# |
分析
1 2 3 4 5 6 7 8 | [root@localhost ~]# [root@localhost ~]# blkid | grep LVM /dev/sdd: UUID="QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF" TYPE="LVM2_member" /dev/sdb: UUID="QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF" TYPE="LVM2_member" /dev/sde: UUID="QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF" TYPE="LVM2_member" /dev/sdc: UUID="QnohXs-rMaw-1NyD-cjxQ-uzYH-RlmW-ePFvGF" TYPE="LVM2_member" /dev/sda3: UUID="gWcim5-VzEU-fZxZ-AkYW-F1Bd-Bux6-jAfL6F" TYPE="LVM2_member" PARTUUID="2496c942-c177-4e50-a73d-81ca1b420422" [root@localhost ~]# |
你的 /dev/sdb
、/dev/sdc
、/dev/sdd
、/dev/sde
都有相同的 LVM UUID,说明这些设备可能是从 RAID 复制过来的,或者是磁盘克隆导致的 LVM 元数据冲突。
解决方案
1. 强制清理 LVM 元数据
你需要清除这些磁盘上的 LVM 元数据,然后重新创建 PV。执行以下命令:
1 | pvremove /dev/sdb /dev/sdc /dev/sdd /dev/sde |
如果 pvremove
报错,可以先使用 wipefs
彻底清除:
1 2 3 4 | wipefs -a /dev/sdb wipefs -a /dev/sdc wipefs -a /dev/sdd wipefs -a /dev/sde |
如果 wipefs
仍然无法清除,可以用 dd
直接覆盖 LVM 头部:
1 2 3 4 | dd if=/dev/zero of=/dev/sdb bs=1M count=10 dd if=/dev/zero of=/dev/sdc bs=1M count=10 dd if=/dev/zero of=/dev/sdd bs=1M count=10 dd if=/dev/zero of=/dev/sde bs=1M count=10 |
2. 刷新 LVM 设备缓存
清理完元数据后,刷新 LVM 设备:
1 2 | vgscan --mknodes vgscan --cache |