Skip to content

Swap

Swap 是磁盘上的交换空间。当物理内存不足时,内核可将暂时不用的内存页移入 Swap,缓解内存压力,但磁盘访问速度远低于内存。

查看 Swap

bash
swapon --show
free -h

swapon --show 没有输出时,表示当前未启用 Swap。

停用 Swap

停用前先确认可用内存足以容纳正在使用的 Swap 数据:

bash
free -h

停用指定的 Swap 文件:

bash
swapoff /swapfile

停用全部 Swap:

bash
swapoff -a

swapoff 只影响当前运行状态。若 /etc/fstab 中仍有对应配置,系统重启后会再次启用。永久停用时,需要在执行 swapoff 后删除 /etc/fstab 中对应的 Swap 配置:

bash
vi /etc/fstab

Cretezy/Swap

Cretezy/Swap 是用于创建 Swap 文件的 Shell 脚本。脚本依次分配文件、设置权限、格式化并启用 Swap,最后将配置追加到 /etc/fstab

下载并检查脚本:

bash
curl -fL https://raw.githubusercontent.com/Cretezy/Swap/master/swap.sh -o /tmp/swap.sh
less /tmp/swap.sh

创建 4 GiB 的 /swapfile

bash
sh /tmp/swap.sh 4G

也可通过第二个参数指定文件路径:

bash
sh /tmp/swap.sh 4G /swap

创建后检查启用状态和持久化配置:

bash
swapon --show
grep -nE '^[^#].*[[:space:]]swap[[:space:]]' /etc/fstab

该脚本需要 root 权限,并会直接修改 /etc/fstab。脚本不会检查已有 Swap 文件或重复的挂载配置,同一路径不要重复执行;使用前还应确认磁盘剩余空间充足。

基于 MIT 许可发布