一.环境准备
本次测试使用麒麟x86操作系统,使用kvm创建虚拟机进行测试。
操作系统版本:
添加磁盘:
系统初始磁盘如下:
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 7.2G 0 7.2G 0% /dev
tmpfs 7.3G 0 7.3G 0% /dev/shm
tmpfs 7.3G 9.2M 7.2G 1% /run
tmpfs 7.3G 0 7.3G 0% /sys/fs/cgroup
/dev/mapper/klas-root 142G 9.5G 132G 7% /
tmpfs 7.3G 16K 7.3G 1% /tmp
/dev/sda1 1014M 211M 804M 21% /boot
tmpfs 1.5G 36K 1.5G 1% /run/user/0
二.扩容操作
通过命令查看/dev/sdb为新添加的磁盘:
[root@localhost ~]# fdisk -l
Disk /dev/sda:200 GiB,214748364800 字节,419430400 个扇区
磁盘型号:QEMU HARDDISK
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x62ec2a3d
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 419430399 417331200 199G 8e Linux LVM
Disk /dev/sdb:100 GiB,107374182400 字节,209715200 个扇区
磁盘型号:QEMU HARDDISK
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/klas-root:141.1 GiB,151506649088 字节,295911424 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/klas-swap:7.92 GiB,8476688384 字节,16556032 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/klas-backup:50 GiB,53687091200 字节,104857600 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
分区和修改分区类型lvm:
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.35.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
设备不包含可识别的分区表。
创建了一个磁盘标识符为 0xa63a48dd 的新 DOS 磁盘标签。
命令(输入 m 获取帮助):n
分区类型
p 主分区 (0 primary, 0 extended, 4 free)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认 1):
第一个扇区 (2048-209715199, 默认 2048):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-209715199, 默认 209715199):
创建了一个新分区 1,类型为“Linux”,大小为 100 GiB。
命令(输入 m 获取帮助):p
Disk /dev/sdb:100 GiB,107374182400 字节,209715200 个扇区
磁盘型号:QEMU HARDDISK
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xa63a48dd
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sdb1 2048 209715199 209713152 100G 83 Linux
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.35.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”。
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
格式磁盘:
[root@localhost ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=6553536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=26214144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=12799, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
Discarding blocks...Done.
创建pv并将pv添加到vg中:
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
backup klas -wi-a----- 50.00g
root klas -wi-ao---- 141.10g
swap klas -wi-ao---- 7.89g
[root@localhost ~]# 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@localhost ~]# vgextend klas /dev/sdb1
Volume group "klas" successfully extended
进行扩容:
[root@localhost ~]# lvextend -l +100%FREE /dev/mapper/klas-root
Size of logical volume klas/root changed from 141.10 GiB (36122 extents) to <241.10 GiB (61721 extents).
Logical volume klas/root successfully resized.
[root@localhost ~]# xfs_growfs /dev/mapper/klas-root
meta-data=/dev/mapper/klas-root isize=512 agcount=4, agsize=9247232 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=36988928, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=18061, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
如果扩容不成功,可以使用一下命令:
[root@localhost ~]# xfs_growfs /
三.验证结果
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 7.2G 0 7.2G 0% /dev
tmpfs 7.3G 12K 7.3G 1% /dev/shm
tmpfs 7.3G 9.2M 7.2G 1% /run
tmpfs 7.3G 0 7.3G 0% /sys/fs/cgroup
/dev/mapper/klas-root 242G 11G 231G 5% /
tmpfs 7.3G 4.0K 7.3G 1% /tmp
/dev/sda1 1014M 211M 804M 21% /boot
tmpfs 1.5G 36K 1.5G 1% /run/user/0
系统跟目录变成242G,扩大了100G左右。