如何简单为VPS增加SWAP?什么是SWAP?

很多玩VPS的人都会遇到一个尴尬情况:内存不够用,但升级配置又太贵,给VPS增加SWAP,操作只需要几分钟,效果立竿见影,是低配服务器最划算的“自我救赎”,与其花钱升级套餐,不如先花五分钟把SWAP开起来应急,尤其适合预算有限的个人站长和刚开始接触服务器的新手。

为什么VPS内存不够怎么办?先从SWAP说起

我手里这台酷番云轻量服务器,2G内存,跑了Nginx、MySQL、WordPress和两个Python爬虫脚本,平时看着负载不高,但只要流量稍微上来一点,或者数据库查询慢半拍,OOM Killer就开始发威MySQL直接被系统杀掉,网站白屏,重启之后又重复这个循环,排查了大半天,日志里全是Out of memory: Kill process记录,这时候才意识到,真正的瓶颈根本不是CPU,是物理内存撞了天花板。

你知道SWAP指令有什么作用吗?
加载中
你知道SWAP指令有什么作用吗?

行业共识认为,SWAP是Linux系统里最被低估的“救命稻草”,它的本质是拿磁盘空间当内存用,把不活跃的内存数据临时挪到磁盘上,腾出物理内存给正在跑的进程,对VPS来说,这个方法尤其管用,因为大多数云厂商的内存定价都不便宜,而磁盘空间往往用不完。

当时我查了不少资料,发现不少国内用户搜索“VPS加SWAP设置步骤”时,都会扯到服务器卡顿、重启丢配置这些坑,其实只要按部就班地做完下面这几步,整个过程比我预想的要简单得多。

简单步骤为VPS增加SWAP:全程实操记录

以下操作在Ubuntu 22.04、Debian 12系统上通用,CentOS/Rocky系也能照搬,全程只需要一条SSH连接,不需要重启机器。

第一步:确认当前系统是否有SWAP

很多云服务商的默认镜像根本没开SWAP,先用这条命令确认一下:

free -h

如果你的输出里Swap那一行的total是0,那就说明这台机器处于“裸奔”状态,另外可以再用swapon --show看看是否已有swap文件存在,避免重复操作。

第二步:创建SWAP专用文件

创建一个名字叫swapfile的文件放在根目录,大小根据需求决定,我这次设置了2G,用fallocate一瞬间就能完成,比老教程里的dd命令快得多:

如何简单为VPS增加SWAP?什么是SWAP?

sudo fallocate -l 2G /swapfile

如果fallocate报错(某些老内核文件系统不支持),就退回传统写法:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

执行完可以用ls -lh /swapfile确认文件生成,看到2G的大小就说明没问题。

第三步:格式化并启用SWAP文件

先要把这个普通文件变成SWAP格式,否则系统不认:

sudo mkswap /swapfile

然后正式开启它:

sudo swapon /swapfile

这一步完成后,再跑一次free -h,就能看到Swap这一行的数字已经变了,说明SWAP已经在工作。

安全方面还差一步:这个文件里装的都是内存里的临时数据,权限必须收紧,不然有泄露风险,顺手把权限改成600(仅root可读写):

sudo chmod 600 /swapfile

第四步:写入fstab实现开机自动挂载

如果不做这一步,虚拟服务器重启之后,SWAP就自动失效了,前面几步全白做,用编辑器打开/etc/fstab,在末尾追加一行:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

执行完成可以再复查一遍:

cat /etc/fstab

看到文件末尾有上面那一行,就说明开机自启已经配置好了,这里最容易踩的坑就是漏掉这一步,很多人“重启之后内存又满了怎么办”的焦虑,基本都是这个原因。

第五步:调整swappiness换页策略参数

swappiness是Linux内核用来决定“多积极使用SWAP”的参数,取值范围从0到100,默认值通常是60,这个数值在内存不太够用的时候会稍微激进了一点,导致磁盘读写变多,系统响应发沉,做服务器的时候,我建议把它调低到10到30之间,尽量优先使用物理内存:

sudo sysctl vm.swappiness=10

这只是临时生效,永久生效需要写入配置文件:

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf

如果是宝塔面板用户,在“Linux工具箱”里可以找到一个“Swap”管理项,它的逻辑是让你填一个数字然后点一下按钮完事,方便是方便,但底层做的事情和上面这些命令一模一样,手动操作的好处是每一步都可见、可回滚,出问题也知道卡在哪。

如何简单为VPS增加SWAP?什么是SWAP?

SWAP设置多少合适?不同VPS配置的参考值

给VPS配SWAP,不是配得越大越好,SWAP太大会导致系统频繁读磁盘,速度反而比没有更难受,根据我自己的折腾经验以及网上不少运维同行的分享,不同物理内存的参考配置大概是这样:

物理内存大小 推荐SWAP大小 适用场景
512MB 1G至2G 单站点博客、轻量API服务
1G 1G至2G 个人网站、小型论坛(Discuz/WordPress)
2G 2G至3G 跑MySQL+Web服务,低流量生产环境
4G及以上 2G至4G 如果资源还紧张,优先加内存而不是堆SWAP

这套组合的逻辑很简单:SWAP是航道,不是停车场,小内存机器可以通过SWAP避免进程被杀,但它的边际效应很明显一旦系统实际使用的内存超过物理内存很多倍,SWAP不但救不了场,反而会拖垮IO,如果你做的是数据库这类吃内存的重活,与其加SWAP,不如考虑升级物理内存。

具体怎么在两个变量之间取舍,这里还有一条经验:如果你的VPS跑的是低延迟应用(比如API服务),SWAP只是兜底,别指望它替代内存;如果是当备份机、测试机用,SWAP可以放开一点,毕竟便宜量又足。

SWAP会拖垮硬盘吗?真实使用后的性能感受

这是很多人在“要不要给VPS加SWAP”上纠结最多的问题,先说结论:磁盘确实会多出读写消耗,但没有传闻中的那么夸张,尤其是现代VPS大多用的是SSD,随机读写性能比老式机械盘强了不少,业内专家指出,只要不是把SWAP当物理内存用、让系统持续大量换页,带来的IO损耗是在云服务器可接受范围内的。

我的这台酷番云轻量服务器,在开启SWAP之后,用vmstat观察了三天,si(从磁盘交换入内存)和so(从内存交换出磁盘)的值大部分时间都很小,只有在跑apt update或者编译小项目时才会看到明显的换页活动,日常跑Nginx和PHP-FPM,几乎感受不到存在。

如何简单为VPS增加SWAP?什么是SWAP?

真正需要担心的是那些本身磁盘IO就非常局促的超低配VPS,比如某些单核512M的入门机型,连基础运行都卡,这时候强行加一个4G的SWAP,等于给本来就窄的路又加了一辆三轮车,所以在使用这一段路径时,可以参考这个顺序:

  • 先看磁盘读写性能,用dd命令测一下缓冲写入速度,连50MB/s都不到就别折腾SWAP了。
  • 优先保证swapfile所在分区剩余空间充足,根目录快满了硬挤SWAP,等于给磁盘埋雷。
  • 用iostat或atop观察IO等待值(iowait),如果长期超过10%,说明IO已经告急,这时候买内存才是正路。

关于VPS增加SWAP的常见问题与解答

问:SWAP文件和SWAP分区有什么区别?

SWAP分区是磁盘上专门划出的一块独立区域,从系统安装时就固定好了,想调整大小就得折腾分区工具,SWAP文件则只是根目录下一个普通文件,通过内核挂载模拟成内存区域,想改大小删掉重新生成就行,新一代Linux系统基本都推荐用SWAP文件,原因就是省事、不干扰原有分区布局。

问:增加SWAP之后我的VPS会变快吗?

不会,SWAP解决的是“进程不被杀掉”的问题,不是“让计算更快”的问题,如果原来的内存勉强够用,加上SWAP之后你大概率感知不到速度变化;如果原来频繁触发OOM导致进程崩溃重启,你会发现网站稳定了不少,但这是“不崩溃”带来的体验提升,不是速度提升,真实场景是,遇到内存不足时,系统把不常用的内存页挪到SWAP,后续需要时再换回来,这中间会有微小延迟,但远比进程直接被干掉要好得多。

问:我用的宝塔面板,在里面的SWAP设置里填数字就能创建吗?

能,但有几个限制,宝塔面板的SWAP功能默认写死在根目录下,如果你的根分区空间所剩不多,面板不会主动提醒你,另外面板创建SWAP时也可以设置swappiness数值,但部分老版本没有这个选项,需要自己到/etc/sysctl.conf里手动调整,从实际使用角度看,宝塔面板的SWAP设置适合赶时间的时候用,手动SSH操作则适合需要精确控制swap大小和换页策略的场景,两种方式创建出来的swap文件效果没有实质差异。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/%e5%a6%82%e4%bd%95%e7%ae%80%e5%8d%95%e4%b8%bavps%e5%a2%9e%e5%8a%a0swap%ef%bc%9f%e4%bb%80%e4%b9%88%e6%98%afswap%ef%bc%9f/

赞 (0)
FractionHost$8/512M内存值吗,便宜VPS哪家好
上一篇 2026年9月12日 14:58
$4.99 Xen主机1G内存G口值得买吗,便宜VPS哪家好
下一篇 2026年9月12日 14:59

相关推荐

  • Power BI好用吗?微软BI工具深度测评,数据分析工具选它就对了!

    微软Power BI的商业智能实战表现核心功能深度解析数据处理能力多源数据整合:支持超100种数据源(SQL Server、Excel、Azure云、API等),实时连接企业级数据库,单次处理上限达10GB数据集,DAX引擎性能:在百万行数据测试中,复杂度量计算响应时间<3秒(对比Tableau:5.2秒……

    2026年2月11日
    17730
  • 服务器域密码长短怎么设置才合理,有哪些注意事项

    服务器域密码的长度设置,行业共识是不低于14位,并配合复杂度要求,才能有效抵御当前主流的暴力破解和撞库攻击,很多管理员在配置域策略时,习惯沿用多年前的“8位密码”标准,这个标准在今天看来已经远远不够,GPU算力提升和云计算资源普及,让8位纯数字或纯字母密码在极短时间内就能被暴力破解,下面我们从安全性、可用性和实……

    2026年8月13日
    900
  • 免备案空间怎么选才不踩坑,哪个服务商稳定性最好?

    免备案空间哪家好?先看我的实测结论如果你不想折腾备案流程,免备案空间的核心选择标准就三个:香港节点的网络质量、服务商的售后响应速度、以及价格是否在合理区间,我实际测试了市面上主流的几家服务商,香港免备案空间在速度和性价比上目前表现最均衡,个人博客或中小企业官网按年付费通常控制在几百元区间就够用,为什么需要免备案……

    2026年9月23日
    300
  • 服务器级电脑配置怎么选?,性价比高的配置有哪些?

    服务器级电脑配置的核心在于采用支持ECC内存的工作站主板和至强处理器,而非简单堆砌消费级硬件,它专为长期高负载运行与数据安全设计,与普通游戏PC有本质区别,服务器级电脑配置清单组装一台可靠的服务器级电脑,需要从硬件选型上跳出消费级思路,以下清单基于行业共识,覆盖从入门到进阶的关键组件,CPU:选择Intel X……

    2026年7月26日
    2600
  • Looker值得买吗?Google数据分析工具深度测评与BI工具推荐

    Looker测评:Google BI平台的企业级数据引擎深度解析在数据量激增的今天,传统BI工具如同在高速公路上骑自行车——力不从心,某全球零售巨头部署Looker后,跨渠道销售数据的实时分析响应时间从小时级压缩至秒级,季度决策效率提升40%,核心架构与性能实测Looker服务器集群采用云原生分布式架构,实测表……

    服务器测评 2026年2月11日
    15800
  • crystone域名1美元促销靠谱吗,每人限购几个?

    crystone平台近期推出.com域名1美元促销活动,每人最多可注册10个,这是目前市场上少有的低价入口,性价比极高,值得在活动期内抓紧入手,crystone域名促销活动的真实情况这次crystone的1美元.com域名活动,走的是“走量换口碑”的路线,1美元折合人民币大概7元左右,对比常规注册价(通常在85……

    2026年8月31日
    200
  • Justhost VPS七折优惠是真的吗?香港美国VPS价格及购买攻略

    Justhost作为国际知名的VPS主机商,以其高性价比和灵活的配置方案在用户群体中拥有较高的口碑,本次针对其热门数据中心——香港、新加坡、日本、俄罗斯及美国达拉斯进行深度测评,并结合当前的七折优惠活动进行详细解析,该活动时间持续至2026年,支持支付宝与Paypal付款,对于建站及个人开发者而言是降低服务器成……

    2026年3月8日
    12200
  • 服装网站建设市场分析如何做,有哪些关键步骤?

    服装网站建设市场已进入精细化运营阶段,建站成本、功能定位和行业适配度是决定项目成败的三个核心要素,服装网站建设多少钱?主流报价与成本拆解企业在启动服装网站项目时,最关心的是预算,业内专家指出,建站费用主要取决于功能复杂度、设计要求和开发模式,根据市场公开信息,常见方案的价格差异较大,从几千元到十几万元不等,模板……

    2026年8月14日
    1700
  • 负载均衡做得好的路由器是哪款?推荐高性能企业级路由器

    负载均衡做得好的路由器在构建高可用、高并发的企业级网络架构中,核心路由器的负载均衡能力直接决定了业务系统的稳定性与响应速度,对于需要处理海量并发连接、保障关键业务不中断的场景,普通家用级或入门级设备已无法满足需求,本文将深入剖析几款在负载均衡机制上表现卓越的企业级路由器,结合真实部署场景与性能数据,为您提供权威……

    服务器测评 2026年4月19日
    6100
  • 阿里云CDN值得买吗?实测网站加速效果对比

    阿里云CDN深度测评:专业视角下的加速性能与实战价值在实际部署阿里云CDN服务并进行了为期三周的密集测试后,我们从技术架构、性能表现、安全性及成本效益多维度验证了其作为企业级内容分发网络的核心价值,核心技术架构解析全球节点覆盖: 实测其2800+全球边缘节点,亚洲、北美、欧洲骨干网络延迟均低于30ms,智能调度……

    2026年2月7日
    16700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注