Linux海外VPS内存急救指南:Swap分区创建与应急处理
文章分类:技术文档 /
创建时间:2025-09-01
用Linux海外VPS跑应用时,内存告急是不少用户遇到的头件麻烦事——程序卡成PPT、服务突然崩溃,像手机后台开太多APP直接卡死似的。这时候Swap分区就像给内存加了个"备用仓库",能把暂时不用的数据存到硬盘里,给急需运行的程序腾空间。今天就来聊聊怎么给Linux海外VPS创建Swap分区,以及内存不足时的应急处理办法。
先确认:你的VPS有Swap分区吗?
创建Swap前得先检查系统有没有现成的。操作很简单,在终端输入命令:
swapon --show
要是没输出内容,说明当前没启用Swap。再用`free -h`命令看内存状态,Swap那一栏显示0B的话,就真的是"内存备用仓"空着了。
四步创建Swap分区:给内存加个"备用仓"
确认完当前状态,咱们就动手创建Swap分区。以创建4GB的Swap空间为例,分四步走:
第一步,创建Swap文件。用`fallocate`命令生成指定大小的文件,终端输入:
sudo fallocate -l 4G /swapfile
第二步,设置权限。为了安全,只有root用户能访问这个文件,执行:
sudo chmod 600 /swapfile
第三步,标记为Swap空间。用`mkswap`命令初始化文件:
sudo mkswap /swapfile
第四步,启用并持久化。输入`swapon /swapfile`立即生效,想重启后自动挂载,还得编辑`/etc/fstab`文件。用`nano`打开文件:
sudo nano /etc/fstab
在末尾添加一行:
/swapfile none swap defaults 0 0
保存退出就搞定了。
调参数:控制Swap的"使用频率"
Swap不是用得越勤越好,毕竟硬盘读写比内存慢。系统有个`swappiness`参数(范围0-100),数值越小越"惜用"Swap。临时调整可以输入:
sudo sysctl vm.swappiness=10
想永久生效,编辑`/etc/sysctl.conf`文件,添加:
vm.swappiness = 10
保存后执行`sysctl -p`让配置生效。一般设10-20比较合理,既保留应急能力,又避免频繁读写硬盘。
内存告急时:两步快速"抢救"
要是没提前建Swap,或者内存突然爆满,有两个应急招:
第一招,查进程"元凶"。用`top`或`htop`命令看内存占用排行,找到占内存大的进程。比如看到进程ID是1234的程序占了80%内存,先确认是不是无关进程。
第二招,终止冗余进程。确认后用`kill`命令终止,输入:
sudo kill -9 1234
注意!别乱杀系统关键进程(像`systemd`这种),容易导致VPS崩溃。
掌握这些操作,你的Linux海外VPS就能像加了内存缓冲垫,应对高负载场景更从容。无论是跑网站后台、做数据处理,还是部署开发环境,有了Swap分区兜底,内存不足的糟心事能少一大半。