Linux 下使用 Swap 文件
今天在使用 composer 升级库版本时,报错:proc_open(): fork failed - Out of memory
,应该是机器内存不足,即使停掉了网站所有进程之后内存还是不够,后来发现可以使用 swap 文件来暂时充当内存使用。
使用 free -m
查看当前内存信息:
total used free shared buff/cache available
Mem: 985 150 580 6 254 684
Swap: 0 0 0
可以看到,买的小内存机器并没有 swap 分区。
下面开始添加 swap 文件:
# 写入文件,1G
dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
# 设置为交换分区文件
mkswap /var/swap.1
# 修改文件权限
chmod 600 /var/swap.1
# 启用交换分区文件
swapon /var/swap.1
# 添加到开机启动,/etc/fstab 中添加下面一行
/var/swap.1 swap swap defaults 0 0
# 删除交换分区
swapoff /var/swap.1
rm -f /var/swap.1
查看是否加载成功:
total used free shared buff/cache available
Mem: 985 156 499 6 328 677
Swap: 1023 260 763
可以看到,swap 内存添加了 1G。