Ubuntu中增加交换内存

前言

在运行一些代码编译或者clang-format会占用大量的内存,此时可能会出现电脑卡死的情况,在ubuntu中可以通过增加交换内存来临时解决这个问题,相对于硬件改动成本更低,但是性能不如物理内存。

实践

  • 查看当前的交换内存大小
$ sudo swapon --show

NAME      TYPE SIZE USED PRIO
/swapfile file  4G 85M   -2

使用上面的命令可以查看当前的交换内存大小,可见我的交换内存大小为4G,实际操作下来发现4G的交换内存肯定是远远不够的。

  • 查看计算机物理内存大小
$ sudo free -h

              总计         已用        空闲      共享    缓冲/缓存    可用
内存:        15Gi        14Gi       177Mi       339Mi       957Mi       462Mi
交换:        4Gi        85Mi       3.2Gi

当前的物理内存为16G左右,那我们的交换内存不能高于物理内存,所以只能设置小于等于16G。

  • 增加交换内存
    • 关闭系统交换分区
sudo swapoff -a
  • 新建一个swap文件
sudo fallocate -l 14G /swapfile
  • 设置拥有者可以读写权限
sudo chmod 600 /swapfile
  • 使用mkswap工具设置Linux swap区域
sudo mkswap /swapfile
  • 激活swapfile文件
sudo swapon /swapfile
  • 使上面的步骤永久生效,修改/etc/fstab,在文档最后加上/swapfile swap swap defaults 0 0
sudo vim /etc/fstab

Ubuntu中增加交换内存_第1张图片

  • 再次查看交换内存大小,下面两种命令都可以使用
$ sudo swapon --show
$ sudo free -h
  • Ubuntu中增加交换内存_第2张图片

Reference:

https://zhuanlan.zhihu.com/p/573352835?utm_id=0

你可能感兴趣的:(#,▶linux,ubuntu,linux,运维)