缘由:
在bilibili上的找了基于SpringBoot+Redis+mybatis电商商城,在刚开始的时候配置环境,这里使用的是vritulbox + vagrant + coentos7.
在安装docker的时候,出现一下这些错误:

  1. /dev/sda1沾满(这里是解决以后的内存情况)
    硬盘100%
  2. No such file or directory ----->翻译过来是:没有这样的文件或目录
  3. Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the d
  4. Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the d过程中安装mysql或docker遇到的问题
  5. cannot open Packages index using db5 - No space left on device (28)
  6. /dev/sda1内存自增(图是盗的,但是情况是一样的),这也是导致 问题1 的产生,一直增到满
    在这里插入图片描述

以上是问题,这些问题都有可能是因为内存占满.
问题1 查找大文件 , centos的linux 命令:

查询大文件
du -h --max-depth=1

查询指定目录下面的文件大小
du -h --max-depth=1 /path

管理员模式下(su root;  vritualBox默认密码vagrant)
rm -rf AppData
rm -rf Application Data
方法一

找到这个目录下
这个/Application Data 文件还是不可执行的文件内存占的最多,修改权限,删除Application Data与AppData,问题就可以解决了。.
在这里插入图片描述


方法二:

找到这里没有想法,然后删除了虚拟机
在这里插入图片描述
重新安装虚拟机centos7

vagrant init centos7  //安装centos7虚拟机

vagrant up  启动centos 7虚拟机

vagrant ssh 链接虚拟机

然后查看占内存情况: —> df -h
一直查看内存情况,你就发现内存自增,这里就是出现 问题2
在这里插入图片描述

然后查看线程问题 :—> ps -ef | grep vagrant
在这里插入图片描述

结果出现了很多vagrant ,然后使用:—>kill 9 1523 2432 2452 2452 这四个vagrant进程jiuok了
在这里插入图片描述
剩下的vagrant是这个样子,这才是正常的状态
在这里插入图片描述
在查看硬盘内存状态,就没有自增了: —> df -h

在这里插入图片描述
然后正常安装mysql docker redis


特别提醒:

  1. 先删除Application Data与AppData两个文件夹,如果虚拟机内存正常,就ok
  2. 如果依然解决不了不问题,再上来先sha进程:kill 9 进程

低内存空间开启swap(阿里云)

https://www.techieliang.com/2018/11/1283/

内存过小docker可能会出现exited(137)错误,随机关闭某个容器,我这mysql被关了好几次。这实际上是os关的,并非docker。可以建立swap交换空间。

查看当前已有swap大小

free -m

查看的swap分区的情况

total used free shared buff/cache available
Mem: 992 436 75 34 480 364
Swap: 0 0 0

可以看到 Swap 只有0,下面我们来扩大到2G,为什么2G,因为我这个物理内存是1G,一般大小建议如下:

物理内存 建议的交换空间大小 如果开启休眠功能建议的交换空间大小
? 2GB 2倍 3倍

2GB – 8GB 相等 2倍
8GB – 64GB >4GB 1.5倍
64GB >4GB 不推荐休眠
创建一个 Swap 文件

首先cd到一个想要创建文件的地方,要注意这个目录所在硬盘分区要有大于所要创建大小的空间

mkdir /swap
cd /swap
sudo dd if=/dev/zero of=swapfile bs=1024 count=2000000
//这里bs=1024 是kb , count是2000000*1024= 2G
然后会提示创建成功,创建的大小、用时、拷贝速度

将普通文件转换成 Swap 文件

sudo mkswap -f swapfile

给出如下提示:

Setting up swapspace version 1, size = 1999996 KiB
no label, UUID=XXXXXXXXXXX
激活 Swap 文件

sudo swapon swapfile

再次查看 free -m 的结果

卸载Swap文件及自动挂载

如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录。执行下列命令。

sudo swapoff swapfile

如果需要一直保持这个 swap开机自动挂载,可以把它写入 /etc/fstab 文件。

/swap/swapfile /swap swap defaults 0 0


仅供参考

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐