Last active 1746928239

addSwap.sh Raw
1#!/bin/bash
2
3# 检查是否是 root 用户
4if [ "$EUID" -ne 0 ]; then
5 echo "请使用 root 权限运行此脚本"
6 exit 1
7fi
8
9# 设置 swap 大小(单位:G)
10SWAP_SIZE=2
11
12# 创建 swap 文件
13echo "正在创建 ${SWAP_SIZE}G 的 swap 文件..."
14fallocate -l ${SWAP_SIZE}G /swapfile || dd if=/dev/zero of=/swapfile bs=1M count=$((SWAP_SIZE * 1024))
15
16# 设置权限
17chmod 600 /swapfile
18
19# 格式化为 swap
20mkswap /swapfile
21
22# 启用 swap
23swapon /swapfile
24
25# 添加到 /etc/fstab 实现开机自动挂载
26grep -q '^/swapfile' /etc/fstab || echo '/swapfile none swap sw 0 0' >> /etc/fstab
27
28# 优化 swap 策略
29echo 'vm.swappiness=10' >> /etc/sysctl.conf
30sysctl -p
31
32# 显示结果
33echo "Swap 已成功添加。当前 swap 信息如下:"
34swapon --show
35free -h