打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

搬瓦工VPS进阶优化:手动添加SWAP交换分区

来自md5.pw
这是此页面的最新修订,它没有已核准修订。

一、 为什么需要设置 SWAP?

许多 BandwagonHost 的高性价比套餐(如 The Plan、Micro 方案)配备的物理内存(RAM)可能在 512MB 到 2GB 之间。当你在 VPS 上运行数据库(MySQL)、Web 面板或 Docker 容器时,一旦物理内存耗尽,Linux 系统机制(OOM Killer)会强制杀掉占用内存最高的进程,导致网站打不开或数据库停止运行。

SWAP(交换分区)可以将硬盘空间模拟为内存使用。虽然速度不如物理内存,但它能为系统提供关键的“缓冲”,有效防止程序因瞬间内存不足而崩溃。

二、 检查当前 SWAP 状态

在 SSH 终端中输入以下命令:

free -h

如果在输出结果中,Swap: 这一行的 total 显示为 0B,说明你的 VPS 尚未配置交换分区,建议按照以下步骤添加。

三、 手动添加 SWAP 步骤 (以添加 1GB 为例)

注:BandwagonHost 的 KVM 架构完全支持手动管理 SWAP。

1. 创建交换文件

使用 fallocate 命令创建一个 1GB 大小的文件(如果需要 2GB,请将 1G 改为 2G):

sudo fallocate -l 1G /swapfile
  • (如果提示 fallocate 未找到,也可以使用:sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576)*

2. 设置权限

为了安全,需要限制该文件的访问权限:

sudo chmod 600 /swapfile

3. 格式化为交换分区

将文件转换为 swap 格式:

sudo mkswap /swapfile

4. 启用 SWAP

激活该交换文件:

sudo swapon /swapfile

再次输入 free -h,你应该能看到 Swap 总量增加了。

四、 设置开机自动挂载

默认情况下,重启 VPS 后上述设置会失效。我们需要修改 /etc/fstab 文件。

1. 使用编辑器打开文件:

sudo nano /etc/fstab

2. 在文件末尾添加以下内容:

/swapfile swap swap defaults 0 0

3. 按 Ctrl + X,输入 Y,然后回车保存退出。

五、 优化 Swappiness 值 (进阶)

swappiness 参数决定了系统使用 Swap 的积极程度(0-100)。搬瓦工 VPS 使用的是高速 SSD,我们可以适当允许系统使用 Swap,但仍应优先使用物理内存。

建议将值设置为 10(表示物理内存剩余 10% 时才开始大量使用 Swap):

  • 临时修改
sudo sysctl vm.swappiness=10
  • 永久生效

编辑配置文件 sudo nano /etc/sysctl.conf,在末尾添加:

vm.swappiness=10

保存后执行 sudo sysctl -p 使配置生效。

六、 总结

通过添加 SWAP,可以显著提升搬瓦工小内存 VPS 的稳定性,特别是对于运行 WordPress、宝塔面板或 Docker 环境的用户,这是除了开启 BBR 之外最推荐的系统优化操作。