买不起高配云服务器,低配内存经常吃紧,给它加点临时内存缓解下。

以下是一个给Linux 系统添加临时内存swap分区的脚本:

#!/bin/bash

# 设置要添加的内存大小,单位是 MB
MEM_SIZE=1024

# 检查并删除旧的 swap 分区
if grep -q "swapfile" /etc/fstab; then
  echo "Removing old swap file..."
  sed -i '/swapfile/d' /etc/fstab
  swapoff /swapfile
  rm -f /swapfile
fi

# 创建新的 swap 文件并更正文件权限
echo "Creating new swap file..."
dd if=/dev/zero of=/swapfile bs=1M count=$MEM_SIZE
chmod 600 /swapfile

# 将 swap 文件设置为 swap 分区,并打开 swap 分区
echo "Setting up new swap file..."
mkswap /swapfile
swapon /swapfile

# 添加开机启动项,将 swap 文件挂载为 swap 分区
echo "Adding new swap file to /etc/fstab..."
echo "/swapfile swap swap defaults 0 0" >> /etc/fstab

# 输出成功信息
echo "Added $MEM_SIZE MB swap space."

在添加新的 swap 分区之前,需要查看是否已经存在旧的 swap 分区。如果存在,需要先删除再添加。
在上面的脚本中,它首先检查 /etc/fstab 文件中是否存在旧的 swapfile。如果存在,则删除旧的 swapfile 并禁用旧的 swap 分区,然后创建一个新的 swapfile 并将其设置为 swap 分区。如果旧的 swapfile 不存在,则直接创建一个新的 swapfile。在添加新的 swapfile/etc/fstab 并打印出相关信息后,脚本运行结束。

最后,记得运行

chmod +x add_swap.sh
./add_swap.sh

通常这样添加的,在系统关机后,就没了,重启后,还需要的话,就得再次运行这个脚本,如果想开机就有,则需要将这个脚本添加为开机启动即可:

可以将此脚本添加到 rc.local 文件中,以便在系统启动时自动运行它。rc.local 文件存储在 /etc/rc.d 目录中,可以使用以下命令打开它:

sudo vi /etc/rc.d/rc.local

然后,将以下内容添加到文件末尾(确保在 exit 0 前面添加):

/path/to/your/add_swap.sh

请将 /path/to/your/add_swap.sh 替换为实际的脚本路径。

在添加完脚本路径后,保存并退出 rc.local 文件。然后,确保 rc.local 可执行:

sudo chmod +x /etc/rc.d/rc.local

这将使 rc.local 脚本在系统启动时自动运行,并为您的系统添加临时 swap 分区。