linux根目录空间不足解决方案

1. 前言

之前新建了个ubuntu虚拟机来构建golang开发环境以及用来运行docker,跟虚拟机分配了20G的空间并挂载到了根目录,但是后来由于用到的镜像越来越多,20G的空间已经远远不能用,所以不得不为系统扩展空间。

2. 本文分析内容安排

  • 虚拟机空间扩展
  • 新建分区
  • 挂载分区到临时目录
  • 拷贝文件
  • 挂载到/var目录并写入fstab

3. 虚拟机空间扩展

  1. 打开vmvare,选择要添加磁盘空间的虚拟机,右击,然后在出现的菜单中点Setting,出来如下图所示的页面linux根目录空间不足解决方案_第1张图片
  2. 选择HardDisk,点击右侧Utilities下拉菜单中的Expand选项,设定扩展后磁盘的总大小,点Expandlinux根目录空间不足解决方案_第2张图片

4. 新建分区

  1. 进入系统,先执行fdisk -l命令,查看下系统中现有的分区linux根目录空间不足解决方案_第3张图片
  2. 执行fdisk /dev/sda进入分区管理,要新加分区需要将现有的Swap分区删除,因为如果不删除那么将无法用新加的空间,后期可以再加上该分区linux根目录空间不足解决方案_第4张图片
  3. 删除后已经没了Swap,如上图所示,这里便可以新建分区了,记住要留下分给Swap的空间linux根目录空间不足解决方案_第5张图片
  4. 可以输入w然后退出了

5. 挂载分区到临时目录

为了临时中转/var目录中的文件,先将新建立的分区/dev/sda3挂载到/temp目录下,命令如下:
mkfs -ext4 /dev/sda2
mkdir /temp
mount -t ext4 /dev/sda2 /temp

6. 拷贝文件

将/var中的文件全部拷贝到/temp中,因为如果不将文件导出来到新建的分区中,那么新挂载目录后会隐藏掉原/var下的目录
cp /var/* /temp
umount /temp
mount -t /dev/sda2 /var
到此,已经为虚拟机新增加了磁盘空间,并挂载到了/var目录。

7. 挂载到/var目录并写入fstab

为了在开机时就挂载好新加入的空间,可以将挂载规则写入fstab,相关格式参照fstab中已有条目就好

8. 总结

扩展虚拟机空间并将新扩展的空间挂载到文件系统的方式有很多种,这里讲的只是其中一个,读者可以自己探索其他的,包括使用逻辑卷等可以直接扩展根目录的方式。linux系统很灵活,实现一个目的的方式有很多种。

9. 作者介绍

梁明远,国防科大并行与分布式计算国家重点实验室(PDL)应届研究生,14年入学伊始便开始接触docker,准备在余下的读研时间在docker相关开源社区贡献自己的代码,毕业后准备继续从事该方面研究。邮箱:[email protected]

你可能感兴趣的:(linux)