第一种:LVM分区格式,就是用系统默认的自动分区格式
1.添加一块20G大小的nvme硬盘
2.启动后,查看硬盘是否已经被系统识别
3.对/dev/nvme0n2进行分区,并设置分区属性
fdisk /dev/nvme0n2
# 然后输入
n
p
enter
enter
enter
t
L
8e
w
# t:修改分区文件系统id,选择8e,与原有分区属性一致(lvm)
# L:列举出所有Hex代码
3.让系统识别新增分区,然后创建物理卷
# 输入partprobe让系统识别新增的分区
partprobe
# 创建物理卷
pvcreate /dev/vdc1
# 如果没有上述命令就需要安装这个软件包
dnf -y install lvm2
# 查看
pvdisplay
4.扩展卷组,扩展根分区
如果不知道系统自动给你分配的卷组的名称是什么,可以通过以下命令查看
vgdisplay | grep -w "VG Name" | awk '{print $3}'
# vgdisplay命令,会列出系统中存在的所有卷组的详细信息,grep -w "VG Name"是在输出信息中过滤出名为 “VG Name” 的行,awk '{print $3}'则是只打印该行的第三个单词,即卷组的名称。
vgextend rl /dev/nvme0n2p1
# 这个命令的作用是将一个物理卷(Physical Volume,PV)/dev/nvme0n2p1扩展到一个名为rl的卷组(Volume Group,VG)中
lvresize -L +19.90G /dev/rl/root
# 这个命令的作用是将名为/dev/rl/root的逻辑卷的大小增加 19.90 GB。该命令会把逻辑卷的大小调整为原来的大小加上指定的大小,因此这个卷会变得更大。
# 此命令通过 -L 参数指定要增加的大小,+19.90G 表示要增加的大小为 19.90 GB。如果要缩小逻辑卷的大小,可以省略 + 号,例如 -L 10G 表示将逻辑卷调整为 10 GB。
# /dev/rl/root指的是名为 rl 的卷组中的逻辑卷 root 指定这个逻辑卷是因为系统中可能有多个逻辑卷,我们需要指定要调整哪一个, root 这个逻辑卷通常是操作系统根目录(/)所在的逻辑卷,所以就给根目录扩容了20G
xfs_growfs /dev/rl/root
# 这个命令的作用是将文件系统大小扩展到逻辑卷 /dev/rl/root 的大小。
# 在 Linux 系统中,逻辑卷是通过管理物理卷来分配的。逻辑卷中的文件系统可以在线扩容,即在不影响正在运行的系统的情况下增加文件系统的大小。逻辑卷的大小被扩展后,文件系统并没有跟着扩展,需要使用 xfs_growfs 命令单独对文件系统进行扩展。
# xfs_growfs 命令用于扩展 XFS 文件系统的大小到逻辑卷的大小,即文件系统和逻辑卷大小保持一致。执行这个命令时,需要保证文件系统是挂载的状态,否则命令会执行失败。在这个命令中,/dev/rl/root 指定了要操作的逻辑卷的名称。
5.查看硬盘大小
第二种,标准分区格式,及自定义的分区
标准分区(Standard Partition)是硬盘分区的一种类型,也称作基本分区(Primary Partition)。
1.添加一块40G大小的nvme硬盘
2.确认硬盘被识别,调整分区大小,初始化
# 该命令比lsblk查看到的硬盘信息更详细
fdisk -l
fdisk /dev/nvme0n2
# 然后输入
n
p
enter
enter
enter
w
mkfs.ext4 /dev/nvme0n2p1
3.确认创建完毕后,新建挂载点,并使用 blkid
命令找到新创建分区的 UUID。
# 创建一个名为新分区的目录作为挂载点
mkdir /mnt/new_partition
# 查找创建的分区的UUID
blkid /dev/nvme0n2p1
4.将分区挂载到挂载点,使用rsync
命令将原本的根目录下的所有数据复制到新的分区下。
mount /dev/nvme0n2p1 /mnt/new_partition
dnf -y install rsync
rsync -avx / /mnt/new_partition
# 上述命令中,-a 参数表示以递归方式同步文件夹,并保留完整的文件属性。-v 参数表示通过标准输出显示执行过程中的详细信息,-x 表示排除挂载点 /mnt/new_partition 的同步
5.复制完成后,需要在根目录下创建一个old文件夹(名字自定义),并将原来的根(/)目录挂载到old文件夹
mkdir /old
mount --bind / /old
6.将/mnt/new_partition挂载到根目录下
mount --bind /mnt/new_partition/ /
7.最后在/etc/fstab文件中写入内容,开机自动挂载
vim /etc/fstab
/dev/nvme0n2p1 /mnt/new_partition ext4 defaults 0 0
这种方法只能帮你在你根目录容量不够的情况下,迁移到一块大一点的硬盘上,虽然也能起到扩容的作用,但是还是建议使用LVM,方便快捷,而且,生产环境中也不会让你所有东西都放在根目录下,你只要加上一块硬盘,格式化后,随便挂载一个目录就能使用了,到时,要存的东西扔在挂载目录下就行。