Linux扩容根分区(LVM逻辑分区模式),其他分区类似操作
前提:保证系统分区是逻辑卷分区(LVM),非标准模式分区
查看系统分区情况fdisk -l,磁盘/dev/sdb是新增加且未使用的分区
[root@vm1 ~]# fdisk -l
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/sda:53.7 GB, 53687091200 字节,104857600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x00000c4c
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 104857599 51379200 8e Linux LVM
磁盘 /dev/mapper/centos-root:50.5 GB, 50457477120 字节,98549760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@vm1 ~]#
对/dev/sdb 进行分区,使用 fdisk /dev/sdb
根据提示依次输入 n 回车 回车 回车
[root@vm1 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x37ea3fbe 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):
将分区设置未Linux lvm ,输入8e
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):L
0 空 24 NEC DOS 81 Minix / 旧 Linu bf Solaris
1 FAT12 27 隐藏的 NTFS Win 82 Linux 交换 / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 隐藏的 C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux 扩展 c7 Syrinx
5 扩展 41 PPC PReP Boot 86 NTFS 卷集 da 非文件系统数据
6 FAT16 42 SFS 87 NTFS 卷集 db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux 纯文本 de Dell 工具
8 AIX 4e QNX4.x 第2部分 8e Linux LVM df BootIt
9 AIX 可启动 4f QNX4.x 第3部分 93 Amoeba e1 DOS 访问
a OS/2 启动管理器 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad 休 eb BeOS fs
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD ee GPT
f W95 扩展 (LBA) 54 OnTrackDM6 a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 55 EZ-Drive a7 NeXTSTEP f0 Linux/PA-RISC
11 隐藏的 FAT12 56 Golden Bow a8 Darwin UFS f1 SpeedStor
12 Compaq 诊断 5c Priam Edisk a9 NetBSD f4 SpeedStor
14 隐藏的 FAT16 <3 61 SpeedStor ab Darwin 启动 f2 DOS 次要
16 隐藏的 FAT16 63 GNU HURD or Sys af HFS / HFS+ fb VMware VMFS
17 隐藏的 HPFS/NTF 64 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST 智能睡眠 65 Novell Netware b8 BSDI swap fd Linux raid 自动
1b 隐藏的 W95 FAT3 70 DiskSecure 多启 bb Boot Wizard 隐 fe LANstep
1c 隐藏的 W95 FAT3 75 PC/IX be Solaris 启动 ff BBT
1e 隐藏的 W95 FAT1 80 旧 Minix
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@vm1 ~]#
查看新分区的磁盘
[root@vm1 ~]# fdisk -l
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x37ea3fbe
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 41943039 20970496 8e Linux LVM
对该分区进行格式化,需要将格式化成和要扩容的分区格式一致。我的为xfs
[root@vm1 ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 47G 5.3G 42G 12% /
/dev/sda1 xfs 1014M 185M 830M 19% /boot
tmpfs tmpfs 182M 20K 182M 1% /run/user/0
/dev/sr0 iso9660 4.5G 4.5G 0 100% /run/media/root/CentOS 7 x86_64
[root@vm1 ~]#
使用 mkfs.xfs -f /dev/sdb1
[root@vm1 ~]# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=1310656 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=5242624, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@vm1 ~]#
查看分区情况
[root@vm1 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 49G 0 part
├─centos-root 253:0 0 47G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 20G 0 part
sr0 11:0 1 4.5G 0 rom /run/media/root/CentOS 7 x86_64
[root@vm1 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 4c60cbf3-4379-4c66-8afc-fa6d7b519a13 /boot
└─sda2 LVM2_mem Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29
├─centos-root
xfs 21d2146d-2c9b-4ebc-be67-4b9cee8b2a88 /
└─centos-swap
swap 23afcfc2-d862-40f8-a3a8-38d25de60526 [SWAP]
sdb
└─sdb1 xfs 9c903561-2115-4aa7-999e-82caef504ee9
sr0 iso9660 CentOS 7 x86_64 2020-04-22-00-54-00-00 /run/media/root/
[root@vm1 ~]#
查看现有的物理卷pvdisplay
root@vm1 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name centos
PV Size <49.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 12543
Free PE 1
Allocated PE 12542
PV UUID Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29
[root@vm1 ~]#
将分区/dev/sdb1转化为物理卷
[root@vm1 ~]# pvcreate /dev/sdb1
WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/sdb1.
Physical volume "/dev/sdb1" successfully created
再次查看物理卷
[root@vm1 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name centos
PV Size <49.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 12543
Free PE 1
Allocated PE 12542
PV UUID Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29
"/dev/sdb1" is a new physical volume of "<20.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb1
VG Name
PV Size <20.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID 88Drki-HMg3-M9oH-L9L8-r5lH-XhPZ-YSLtOT
查看逻辑卷组的情况vgdisplay,关注 VG Name和 Free PE / Size,可以看到已无剩余的自由空间
[root@vm1 ~]# vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size <49.00 GiB
PE Size 4.00 MiB
Total PE 12543
Alloc PE / Size 12542 / 48.99 GiB
Free PE / Size 1 / 4.00 MiB
VG UUID SCj6qw-FNuK-9qwO-6ozh-LEsp-F3tp-bNzop1
将刚才创建的物理卷添加到逻辑卷组(centos)中
[root@vm1 ~]# vgextend centos /dev/sdb1
Volume group "centos" successfully extended
[root@vm1 ~]# vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 68.99 GiB
PE Size 4.00 MiB
Total PE 17662
Alloc PE / Size 12542 / 48.99 GiB
Free PE / Size 5120 / 20.00 GiB
VG UUID SCj6qw-FNuK-9qwO-6ozh-LEsp-F3tp-bNzop1
可以看到有68GB了,lvdisplay 查看逻辑卷情况,主要看 LV Path LV Size
root@vm1 ~]# lvdisplay
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID 84EjeW-BKL6-HPkx-EsFq-OH2s-xeDj-jfl8Px
LV Write Access read/write
LV Creation host, time localhost, 2022-10-24 22:25:35 +0800
LV Status available
# open 1
LV Size 46.99 GiB
Current LE 12030
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
开始扩容 /dev/centos/root
[root@vm1 ~]# lvextend -L +20G /dev/centos/root
Size of logical volume centos/root changed from 46.99 GiB (12030 extents) to 66.99 GiB (17150 extents).
Logical volume centos/root successfully resized.
[root@vm1 ~]# lvdisplay
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID 84EjeW-BKL6-HPkx-EsFq-OH2s-xeDj-jfl8Px
LV Write Access read/write
LV Creation host, time localhost, 2022-10-24 22:25:35 +0800
LV Status available
# open 1
LV Size 66.99 GiB
Current LE 17150
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
可以看到扩容上了,此时注意,并非实际的挂载容量已经改变,依然是47G
[root@vm1 ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 47G 5.3G 42G 12% /
/dev/sda1 xfs 1014M 185M 830M 19% /boot
tmpfs tmpfs 182M 20K 182M 1% /run/user/0
/dev/sr0 iso9660 4.5G 4.5G 0 100% /run/media/root/CentOS 7 x86_64
[root@vm1 ~]#
挂载:xfs_growfs /dev/centos/root ; 磁盘类型为xfs 所以使用:xfs_frowfs 命令 磁盘类型为ext4类型则使用:resize2fs 命令【 resize2fs /dev/centos/root】
root@vm1 ~]# xfs_growfs /dev/centos/root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=3079680 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=12318720, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=6015, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 12318720 to 17561600
[root@vm1 ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 67G 5.3G 62G 8% /
/dev/sda1 xfs 1014M 185M 830M 19% /boot
tmpfs tmpfs 182M 20K 182M 1% /run/user/0
/dev/sr0 iso9660 4.5G 4.5G 0 100% /run/media/root/CentOS 7 x86_64
此时,扩容成功了。