在扩容的时候需要关注前面lv的文件格式
cat /etc/fstab
pvdisplay命令用于显示物理卷的属性
[root@test ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name vg_test
PV Size 9.51 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2434
Free PE 0
Allocated PE 2434
PV UUID uuFpno-W0L9-8TLY-FAIT-ZzIl-2rh4-SUvk2z
--- Physical volume ---
PV Name /dev/sdb1
VG Name vg_test
PV Size 10.00 GiB / not usable 4.70 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2558
Free PE 128
Allocated PE 2430
PV UUID VNL3Ui-v9KS-0HJY-3Zsb-R6Dy-Hgpt-gpuFnM
lvdisplay显示逻辑卷相关属性
[root@test ~]# lvdisplay
--- Logical volume ---
LV Path /dev/vg_test/lv_root
LV Name lv_root
VG Name vg_test
LV UUID w5FAwQ-dSX8-77fJ-3Ayl-SWK5-mMb5-wrZM33
LV Write Access read/write
LV Creation host, time test.com, 2017-10-16 22:49:07 +0800
LV Status available
# open 1
LV Size 18.00 GiB
Current LE 4608
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/vg_test/lv_swap
LV Name lv_swap
VG Name vg_test
LV UUID JbqQAI-od42-PK80-PZAF-ovbI-Z9vH-XZR5Co
LV Write Access read/write
LV Creation host, time test.com, 2017-10-16 22:49:09 +0800
LV Status available
# open 1
LV Size 1.00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
/dev/sdb是新添加的一块硬盘
先用fdisk命令新建一个分区
[root@test ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xf5002802.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-652, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652):
Using default value 652
Command (m for help): t #修改分区格式
Selected partition 1
Hex code (type L to list codes): L #查看分区格式列表
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx
5 Extended 42 SFS 86 NTFS volume set da Non-FS data
6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility
8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt
9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access
a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs
e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT
f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b
11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor
12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor
14 Hidden FAT16 <3 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary
16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS
17 Hidden HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 80 Old Minix be Solaris boot ff BBT
1e Hidden W95 FAT1
Hex code (type L to list codes): 8e #类型修改为8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): p
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf5002802
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237158+ 8e Linux LVM
Command (m for help): w #保存
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
正式扩容操作 ext格式
mkfs -t ext4 /dev/sdb1
pvcreate /dev/sdb1
vgdisplay
vgextend vg_test /dev/sdb1 #先扩展VG
lvdisplay
lvextend -L 9G /dev/vg_test/lv_root #扩展LV 9G为总大小 如果是增加4G 可写为 +4G
resize2fs /dev/vg_test/lv_root
df -h
vgdisplay
lvdisplay
resize2fs /dev/vg_test/lv_root #resizes
df -h
xfs格式
mkfs -t xfs /dev/sdb1 //mkfs.xfs /dev/sdb
pvcreate /dev/sdb1
vgdisplay
vgextend vg_test /dev/sdb1 #先扩展VG
lvdisplay
lvextend -L 9G /dev/vg_test/lv_root #扩展LV 9G为总大小 如果是增加4G 可写为 +4G
resize2fs /dev/vg_test/lv_root
df -h
vgdisplay
lvdisplay
xfs_growfs /dev/vg_test/lv_root #resizes xfs扩容
df -h
如果出现报错Linux_LVM Couldn't find device with uuid
可参考https://blog.csdn.net/ynxiaofan/article/details/47086207
Solution
This scenario indicates that a disk is missing from the volume group. This is clear since pvscan scans all disks for physical volumes, and it's telling us that it cannot find a device. In my case, I deleted a LUN from the EMC that I knew was no longer being used, but I forgot to update the LVM configuration. To correct the issue, I removed the lost physical volume from the volume group using the --removemissing argument of the vgreduce command.
Tip: Run vgreduce with the --test and --verbose options to validate what will be executed and confirm this is what you want to do.
[root@dwetlprod2 ~]# vgreduce --removemissing --verbose metabackupvg // metabackupvg vgname