vmware扩容CentOS磁盘的两种方案
扩容磁盘的两种需求
扩容磁盘,一种情况,我们希望见原来不足的存储无缝伸缩扩容,通常是给原本的根目录/
扩容,另一种是在另一个目录上挂载新磁盘。
本次记录第一种情况,主要参考https://zhuanlan.zhihu.com/p/112637861这篇文章。
理清几个相关概念
磁盘设备、分区、物理卷、卷组、逻辑卷。
在Linux中,磁盘设备、分区、物理卷、卷组和逻辑卷之间有着紧密的关系,它们通常用于存储和管理数据。
-
磁盘设备:指的是物理存储设备,如硬盘驱动器或固态硬盘。在Linux中,磁盘设备通常以/dev/sdX的形式表示,其中X可以是字母a、b、c等,代表不同的物理磁盘。
-
分区:磁盘设备可以被划分为多个分区,每个分区可以看作是磁盘的一个逻辑部分。在Linux中,分区通常以/dev/sdXY的形式表示,其中Y表示分区号,如1、2、3等。
-
物理卷:物理卷是逻辑卷管理(LVM)中的一个概念,它是将一个或多个分区抽象为一个逻辑卷的中间层。物理卷通常是一个磁盘分区或整个磁盘。
-
卷组:卷组是由一个或多个物理卷组成的逻辑集合,它提供了对物理卷的抽象,使得多个物理卷可以作为一个逻辑卷来管理。在Linux中,可以将多个物理卷添加到同一个卷组中。
-
逻辑卷:逻辑卷是在卷组上创建的虚拟磁盘,它可以动态调整大小并提供灵活的存储管理。逻辑卷可以被格式化并用作文件系统的挂载点。
综上所述,磁盘设备通过分区划分成多个逻辑部分,这些分区可以被组合成物理卷,多个物理卷又可以被组合成卷组,最终在卷组上创建逻辑卷来实现灵活的存储管理。
例如通过pvcreate /dev/nvme0n1p{1,2}
命令可以将/dev/nvme0n1p1和/dev/nvme0n1p2这两个分区创建成一个物理卷。这条命令会将指定的分区标记为物理卷,以便后续将它们添加到卷组中进行逻辑卷管理。
vmware虚拟机扩容操作
两种:扩展,或新建,都是根据提示按照推荐操作即可完成扩容或新增磁盘,如下图,不赘述。
通过LVM方式扩容具体操作
操作过程shell页面代码
# 查询磁盘列表
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
#
[root@centos8 ~]# fdisk /dev/nvme0n1
欢迎使用 fdisk (util-linux 2.32.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):m
帮助:
DOS (MBR)
a 开关 可启动 标志
b 编辑嵌套的 BSD 磁盘标签
c 开关 dos 兼容性标志
常规
d 删除分区
F 列出未分区的空闲区
l 列出已知分区类型
n 添加新分区
p 打印分区表
t 更改分区类型
v 检查分区表
i 打印某个分区的相关信息
杂项
m 打印此菜单
u 更改 显示/记录 单位
x 更多功能(仅限专业人员)
脚本
I 从 sfdisk 脚本文件加载磁盘布局
O 将磁盘布局转储为 sfdisk 脚本文件
保存并退出
w 将分区表写入磁盘并退出
q 退出而不保存更改
新建空磁盘标签
g 新建一份 GPT 分区表
G 新建一份空 GPT (IRIX) 分区表
o 新建一份的空 DOS 分区表
s 新建一份空 Sun 分区表
命令(输入 m 获取帮助):F
未分区的空间 /dev/nvme0n1:1 GiB,1073741824 个字节,2097152 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
起点 末尾 扇区 大小
81788928 83886079 2097152 1G
命令(输入 m 获取帮助):n
分区类型
p 主分区 (3个主分区,0个扩展分区,1空闲)
e 扩展分区 (逻辑分区容器)
选择 (默认 e):p
已选择分区 4
第一个扇区 (81788928-83886079, 默认 81788928):
上个扇区,+sectors 或 +size{K,M,G,T,P} (81788928-83886079, 默认 83886079):
创建了一个新分区 4,类型为“Linux”,大小为 1 GiB。
命令(输入 m 获取帮助):^[[A^[[B
▒▒未知命令
命令(输入 m 获取帮助):wq
分区表已调整。
正在同步磁盘。
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
/dev/nvme0n1p4 81788928 83886079 2097152 1G 83 Linux
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@centos8 ~]# fdisk /dev/nvme0n2
欢迎使用 fdisk (util-linux 2.32.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
设备不包含可识别的分区表。
创建了一个磁盘标识符为 0xb69c49c4 的新 DOS 磁盘标签。
命令(输入 m 获取帮助):n
分区类型
p 主分区 (0个主分区,0个扩展分区,4空闲)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认 1):
第一个扇区 (2048-83886079, 默认 2048):
上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-83886079, 默认 83886079):
创建了一个新分区 1,类型为“Linux”,大小为 40 GiB。
命令(输入 m 获取帮助):wq
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
/dev/nvme0n1p4 81788928 83886079 2097152 1G 83 Linux
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb69c49c4
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n2p1 2048 83886079 83884032 40G 83 Linux
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
/dev/nvme0n1p4 81788928 83886079 2097152 1G 83 Linux
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb69c49c4
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n2p1 2048 83886079 83884032 40G 83 Linux
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
# 接下来修改新建分区的类型,改为LVM,代号是8e
[root@centos8 ~]# fdisk /dev/nvme0n2
欢迎使用 fdisk (util-linux 2.32.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):m
帮助:
DOS (MBR)
a 开关 可启动 标志
b 编辑嵌套的 BSD 磁盘标签
c 开关 dos 兼容性标志
常规
d 删除分区
F 列出未分区的空闲区
l 列出已知分区类型
n 添加新分区
p 打印分区表
t 更改分区类型
v 检查分区表
i 打印某个分区的相关信息
杂项
m 打印此菜单
u 更改 显示/记录 单位
x 更多功能(仅限专业人员)
脚本
I 从 sfdisk 脚本文件加载磁盘布局
O 将磁盘布局转储为 sfdisk 脚本文件
保存并退出
w 将分区表写入磁盘并退出
q 退出而不保存更改
新建空磁盘标签
g 新建一份 GPT 分区表
G 新建一份空 GPT (IRIX) 分区表
o 新建一份的空 DOS 分区表
s 新建一份空 Sun 分区表
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):L
0 空 24 NEC DOS 81 Minix / 旧 Linu bf Solaris
1 FAT12 27 隐藏的 NTFS Win 82 Linux swap / 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 隐藏 或 In 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 休 ea Rufus 对齐
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs
f W95 扩展 (LBA) 54 OnTrackDM6 a6 OpenBSD ee GPT
10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/
11 隐藏的 FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC
12 Compaq 诊断 5c Priam Edisk a9 NetBSD f1 SpeedStor
14 隐藏的 FAT16 <3 61 SpeedStor ab Darwin 启动 f4 SpeedStor
16 隐藏的 FAT16 63 GNU HURD 或 Sys af HFS / HFS+ f2 DOS 次要
17 隐藏的 HPFS/NTF 64 Novell Netware b7 BSDI fs fb VMware VMFS
18 AST 智能睡眠 65 Novell Netware b8 BSDI swap fc VMware VMKCORE
1b 隐藏的 W95 FAT3 70 DiskSecure 多启 bb Boot Wizard 隐 fd Linux raid 自动
1c 隐藏的 W95 FAT3 75 PC/IX bc Acronis FAT32 L fe LANstep
1e 隐藏的 W95 FAT1 80 旧 Minix be Solaris 启动 ff BBT
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”。
命令(输入 m 获取帮助):m
帮助:
DOS (MBR)
a 开关 可启动 标志
b 编辑嵌套的 BSD 磁盘标签
c 开关 dos 兼容性标志
常规
d 删除分区
F 列出未分区的空闲区
l 列出已知分区类型
n 添加新分区
p 打印分区表
t 更改分区类型
v 检查分区表
i 打印某个分区的相关信息
杂项
m 打印此菜单
u 更改 显示/记录 单位
x 更多功能(仅限专业人员)
脚本
I 从 sfdisk 脚本文件加载磁盘布局
O 将磁盘布局转储为 sfdisk 脚本文件
保存并退出
w 将分区表写入磁盘并退出
q 退出而不保存更改
新建空磁盘标签
g 新建一份 GPT 分区表
G 新建一份空 GPT (IRIX) 分区表
o 新建一份的空 DOS 分区表
s 新建一份空 Sun 分区表
命令(输入 m 获取帮助):p
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb69c49c4
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n2p1 2048 83886079 83884032 40G 8e Linux LVM
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
/dev/nvme0n1p4 81788928 83886079 2097152 1G 83 Linux
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb69c49c4
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n2p1 2048 83886079 83884032 40G 8e Linux LVM
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@centos8 ~]# pvscan
PV /dev/nvme0n1p2 VG cs lvm2 [<19.00 GiB / 0 free]
PV /dev/nvme0n1p3 VG cs lvm2 [<19.00 GiB / 1016.00 MiB free]
Total: 2 [37.99 GiB] / in use: 2 [37.99 GiB] / in no VG: 0 [0 ]
[root@centos8 ~]# pvcreate /dev/nvme0n2p1
Physical volume "/dev/nvme0n2p1" successfully created.
[root@centos8 ~]# pvscan
PV /dev/nvme0n1p2 VG cs lvm2 [<19.00 GiB / 0 free]
PV /dev/nvme0n1p3 VG cs lvm2 [<19.00 GiB / 1016.00 MiB free]
PV /dev/nvme0n2p1 lvm2 [<40.00 GiB]
Total: 3 [77.99 GiB] / in use: 2 [37.99 GiB] / in no VG: 1 [<40.00 GiB]
[root@centos8 ~]# pvdisplay /dev/nvme0n2p1
"/dev/nvme0n2p1" is a new physical volume of "<40.00 GiB"
--- NEW Physical volume ---
PV Name /dev/nvme0n2p1
VG Name
PV Size <40.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID vgW7Nt-fRal-KKza-N91S-a3sa-kdbH-diHejE
[root@centos8 ~]# vgscan
Found volume group "cs" using metadata type lvm2
[root@centos8 ~]# fdisk
fdisk: bad usage
Try 'fdisk --help' for more information.
[root@centos8 ~]# fdisk -l
Disk /dev/nvme0n1:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x15baf53f
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n1p1 * 2048 2099199 2097152 1G 83 Linux
/dev/nvme0n1p2 2099200 41943039 39843840 19G 8e Linux LVM
/dev/nvme0n1p3 41943040 81788927 39845888 19G 8e Linux LVM
/dev/nvme0n1p4 81788928 83886079 2097152 1G 83 Linux
Disk /dev/nvme0n2:40 GiB,42949672960 字节,83886080 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb69c49c4
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/nvme0n2p1 2048 83886079 83884032 40G 8e Linux LVM
Disk /dev/mapper/cs-root:35 GiB,37580963840 字节,73400320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@centos8 ~]#
[root@centos8 ~]# pvscan
PV /dev/nvme0n1p2 VG cs lvm2 [<19.00 GiB / 0 free]
PV /dev/nvme0n1p3 VG cs lvm2 [<19.00 GiB / 1016.00 MiB free]
PV /dev/nvme0n2p1 lvm2 [<40.00 GiB]
Total: 3 [77.99 GiB] / in use: 2 [37.99 GiB] / in no VG: 1 [<40.00 GiB]
[root@centos8 ~]# vgcreate
No command with matching syntax recognised. Run 'vgcreate --help' for more information.
Correct command syntax is:
vgcreate VG_new PV ...
[root@centos8 ~]# vgcreate --help
vgcreate - Create a volume group
vgcreate VG_new PV ...
[ -A|--autobackup y|n ]
[ -c|--clustered y|n ]
[ -l|--maxlogicalvolumes Number ]
[ -p|--maxphysicalvolumes Number ]
[ -M|--metadatatype lvm2 ]
[ -s|--physicalextentsize Size[m|UNIT] ]
[ -f|--force ]
[ -Z|--zero y|n ]
[ --addtag Tag ]
[ --alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit ]
[ --metadataprofile String ]
[ --labelsector Number ]
[ --metadatasize Size[m|UNIT] ]
[ --pvmetadatacopies 0|1|2 ]
[ --vgmetadatacopies all|unmanaged|Number ]
[ --reportformat basic|json ]
[ --dataalignment Size[k|UNIT] ]
[ --dataalignmentoffset Size[k|UNIT] ]
[ --shared ]
[ --systemid String ]
[ --locktype sanlock|dlm|none ]
[ --setautoactivation y|n ]
[ COMMON_OPTIONS ]
Common options for lvm:
[ -d|--debug ]
[ -h|--help ]
[ -q|--quiet ]
[ -v|--verbose ]
[ -y|--yes ]
[ -t|--test ]
[ --commandprofile String ]
[ --config String ]
[ --driverloaded y|n ]
[ --nolocking ]
[ --lockopt String ]
[ --longhelp ]
[ --profile String ]
[ --version ]
[ --devicesfile String ]
[ --devices PV ]
[ --nohints ]
[ --journal String ]
Use --longhelp to show all options and advanced commands.
[root@centos8 ~]# vgscan
Found volume group "cs" using metadata type lvm2
[root@centos8 ~]# vgdisplay cs
--- Volume group ---
VG Name cs
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 9
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 37.99 GiB
PE Size 4.00 MiB
Total PE 9726
Alloc PE / Size 9472 / 37.00 GiB
Free PE / Size 254 / 1016.00 MiB
VG UUID 9745io-m647-uh7k-1QuK-7DDd-zj7U-SuGnnB
[root@centos8 ~]# pvdisplay /dev/nvme0n2p1
"/dev/nvme0n2p1" is a new physical volume of "<40.00 GiB"
--- NEW Physical volume ---
PV Name /dev/nvme0n2p1
VG Name
PV Size <40.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID vgW7Nt-fRal-KKza-N91S-a3sa-kdbH-diHejE
[root@centos8 ~]# vgextend cs /dev/nvme0n2p1
Volume group "cs" successfully extended
[root@centos8 ~]# pvdisplay /dev/nvme0n2p1
--- Physical volume ---
PV Name /dev/nvme0n2p1
VG Name cs
PV Size <40.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 10239
Free PE 10239
Allocated PE 0
PV UUID vgW7Nt-fRal-KKza-N91S-a3sa-kdbH-diHejE
[root@centos8 ~]# pvscan
PV /dev/nvme0n1p2 VG cs lvm2 [<19.00 GiB / 0 free]
PV /dev/nvme0n1p3 VG cs lvm2 [<19.00 GiB / 1016.00 MiB free]
PV /dev/nvme0n2p1 VG cs lvm2 [<40.00 GiB / <40.00 GiB free]
Total: 3 [<77.99 GiB] / in use: 3 [<77.99 GiB] / in no VG: 0 [0 ]
[root@centos8 ~]# vgscan
Found volume group "cs" using metadata type lvm2
[root@centos8 ~]# vgdisplay -s cs
"cs" <77.99 GiB [37.00 GiB used / <40.99 GiB free]
[root@centos8 ~]# lvscan
ACTIVE '/dev/cs/root' [35.00 GiB] inherit
ACTIVE '/dev/cs/swap' [2.00 GiB] inherit
[root@centos8 ~]# lvdisplay /dev/cs/root
--- Logical volume ---
LV Path /dev/cs/root
LV Name root
VG Name cs
LV UUID bTBYHU-a52v-ngZA-zXc3-4Zpg-1gb8-qNxedK
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2023-05-18 19:20:32 +0800
LV Status available
# open 1
LV Size 35.00 GiB
Current LE 8960
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
[root@centos8 ~]# pvscan
PV /dev/nvme0n1p2 VG cs lvm2 [<19.00 GiB / 0 free]
PV /dev/nvme0n1p3 VG cs lvm2 [<19.00 GiB / 1016.00 MiB free]
PV /dev/nvme0n2p1 VG cs lvm2 [<40.00 GiB / <40.00 GiB free]
Total: 3 [<77.99 GiB] / in use: 3 [<77.99 GiB] / in no VG: 0 [0 ]
[root@centos8 ~]# lvscan
ACTIVE '/dev/cs/root' [35.00 GiB] inherit
ACTIVE '/dev/cs/swap' [2.00 GiB] inherit
# 把原有逻辑卷扩展到100%空间(把新加的物理卷扩展进来)
[root@centos8 ~]# lvextend -l +100%FREE /dev/cs/root
Size of logical volume cs/root changed from 35.00 GiB (8960 extents) to <75.99 GiB (19453 ex tents).
Logical volume cs/root successfully resized.
[root@centos8 ~]# lvscan
ACTIVE '/dev/cs/root' [<75.99 GiB] inherit
ACTIVE '/dev/cs/swap' [2.00 GiB] inherit
# 查看文件系统情况,发现文件系统/dev/mapper/cs-root xfs 35G 并没有实际扩容,继续往下
[root@centos8 ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 4.8G 0 4.8G 0% /dev
tmpfs tmpfs 4.8G 0 4.8G 0% /dev/shm
tmpfs tmpfs 4.8G 17M 4.8G 1% /run
tmpfs tmpfs 4.8G 0 4.8G 0% /sys/fs/cgroup
/dev/mapper/cs-root xfs 35G 28G 7.2G 80% /
/dev/nvme0n1p1 xfs 1014M 224M 791M 23% /boot
tmpfs tmpfs 969M 0 969M 0% /run/user/0
# 查看新增的分区的文件系统块儿类型
[root@centos8 ~]# blkid /dev/nvme0n1p1
/dev/nvme0n1p1: UUID="ee6e69c8-aee1-465a-8404-e22c7a820bcc" BLOCK_SIZE="512" TYPE="xfs" PARTUU ID="15baf53f-01"
# 对xfs类型块儿执行扩容
[root@centos8 ~]# xfs_growfs /dev/cs/root
meta-data=/dev/mapper/cs-root isize=512 agcount=9, agsize=1113856 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1 bigtime=0 inobtcount=0
data = bsize=4096 blocks=9175040, 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
data blocks changed from 9175040 to 19919872
# 再次查看,扩容成功。
[root@centos8 ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 4.8G 0 4.8G 0% /dev
tmpfs tmpfs 4.8G 0 4.8G 0% /dev/shm
tmpfs tmpfs 4.8G 17M 4.8G 1% /run
tmpfs tmpfs 4.8G 0 4.8G 0% /sys/fs/cgroup
/dev/mapper/cs-root xfs 76G 29G 48G 38% /
/dev/nvme0n1p1 xfs 1014M 224M 791M 23% /boot
tmpfs tmpfs 969M 0 969M 0% /run/user/0
[root@centos8 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.8G 0 4.8G 0% /dev
tmpfs 4.8G 0 4.8G 0% /dev/shm
tmpfs 4.8G 17M 4.8G 1% /run
tmpfs 4.8G 0 4.8G 0% /sys/fs/cgroup
/dev/mapper/cs-root 76G 29G 48G 38% /
/dev/nvme0n1p1 1014M 224M 791M 23% /boot
tmpfs 969M 0 969M 0% /run/user/0
# 扩容后可以在/etc/fstab文件中找到如下信息:
# 信息格式:<设备路径> <挂载点> <文件系统类型> <挂载选项> <备份频率> <自检顺序>
[root@centos8 ~]# cat /etc/fstab | grep /dev/mapper/cs-root
/dev/mapper/cs-root / xfs defaults 0 0
以上完成了将新增的不同磁盘通过LVM无缝扩容到旧磁盘绑定的目录上的操作。
通过往同一个目录挂载多磁盘方式扩容
参考:https://blog.csdn.net/m0_46120209/article/details/128717265
对磁盘进行分区,如果磁盘名称不是 /dev/sdb请根据实际名称修改。
** 对上述文章补充解释如下:**
要将分区挂载信息添加到/etc/fstab文件中,可以按照以下步骤进行操作:
打开终端,并以管理员权限登录(可以使用sudo命令)。
执行以下命令使用nano编辑器打开/etc/fstab文件进行编辑:
sudo nano /etc/fstab
在/etc/fstab文件中,每行代表一个挂载点的信息,一般格式如下:
<设备路径> <挂载点> <文件系统类型> <挂载选项> <备份频率> <自检顺序>
根据你的需求,在/etc/fstab文件中添加一行来描述要挂载的分区。例如,如果要将/dev/sdb1分区挂载到/mnt/data目录下,可以添加如下一行:
/dev/sdb1 /mnt/data ext4 defaults 0 2
/dev/sdb1:分区设备路径
/mnt/data:挂载点
ext4:文件系统类型
defaults:挂载选项,表示使用默认选项
0:备份频率,表示不进行备份
2:自检顺序,表示在系统引导时自动检查
保存文件并退出编辑器。在nano编辑器中,按下Ctrl + O保存文件,然后按下Enter确认,最后按下Ctrl + X退出编辑器。
最后,可以使用以下命令来重新加载/etc/fstab文件,以使更改生效:
sudo mount -a
这样,你添加的分区挂载信息就会在系统启动时自动挂载到指定的挂载点。
关于分区格式化文件系统,这篇文章中提到了另一种操作:
mkfs.ext4 /dev/sdb1
# 也可以是mkfs.xfs
# 类似输入一下几个命令。
fdisk /dev/nvme0n2 # 进行分区
> t # 分区时顺便修改文件格式
> 8e # 格式代码选定8
> w
>