环境
我这里示例方案使用的ssh工具和CentOS的版本如下所示:
CentOS的版本:CentOS 7.9 2009
SSH工具:MobaXterm(最新版本即可)
我们使用的系统只要是CentOS7版本就可以,没有必要跟我使用同一个版本的系统。ssh工具也是,网上有很多的ssh工具,例如CRT、Xshell、FinalShell等,用自己喜欢的就好。
原硬盘扩容Linux类型分区
此方法适用于使用虚拟化管理的服务器,能够将虚拟化管理的的硬盘空间再次分配给服务器的硬盘中。这种分配操作一般都需要关闭服务器(CentOS)才能够扩展原硬盘空间大小,并且还要保证此服务器没有快照。
1、查看硬盘使用情况
在扩展空间之前,我们可以先检查一下现有硬盘的剩余空间大小,从图片中可以看到我这里的硬盘总容量30G。
# 查看空间使用情况
[root@localhost ~]# df -h
2、关闭并扩展原硬盘
关闭服务器后,我们使用虚拟化软件扩展硬盘,将硬盘从30G增加到50G,然后再开启服务器(CentOS)。
3、查看硬盘大小
启动服务器后,查看硬盘大小。从下图中我们可以看到硬盘总容量已经由30G变成了50G,但是分区还是原来的空间大小。
# 查看硬盘大小
[root@localhost ~]# fdisk -l
4、卸载分区
检查完硬盘空间后,需要先卸载分区,才能将硬盘重新分区。
# 卸载分区sdb1
[root@localhost ~]# umount /dev/sdb1
5、硬盘分区
卸载分区后,我们开始分区,这里需要注意,fdisk删除分区后千万千万千万(重要的事情说三遍)不能立即保存,因为保存后分区里的数据就真的没有了。只要没有立即保存,就可以直接再分区,分完区后再保存。这样,能够保证数据不会丢失(数据不丢失是重中之重),分区sdb1也再次划分为50G。
# 硬盘分区
[root@localhost ~]# fdisk /dev/sdb
6、挂载并格式化分区
分区完毕后,我们就可以挂载分区了。挂载完分区你会发现磁盘空间还是30G,可能会有些疑问?不是已经分区了吗?分区sdb1大小都改变了,咋还没有改变呢?这里其实就是需要执行格式化分区,格式化分区听名字像是格式化硬盘,但这里不是,它更像是重新加载分区(或者说出重新识别分区大小)。
# 挂载分区sdb1到data目录
[root@localhost ~]# mount /dev/sdb1 /data
# 格式化分区
[root@localhost ~]# xfs_growfs /dev/sdb1
7、再次查看硬盘使用情况
格式化完毕分区后,可以看到硬盘真的已经扩展到50G了。如果你这个分区有数据,也不必担心,数据肯定还在的。
# 查看硬盘使用
[root@localhost ~]# df -h
结束
至此,原硬盘已成功扩展至50G空间。