如何在 Ubuntu 22.04 上添加 Swap 内存

简介

在本教程中,我们将学习如何在 Ubuntu 22.04 上添加 Swap 内存。

Swap 内存是存储驱动器上的一个空间,当系统的物理 RAM 完全被使用时,会用到这个空间。它充当一个溢出空间来保存不活动的内存页,允许系统在高内存需求下平稳运行。本教程将指导你如何在 Ubuntu 22.04 服务器上添加交换内存,涵盖基本和高级配置。

本教程的目标是手把手教你如何在 Ubuntu 22.04 服务器上添加 Swap 内存。

准备工作

  • 准备一台云服务器

若尚未拥有服务器,可前往 雨云官网 https://rainyun.ivwv.site 进行注册,新用户有专属优惠。

安装和配置步骤

理解 Swap 内存

Swap 内存可以配置为:

1. Swap 分区: 存储设备上的一个专用分区。

2. Swap 文件: 文件系统上的一个文件,充当交换空间。

在现代系统中,swap 文件更加灵活且易于管理,使其成为首选。本教程侧重于创建和配置 swap 文件。

检查现有的 Swap 空间

在添加 Swap 内存之前,检查你的系统是否已经配置了 Swap:

sudo swapon --sho

如果未显示任何输出,则表示未配置 Swap。你还可以验证系统的总内存和 Swap 使用情况:

free -

第一步:创建 Swap 文件

  1. 确定 Swap 的大小:

根据服务器的工作负载确定 Swap 文件的大小。一个常见的规则是:

  • 对于 RAM 小于 2 GB 的系统,使用与 RAM 大小相等的 Swap 大小。
  • 对于 RAM 为 2-8 GB 的系统,使用 RAM 大小的一半。
  • 对于 RAM 大于 8 GB 的系统,使用 4 GB 或更少。
  1. 创建 Swap 文件:

使用 fallocate 命令创建 Swap 文件。将 2G 替换为你想要的 Swap 大小:

sudo fallocate -l 2G /swapfile

验证文件创建:

ls -lh /swapfile

如果 fallocate 不可用或遇到问题,请使用 dd

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

第二步:保护 Swap 文件

设置正确的权限以防止未经授权的访问:

sudo chmod 600 /swapfile
ls -lh /swapfil

现在,该文件应该只能由 root 用户读取和写入。

第三步:设置 Swap 文件

将文件标记为 Swap:

sudo mkswap /swapfil

你应看到确认 Swap 文件设置的输出。

启用 Swap 文件:

sudo swapon /swapfil

验证 Swap 是否已激活:

sudo swapon --show
free -

第四步:使 Swap 永久生效

为了确保在启动时启用 Swap 文件,请将其添加到 /etc/fstab 文件中:

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

第五步:配置 Swap 设置(可选)

  1. 调整 Swappiness:

swappiness 参数控制内核使用 Swap 的积极程度。值的范围是 0 到 100:

  • 较低的值会减少 Swap 的使用(推荐用于具有足够 RAM 的系统)。
  • 较高的值会增加 Swap 的使用。

检查当前值:

cat /proc/sys/vm/swappiness

临时设置一个新值(例如,10):

sudo sysctl vm.swappiness=10

通过将设置添加到 /etc/sysctl.conf 使其永久生效:

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
  1. 调整缓存压力:

vfs_cache_pressure 参数控制系统如何优先处理 inode/dentry 缓存。较低的值可以提高文件密集型应用程序的性能:

sudo sysctl vm.vfs_cache_pressure=50
echo 'vm.vfs_cache_pressure=50' | sudo tee -a /etc/sysctl.conf

第六步:验证配置

重启服务器以确保 Swap 配置正确并在重启后仍然存在:

sudo reboo

重启后,验证 Swap 状态:

sudo swapon --show
free -

高级注意事项

  1. 监控 Swap 使用情况:

使用 htoptop 实时监控 Swap 使用情况:

sudo apt install htop
htop
  1. Zswap 用于压缩 Swap:

为了获得更好的性能,启用 zswap —— 用于 Swap 页面的压缩缓存:

 sudo vim /etc/default/grub

将以下参数添加到 GRUB_CMDLINE_LINUX

zswap.enabled=1

更新 GRUB:

sudo update-grub
sudo reboot
  1. 删除 Swap 文件:

如果你需要删除 Swap 文件,请首先禁用它:

sudo swapoff /swapfile

/etc/fstab 中删除该条目并删除该文件:

sudo rm /swapfile

结尾

在本教程中,我们学习了如何在 Ubuntu 22.04 上添加 Swap 内存。添加 Swap 内存可以增强系统在繁重工作负载下的稳定性和性能。通过遵循本指南中的步骤,你可以在 Ubuntu 22.04 服务器上有效地配置 Swap,确保最佳的资源管理和对不同工作负载的适应性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vvw&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值