1、使用虚拟机的情况下,在原磁盘下增加容量,然后对磁盘进行扩容,磁盘未变
2、新增一块物理磁盘或者存储虚拟划分的独立磁盘,对磁盘进行fdisk
分区、格式化,新建一个挂载点。
3、新增一块物理磁盘或者存储虚拟划分的独立磁盘,对磁盘进行lvm
管理,创建pv
、加入已存在vg
、扩容到需求的lv逻辑卷中。
1、LVM(逻辑卷管理)扩容:
pvcreate /dev/sdX #添加物理卷
vgextend my_vg /dev/sdX #扩展卷组
lvextend -L +10G /dev/my_vg/my_lv #扩展逻辑卷、新加10G容量
resize2fs /dev/my_vg/my_lv #扩展文件系统 (ext4)
resize2fs /dev/my_vg/my_lv 10G #这里 10G 是目标大小。请确保在缩小文件系统之前,文件系统的使用量不会超过目标大小。
xfs_growfs /dev/my_vg/my_lv #扩展文件系统 (xfs)
#xfs_growfs 用于扩展 XFS 文件系统,支持在线扩展,不支持缩小
#备注:sdx为新增扩容的磁盘、my_vg为需要扩容的卷组、my_lv为需要扩容的逻辑卷,ext4和xfs格式的文件系统扩展命令不同
这些是用于管理 LVM 和文件系统的常用命令,每个命令的功能如下:
=============================================================================
pvcreate: 初始化物理卷,以便将其加入 LVM 组中。
示例: pvcreate /dev/sdX1
=============================================================================
vgextend: 扩展卷组,将新的物理卷添加到现有的卷组中。
示例: vgextend vg_name /dev/sdX1
=============================================================================
lvextend: 增大逻辑卷的大小。
示例: lvextend -L +10G /dev/vg_name/lv_name
=============================================================================
resize2fs: 扩展或缩小 ext2/ext3/ext4 文件系统的大小。
示例: resize2fs /dev/vg_name/lv_name
=============================================================================
xfs_growfs: 扩展 XFS 文件系统的大小。
示例: xfs_growfs /dev/vg_name/lv_name
=============================================================================
lvreduce: 缩小逻辑卷的大小。
示例: lvreduce -L -5G /dev/vg_name/lv_name
=============================================================================
lvresize: 增大或缩小逻辑卷的大小,支持自动调整文件系统大小(如果使用 --resizefs)。
示例: lvresize -L +10G --resizefs /dev/vg_name/lv_name
=============================================================================
每个命令的作用是为了管理和调整 LVM 逻辑卷和文件系统的大小和结构。
测试:
1.新增一块磁盘
2.扫盘
udevadm trigger --action=add #扫盘
echo "- - -" | sudo tee /sys/class/scsi_host/host*/scan #存储扫盘
3.添加物理卷并加入到vg_test卷组
4.把sdc的500M扩展到卷组vg_test
和逻辑卷lv_test
中
备注:df -h
发现挂载的文件系统大小未改变,lsblk查
看发现大小已更新为1.2G
5.扩展文件系统
使用文件系统扩展命令后,文件系统更新为扩展的1.2G
备注:何时不需要使用 xfs_growfs
-
新创建的文件系统:如果你刚刚创建了一个 XFS 文件系统,并且没有进行任何扩展操作,
xfs_growfs
不需要使用。 -
文件系统未扩展:如果你没有对分区或逻辑卷进行扩展,XFS 文件系统也不需要使用
xfs_growfs
。
2、直接分区扩容:
使用 fdisk
扩容步骤
1、查看分区表:
fdisk -l /dev/sdX
2、.启动 fdisk:
fdisk /dev/sdX
a toggle a bootable flag #切换可启动标志
b edit bsd disklabel #编辑bsd磁盘标签
c toggle the dos compatibility flag #切换dos兼容性标志
d delete a partition #删除分区
g create a new empty GPT partition table #创建一个新的空GPT分区表
G create an IRIX (SGI) partition table #创建IRIX(SGI)分区表
l list known partition types #列出已知的分区类型
m print this menu #打印这个菜单
n add a new partition #添加新分区
o create a new empty DOS partition table #创建一个新的空DOS分区表
p print the partition table #打印分区表
q quit without saving changes #退出而不保存更改
s create a new empty Sun disklabel #创建一个新的空Sun磁盘标签
t change a partition's system id #更改分区的系统id
u change display/entry units #更改显示/输入单位
v verify the partition table #验证分区表
w write table to disk and exit #将表写入磁盘并退出
x extra functionality (experts only) #额外功能(仅限专家)
3、删除分区:
1.选择 d
删除分区。
2.选择要删除的分区号(如 1
)。
4、重新创建分区:
1.选择 n
创建新分区。
2.选择 p
创建主分区或 e
创建扩展分区。
3.使用与原分区相同的起始位置,但设置更大的结束位置(或者直接接受默认值以使用所有剩余空间)。
4.确保新分区覆盖原分区的起始位置。
5、保存更改:
1.选择 w
保存更改并退出 fdisk
。
2.重新启动系统,或者使用partprobe更新分区表:
partprobe /dev/sdX
6、调整文件系统:
1.对于EXT文件系统:
resize2fs /dev/sdXn
2.对于 XFS 文件系统:
xfs_growfs /mount/point
使用 parted
扩容步骤
#步骤可能存在差异,可能是版本差异导致
1、查看分区表:
parted /dev/sdX print
2、启动 parted
:
parted /dev/sdX
3、调整分区大小:
-
使用resizepart命令调整分区结束位置:
(parted) resizepart NUMBER END
1.NUMBER
是要调整的分区号(如 1
)。
2.END
是新的结束位置(例如 100GB
)。
4、保存并退出 parted
:
-
输入
quit
退出parted
。
5、调整文件系统:
1.对于 ext 文件系统:
resize2fs /dev/sdXn
2.对于 XFS 文件系统:
xfs_growfs /mount/point #/mount/point为挂载点路径
总结
-
fdisk
:删除并重新创建分区,适用于 MBR 分区表。 -
parted
:直接调整分区大小,支持 MBR 和 GPT 分区表。