在esxi 6.7下给虚拟机centos 7扩展磁盘分区大小

玩esxi 6.7有一段时间,以前只安装了一台windows server 2012 R2的虚拟机做nas用,后来折腾科学上网,接触了centos,果然centos 7适合新手,适合爱折腾的人,centos 部署了中转数据转发后,也想试试一下私有云,搜了一堆网文后,选择seafile。

seafile很友好,对centos用户提供了一键安装脚本,那是相当的给力。

一、seafile一键脚本。获取安装脚本centos 7 64bit

wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-server-centos-7-amd64-http

运行安装脚本并指定要安装的版本 (例如 6.0.13)

bash seafile-server-centos-7-amd64-http 7.0.3

脚本一阵狂奔后,提示安装完成,并把访问地址和帐号密码展示给你。当然你也可以访问一下位置进行查询。

该脚本运行完后会在命令行中打印配置信息和管理员账号密码,请仔细阅读。(您也可以查看安装日志/opt/seafile/aio_seafile-server.log),MySQL 的 root 用户密码存储在 /root/.my.cnf 中;MySQL 的 seafile 用户密码存储在 /opt/seafile.my.cnf 中。

详细文档帮助请参考

https://github.com/haiwen/seafile-server-installer-cn

二、解决内网和外网访问的问题。

如果seafile主机处于内网里,需要映射访问端口80和8082。因为国内没有开放80端口,如果外网端口映射到80端口,会导致成功登陆后,页面变成一片空白。所以在内网访问seafile主页,进入系统设置,把端口改成你定义的AABB,然后外网的AABB映射到内网seafile服务器的AABB,再映射外网8082到内网8082,到此,端口映射完成。nginx默认端口在/etc/nginx中修改。

SERVICE_URL: http://www.myseafile.com:AABB
FILE_SERVER_ROOT: ‘http://www.myseafile.com:AABB/seafhttp’

三、给esxi6.7 虚拟磁盘扩容

当时建centos7主机时,进行了骚操作,只给了10GB的空间,结果seafile成功搭建好后,同步了iPhone相册,我的相册16GB,同步了几天10GB空间存满了,seafile就因为空间不足而停止服务。查看nginx服务,提示因为空间不足,无法启动。在虚拟机那边很容易就把磁盘10GB调整为50GB或者更多,但是对于centos 7来说,新增加的磁盘空间是未分区的,无法使用。Google了一圈,发现有个软件可以无损扩展centos 7的磁盘空间。

那个软件就是gparted,linux下的磁盘管理软件,提供图形操作界面,非常棒!

下载地址:https://gparted.org/download.php

64bit 系统建议下载amd64那个live包。下载后,上传到esxi 6.7里,然后加载。关闭centos 7,开机从光盘引导系统。

四、进行到这里的时候,我以为可以了。进centos 7,输入df -h 查看磁盘使用情况,新分配的50G并没有增加,再次从网络找解决方案。

通过vgdisplay命令 显示LVM卷组的信息。

1.扩展/root所在空间50GB 命令如下

lvextend -L +50G /dev/mapper/centos-root

2.扩展/root文件系统

xfs_growfs /dev/centos/root

进行以上两个步骤后,再输入df -h 命令就可以看到root分区的空间增加了50GB,重启seafile 服务器。又可以愉快的玩耍了。