一、实际问题
服务器根目录占用53%,只有13G可用,需要扩容磁盘
若没有单独分区给目录做存储,其他目录如/var/lib/都是默认共享根目录空间大小的,若这些目录空间太小都可以通过扩容根目录大小解决
二、介绍部分
介绍 PV,VG,LV
PV(physical volume)即物理卷,就是物理磁盘,可以通过fdisk -l 查看操作系统有几块硬盘
VG(volume group)即卷组,就是一组物理磁盘的组合,里面可以有一块硬盘也可以有多块硬盘
LV(logical volume)及逻辑卷,就是在VG(指定的物理磁盘组)里面划分出来的
可以说成是PV就是一块硬盘,而VG就是各块参与进来的硬盘组成的硬盘资源池,而LV就是资源池分出来的各个分区.使用流程为:PV->VG->LV(文件系统使用lv逻辑分区,挂载到某个目录例如/或者/home或者/data)
三、操作部分
扩展根目录/
的大小共需要9步
准备工作:将服务器添加或插上新硬盘
1.登录到root用户,fdisk -l
查看硬盘情况,发现新加的硬盘sdb 一共10G,若有多块磁盘,新挂载的这块磁盘也可能为/sdc,/sdd 等,下面以/sdb 为例
2.使用fdisk /dev/sdb
对sdb分区和格式化
[root@localhost 桌面]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.34)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
设备不包含可识别的分区表。
创建了一个磁盘标识符为 0x6377abeb 的新 DOS 磁盘标签。
命令(输入 m 获取帮助):n
分区类型
p 主分区 (0个主分区,0个扩展分区,4空闲)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认 1): 回车键
第一个扇区 (2048-20971519, 默认 2048): 回车键
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-20971519, 默认 20971519): 回车键
创建了一个新分区 1,类型为“Linux”,大小为 10 GiB。
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
输入内容按上面代码处填写。
3.修改硬盘类型,修改为linux LVM,代码8e
[root@localhost 桌面]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.34)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”。
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
//下面这一步查看是否格式化为 Linux LVM 类型的盘,也可以跳过
[root@localhost 桌面]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.34)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):p
Disk /dev/sdb:10 GiB,10737418240 字节,20971520 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x6377abeb
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sdb1 2048 20971519 20969472 10G 8e Linux LVM
命令(输入 m 获取帮助):q
4.创建物理卷 PV
[root@localhost 桌面]# pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created.
5.查看VG卷组
[root@localhost 桌面]# vgs
VG #PV #LV #SN Attr VSize VFree
klas 1 2 0 wz--n- <29.00g 0
- 扩展 VG卷组,把dev/sdb1加入到上面的 klas 卷组
[root@localhost 桌面]# vgextend klas /dev/sdb1
Volume group "klas" successfully extended
输入df -h
查看当前分区大小此时依旧没有变化
,还需几步,下面需要把加进卷组的dev/sdb1逻辑分区大小分给根目录
[root@localhost 桌面]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 957M 0 957M 0% /dev
tmpfs 979M 12K 979M 1% /dev/shm
tmpfs 979M 1.3M 978M 1% /run
tmpfs 979M 0 979M 0% /sys/fs/cgroup
/dev/mapper/klas-root 26G 14G 13G 53% /
tmpfs 979M 108K 979M 1% /tmp
/dev/sda1 1014M 211M 804M 21% /boot
tmpfs 196M 40K 196M 1% /run/user/0
给逻辑根分区/dev/mapper/klas-root增加大小,下图9.9G参数可按实际情况分配大小进行修改
[root@localhost 桌面]# lvextend -L +9.9G /dev/mapper/klas-root /dev/sdb1
Rounding size to boundary between physical extents: 9.90 GiB.
Size of logical volume klas/root changed from <26.00 GiB (6655 extents) to <35.90 GiB (9190 extents).
Logical volume klas/root successfully resized.
8.扩展根分区及同步
[root@localhost 桌面]# xfs_growfs /
meta-data=/dev/mapper/klas-root isize=512 agcount=4, agsize=1703680 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=0
data = bsize=4096 blocks=6814720, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=3327, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 6814720 to 9410560
9.输入df -h
查看扩容后分区大小
[root@localhost 桌面]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 957M 0 957M 0% /dev
tmpfs 979M 12K 979M 1% /dev/shm
tmpfs 979M 1.3M 978M 1% /run
tmpfs 979M 0 979M 0% /sys/fs/cgroup
/dev/mapper/klas-root 36G 14G 23G 39% /
tmpfs 979M 108K 979M 1% /tmp
/dev/sda1 1014![在这里插入图片描述](https://img-blog.csdnimg.cn/10b56b3586e44ec2a5984263c29c414c.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAcXFfODYzOTA5,size_20,color_FFFFFF,t_70,g_se,x_16)
M 211M 804M 21% /boot
tmpfs 196M 40K 196M 1% /run/user/0
对比前后扩容效果 26->36G