解决Vagrant启动虚拟机内存爆满

注意,最初使用彻底解决Vagrant导致磁盘爆满的问题_“vagrant”将对您的电脑造成伤害。-CSDN博客,该方案第1步:把Virtual box VMS 文件夹剪切到其它盘,打开VitrualBox 面板,点击管理->全局设定->默认电脑位置选择上边的路径,比如你把它剪切到H盘了,那路径就是 H:/virtual Box Vms.方案,结果导致导致虚拟机不能启动,后面用下面的才奏效。

今天使用vagrant up 启动虚拟机报错 提示 No space left on device 磁盘空间已经满了 但是我只在虚拟机中开了两个容器
虽然启动报错 但是 vagrant ssh 还是可以链接

 使用 df -h 查看 发现是 /var/docker/overlay2里面的东西占了很大的空间

 

第一种办法

就是overlay2里的文件真的很大 进入overlay2 使用命令 du -h --max-depth=1查看这个文件夹里的文件大小 删掉大文件
Docker overlay2占用大量磁盘空间的解决办法

 

第二种情况

进入docekr 查看到底是什么文件占了这么大空间 但是发现overlay其实只有1013M 所以那么大的空间到底去哪儿了
百度有人说出现这种情况是因为删除文件时删除进程没有释放掉 这些进程仍然会占用磁盘空间

 

使用 yum install lsof 安装 然后 lsof |grep -i deleted 查看所有删除进程 手动 kill这些进程

Linux系统磁盘满use100%,但直接查看文件大小并没有多少内存

 

第五种办法

还有说再给虚拟机多分配内存的 、重新磁盘分区的 、删掉容器重装的

我出现问题的原因

多多少少试了上面这些方法 没啥效果 可能不是这些原因 后来在虚拟机根目录使用 du -h --max-depth=1查看各个文件的大小 发现有一个41G的

 

ls查看发现里的东西很多和我本机C盘里的文件一模一样 AppData之类的 为什么这些东西会在虚拟机里 虚拟机同步了C盘里的内容 百度发现 vagrant提供了将本机目录挂载到虚拟机目录下的功能,默认是将vagrant配置文件所在目录挂载到虚拟机/vagrant目录下。

也就是说 我的VagrantFile 是 C/user/username/VagrantFile 那么所有和VagrantFile同级的 C/user/username/里面的内容会全部同步到vagrant中 导致虚拟机内存爆满

解决办法

关掉虚拟机


在个人用户名下创建一个新的文件夹 C:\user\username\MyVagrantSyncFolder

进入到C:\Users\username.vagrant.d\boxes\centos-VAGRANTSLASH-7\2004.01\virtualbox\Vagrantfile
这是每一个虚拟机的操作系统里还有自己的配置文件(不是C:\user\username\VagrantFile)
打开配置文件如下

Vagrant.configure("2") do |config|
  config.vm.base_mac = "5254004d77d3"
  config.vm.synced_folder ".", "/vagrant", type: "rsync"
end

改为

Vagrant.configure("2") do |config|
  config.vm.base_mac = "5254004d77d3"
  config.vm.synced_folder "./MyVagrantSyncFolder", "/vagrant", type: "rsync"
end

如果不奏效,就用绝对路径(我用此方案)。在命令行面板输入vagrant up,如果出现同步文件夹变为上面修改的,说明生效了,否则则未生效需检查地址填写是否正确。

 启动后链接虚拟机 df -h 正常了

转自解决Vagrant启动虚拟机内存爆满_vagrant 磁盘爆满-CSDN博客

加入自己解决时遇到的问题,方便后面的人少踩坑。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值