Linux系统一键添加/删除swap虚拟内存的脚本
下面是一个Shell脚本,它可以让您一键添加或删除Swap虚拟内存,具体取决于您选择的操作。这个脚本将检查当前系统上是否已存在Swap,如果存在,则允许您删除它;如果不存在,则允许您创建并启用Swap。在运行脚本之前,请确保以管理员权限登录到系统。
#!/bin/bash
# 检查是否以root权限运行
if [ "$EUID" -ne 0 ]; then
echo "请以root权限运行此脚本"
exit 1
fi
# 检查系统中是否已存在Swap
if grep -q "swap" /etc/fstab; then
echo "系统中已存在Swap分区。"
echo "1. 删除现有Swap分区"
echo "2. 退出"
read -p "请选择要执行的操作 [1/2]: " choice
case $choice in
1)
# 删除现有Swap
swapoff -a
sed -i '/swap/d' /etc/fstab
echo "现有Swap已删除。"
;;
2)
echo "未进行任何操作。"
;;
*)
echo "无效的选项。"
;;
esac
else
# 提示用户输入要创建的Swap文件大小(以MB为单位)
read -p "请输入要创建的Swap文件大小(以MB为单位): " swap_size
# 创建Swap文件
dd if=/dev/zero of=/swapfile bs=1M count=$swap_size
# 设置文件权限
chmod 600 /swapfile
# 创建Swap文件系统
mkswap /swapfile
# 启用Swap
swapon /swapfile
# 更新/etc/fstab,以确保系统在启动时自动启用Swap
echo "/swapfile none swap sw 0 0" >> /etc/fstab
echo "Swap文件创建成功,大小为 ${swap_size}MB。"
fi
# 显示当前Swap信息
free -h
echo "脚本执行完毕。"
要使用这个脚本,按照以下步骤操作:
- 将上面的代码粘贴到一个新文件中,例如
manage_swap.sh
。 - 使用
chmod +x manage_swap.sh
命令添加执行权限。 - 运行脚本:
./manage_swap.sh
- 如果系统中已存在Swap分区,脚本将允许您选择删除它。
- 如果系统中不存在Swap分区,脚本将提示您输入要创建的Swap文件大小(以MB为单位)。
- 脚本将创建Swap文件、设置文件权限、创建Swap文件系统、启用Swap,并在
/etc/fstab
中添加条目以确保系统在启动时自动启用Swap。
请注意,Swap的大小取决于您的系统性能和需求,不要过度使用Swap,以免影响性能。