ubuntu swap扩容

笔者最近在倒腾ORM-SLAMV2, 好不容易准备好了依赖包,编译的时候发现内存不足了。笔者使用的硬件平台是intel的UP Board,硬件自带4GDDR4,又配置了4G的swap,但还是不够了。一下是笔者从互联网找到并经过测试的方法,在这里分享给大家

· 查看当前系统内存的命令

free -m

返回

total        used        free      shared  buff/cache   available
Mem:           3355         235        2660          71         459        2798
Swap:          3490         508        2982

· 创建Swap交换器文件

mkdir /swap
cd /swap
sudo dd if=/dev/zero of=swapfile bs=1024 count=4000000

上面命令中的 count 即代表swap文件大小,我设置的是4G,等会总共就会有8G的swap。

dd命令自己是不会输出进度的,这个时候我们要新开一个终端,并执行

sudo watch -n 5 killall -USR1 dd

在原窗口每隔5秒就会更新一次当前dd命令的执行情况

3607035+0 records in
3607034+0 records out
3693602816 bytes (3.7 GB, 3.4 GiB) copied, 112.34 s, 32.9 MB/s
3694117+0 records in
3694117+0 records out
3782775808 bytes (3.8 GB, 3.5 GiB) copied, 117.376 s, 32.2 MB/s
3816173+0 records in
3816173+0 records out
3907761152 bytes (3.9 GB, 3.6 GiB) copied, 123.195 s, 31.7 MB/s
3956993+0 records in
3956993+0 records out
4051960832 bytes (4.1 GB, 3.8 GiB) copied, 129.322 s, 31.3 MB/s
4000000+0 records in
4000000+0 records out
4096000000 bytes (4.1 GB, 3.8 GiB) copied, 129.867 s, 31.5 MB/s

我们还要把生成的文件转换成 Swap 文件

sudo mkswap -f swapfile 

转换成功后终端会返回

Setting up swapspace version 1, size = 3.8 GiB (4095995904 bytes)
no label, UUID=8ff64161-5649-4ead-9b34-8c53552e6d97

· 激活 Swap 文件

执行以下命令

sudo swapon swap

执行完成后,查看当前内存

free -m
total        used        free      shared  buff/cache   available
Mem:           3355         191         117          92        3046        2783
Swap:          7397         507        6890

如上,可以看到swap已经变成了8G

· TIPS

  1. 如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录,执行下列命令sudo swapoff swap
  2. 如果需要一直保持这个 swap ,可以把它写入 /etc/fstab 文件,执行/swap/swapfile /swap swap defaults 0 0

· 感谢:

本文参考自 mznewfacer 的博客http://blog.csdn.net/mznewfacer/article/details/7334592

    原文作者:SuperChange1119
    原文地址: https://www.jianshu.com/p/c0b0396d2fea
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞