EC2实例中SWAP内存的调整与扩容方法咨询
扩容EC2实例Swap内存到2GB/3GB的具体操作步骤
别担心,这事儿操作起来挺顺手的,我一步步给你讲清楚:
首先先确认当前的Swap状态,搞清楚你的Swap文件位置(EC2上默认一般是/swapfile):
swapon --show # 或者用这个也能看 cat /proc/swaps
接下来按下面的步骤操作:
第一步:关闭当前Swap
先把正在使用的Swap关掉,不然没法修改:sudo swapoff /swapfile第二步:扩展Swap文件大小
如果你要扩容到2GB,就用这个命令(fallocate是最快的方式,如果你的系统不支持这个命令,再用下面的dd命令):sudo fallocate -l 2G /swapfile要是
fallocate报错,就用dd命令(速度慢一点但兼容性更好):# 2GB的话count填2,3GB就填3 sudo dd if=/dev/zero of=/swapfile bs=1G count=2第三步:设置Swap文件的安全权限
Swap文件必须设置成仅root可读写,不然会有安全风险:sudo chmod 600 /swapfile第四步:重新格式化Swap文件
这一步是让系统把扩展后的文件识别成Swap格式:sudo mkswap /swapfile第五步:重新启用Swap
现在可以把Swap打开用了:sudo swapon /swapfile第六步:验证扩容是否成功
运行下面的命令看看Swap大小是不是变成你想要的2GB/3GB了:swapon --show # 或者用free命令看更直观的内存和Swap使用情况 free -h最后一步:让Swap重启后依然生效
上面的操作只是临时的,重启EC2后Swap会失效,所以要把Swap信息写到/etc/fstab里:echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab写完之后可以用
cat /etc/fstab检查一下最后一行是不是加进去了。
如果你的Swap不是文件而是分区的话,操作逻辑类似但需要用分区工具调整分区大小,不过EC2上绝大多数情况都是用Swap文件,所以上面的步骤应该完全适用。
内容的提问来源于stack exchange,提问作者javee
相关产品推荐
相关产品推荐

