在linux系统中如何添加虚拟内存
最近搞了一台低配的阿里服务器,玩npm的时候经常遇到被kill的情况。kernel: Out of memory: Kill process 13767 (npm) score 763 or sacrifice child但有不想提升配置,那么有没有方法可以增加内存呢?有,这也是常常惊叹linux的地方,任何问题都有解决办法。先使用swapon -
·
最近搞了一台低配的阿里服务器,玩npm的时候经常遇到被kill的情况。
kernel: Out of memory: Kill process 13767 (npm) score 763 or sacrifice child
但有不想提升配置,那么有没有方法可以增加内存呢?
有,这也是常常惊叹linux的地方,任何问题都有解决办法。
先使用
swapon -s
看系统是否配置了交换分区,Ps:该命令为系统命令,不是root用户自行sudo。
[root@iZ28se92r47Z ~]# swapon -s
Filename Type Size Used Priority
没有配置交换区,那就生成一个文件作为交换区。
fallocate -l 1G /swapfile
下一步来启动swapfile文件
首先
mkswap /swapfile
将文件创建为分区文件,
然后
swapon /swapfile
就开启分区了
开启后可通过
swapoff /swapfile
关闭
设置好后,通过 free 查看虚拟内存使用情况
[root@iZ28se92r47Z ~]# free
total used free shared buffers cached
Mem: 500472 174088 326384 0 25324 77972
-/+ buffers/cache: 70792 429680
Swap: 1048568 44784 1003784
为确保系统安全最好再设置一下swapfile 的权限
chmod a-xrw /swapfile
chmod u+rw /swapfile
最后
现在已经启用了swap文件,但当我们重启的时候,系统不会自动地启用该swap文件。可以通过修改 /etc/fstab 文件实现开机使用swap文件。
用root权限编辑
vim /etc/fstab
在文件的最后,需要添加一行告诉操作系统自动使用swap文件。
/swapfile none swap sw 0 0
最后fstab文件为
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/swapfile none swap sw 0 0
这就完成虚拟内存的设置,不会再出现内存溢出的情况了
更多推荐
已为社区贡献2条内容
所有评论(0)