Esxi中CentOS7 扩展磁盘容量

来源:互联网 发布:老司机网址知乎 编辑:程序博客网 时间:2024/06/01 19:37

服务器是搭建在Esxi之上,使用Mysql时忽然报错,数据连接不上,重启服务也出现问题。使用命令journalctl -xe查看一下日志,发现启动服务时报错——

: mariadb.service failed to run 'start-pre' task: No space left on device

查看了下磁盘容量,果真使用100%,都被MySQL目录下的ibdata1文件填满了。怎么瘦身下回再说,这次先给磁盘空间作下扩充把。

1. 查看挂载点信息

[root@localhost]# df -h

显示如下:

文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 36G 36G 20K 100% /
……

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

2. 扩展VMWare硬盘空间
首先需要关闭操作系统,然后在设置中将磁盘调整到需要的容量。
如果选项是灰色的,说明虚拟机有快照,将其快照删除再操作。

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

[root@localhost]# fdisk -l
显示信息:

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

说明增加了空间的磁盘是/dev/sda
(2)磁盘分区

[root@localhost]# fdisk /dev/sda

分别键入以下参数:

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

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

[root@localhost]# partprobe

格式化分区

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

4. 添加新LVM到已有的LVM组,实现扩容
进入lvm管理

[root@localhost]# lvm

关于lvm的一些基础知识可以参考这里:http://blog.csdn.net/wuweilong/article/details/7565530
以下命令都是在lvm>
(1)初始化刚才的分区

pvcreate /dev/sda3

(2)查看卷和卷组

vgdisplay

要记下”VG Name”,这里为centos;再记下”Free PE/Size”的大小,例如这里为21513

(3)将初始化过的分区加入到虚拟卷组

vgextend centos /dev/sda3

刚才记下的”VG Name”就在这里使用。但是执行到这一步时报错了:
Couldn't create temporary archive name.
Volume group "centos" metadata archive failed.
Internal error: Attempt to unlock unlocked VG #orphans.

查看了下,因为磁盘实在太小了,无法执行,删除一些数据就行。
(4)扩展已有卷的容量

lvextend -l +21513 /dev/mapper/centos-root

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

选项 说明 -L 指定逻辑卷的大小,单位为“kKmMgGtT”字节,也就是Size -l 指定逻辑卷的大小,单位为PE数

其余两个参数:21513 是上边通过vgdisplay查看的free的大小,后边的目录参数/dev/mapper/centos-root可以通过df命令查看
(5)查看卷容量

pvdisplay

(6)退出

quit

5. 文件系统扩容
以上只是卷扩容了,还要对文件系统实现真正扩容
CentOS 7 下面 由于使用的是 XFS,所以要用

xfs_growfs /dev/mapper/centos-root

CentOS 6 下面 要用

resize2fs /dev/mapper/centos-root

6. 查看新的磁盘空间

df -h

0 0