服务器是搭建在ESXI之上,安装LAMP环境到MySQL安装时突然报错,查看日志发现文件写入失败磁盘已满。



[root@CentOS]# df -h

[root@CentOS]# df -h



查看了下磁盘容量,果真已无多少剩余空间了,这次选择给磁盘空间作下扩充。

1. 查看挂载点信息



[root@CentOS]# df -h

[root@CentOS]# df -h



显示如下:

文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos_centos-root 5G 5G 260K 100% /
……

可见可用只剩260K,使用已经100%。

2. 扩展硬盘空间

首先需要关闭操作系统,然后在设置中将磁盘调整到需要的容量。
如果选项是灰色的,说明虚拟机有快照,将其快照删除再操作。
VMware在虚拟机设置的硬盘里面有“扩展”按钮可以进行设置。
其他虚拟机也差不多的操作,可以百度查看。
物理机直接增加硬盘(接入新硬盘)即可。

3. 对新增加的硬盘(容量)进行分区、格式化
(1)查看一下调整后的磁盘状态



[root@CentOS]# fdisk -l 

[root@CentOS]# fdisk -l



显示信息:

磁盘 /dev/sda:214.7 GB, 214748364800 字节,419430400 个扇区
……

说明增加了空间的磁盘是/dev/sda

(2)磁盘分区



[root@CentOS]# fdisk /dev/sda

[root@CentOS]# fdisk /dev/sda



分别键入以下参数:

p       查看已分区数量(我看到有两个 /dev/sda1 和/dev/sda2)
n       新增加一个分区
p       分区类型,选择主分区
        分区号选3(1和2已占用,见上)
回车     默认选择(起始扇区)
回车     默认选择(结束扇区)
t       修改分区类型
       选分区3
8e     修改为LVM(8e就是LVM)
w       写分区表,完成后退出fdisk命令

使用partprobe重读分区表,或者reboot重启机器。



[root@CentOS]# partprobe

[root@CentOS]# partprobe



格式化/dev/sda3分区



[root@CentOS]# mkfs.ext3 /dev/sda3

[root@CentOS]# mkfs.ext3 /dev/sda3



4. 添加到已有的LVM组,实现扩容

进入lvm管理



[root@CentOS]# lvm

[root@CentOS]# lvm



LVM基础知识:

在lvm>模式下执行命令:

(1)初始化刚才的分区



pvcreate /dev/sda3



(2)将初始化过的分区加入到VG卷组



vgextend centos_centos /dev/sda3



刚才记下的”VG Name”就在这里使用。但是执行到这一步时报错了:

Couldn't create temporary archive name.
Volume group "centos_centos" metadata archive failed.

百度了下,因为磁盘剩余空间实在太小了,无法执行,删除一些数据就可以了。 我删除了/home目录和~目录下的文件。

(3)查看卷和卷组



vgdisplay



要记下”VG Name”,例如这里是centos_centos;再记下”Free PE/Size”的大小,例如这里是2048

(4)扩展已有卷的容量



lvextend -l +2048 /dev/mapper/centos_centos-root



lvextend指令用于在线扩展逻辑卷的空间大小,不中断应用程序对逻辑卷的访问。其后有两个选项

-L 指定逻辑卷的大小,单位为字节,也就是Size
-l 指定逻辑卷的大小,单位为PE数

其余两个参数:2048是上边通过vgdisplay查看的Free PE/Size的大小,后边的目录参数/dev/mapper/centos_centos-root可以通过df -h命令查看。

(5)查看卷容量并退出



pvdisplay
quit



5. 文件系统扩容

上面的步骤只是卷扩容了,文件系统还没实现真正扩容
CentOS 7: 由于使用的是 XFS



xfs_growfs /dev/mapper/centos_centos-root



CentOS 6:



resize2fs /dev/mapper/centos_centos-root



6. 查看新的磁盘空间【扩容完毕】



df -h



注:本文参考felcon的“Esxi中CentOS7 扩展磁盘容量”文章进行操作和记录。