解决办法有两种:
(1)扩充SWAP size
(2)减少使用core的数量,通过make -j1
我这边两种都做了!把该问题解决了!
介绍扩充swap size的方法:
SWAP是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用
操作步骤:
1.首先看一下swapon 空间的详细信息:
sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 2G 1.6G -2
/swapfile file 是swap文件路径,后面我们在扩充的时候根据具体的文件路径
2.关闭所有交换分区(如果不关闭可能会提示:dd: failed to open '/swapfile':Text file busy)
sudo swapoff -a
3.现在开始创建SWAP file
SWAP得大小不是随便配置的,可以参考我们的RAM大小来配置,所以在创建之前要看一下我们服务器RAM的大小:
sudo free -h
查看RAM大小,我的服务器是128G
老外的推荐是,如果服务器RAM是4G,那就配置成4G*2=8G,如果是大于4G那就在RAM大小的基础上+2G,我的RAM是128,那么我的SWAP可以配置成130,但是我没有配置那么大,我就配置成16G目前就够用了。
sudo dd if=/dev/zero of=/swapfile bs=1G count=130 status=progress
4.将swapfile文件设置成SWAP 空间
sudo mkswap /swapfile
5.SWAP file创建完以后我们就给他配置只能root操作的权限。
sudo chmod 600 /swapfile
6.最后就是启用这个SWAP了
sudo swapon /swapfile
7.你可以检查一下是否创建成功
sudo swapon --show
8.所有都配置结束以后,一定要记得把SWAP file设置成永久有效,否则一旦服务器重启就啥都没有啦~~呜呜
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
2. make -j 1就是直接敲命令就可以